| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
o Assert that the page queues lock is held in vm_page_deactivate().
|
| |
|
|
|
|
| |
is set. The full emulation of bio are on its way...
|
|
|
|
|
|
| |
Properly count v_vnodepgsin.
Do not reread page if is already valid.
Properly handle partially filled pages.
|
| |
|
|
|
|
|
| |
PR: kern/27883
MFC after: 1 week
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
locking flags when acquiring a vnode. The immediate purpose is
to allow polling lock requests (LK_NOWAIT) needed by soft updates
to avoid deadlock when enlisting other processes to help with
the background cleanup. For the future it will allow the use of
shared locks for read access to vnodes. This change touches a
lot of files as it affects most filesystems within the system.
It has been well tested on FFS, loopback, and CD-ROM filesystems.
only lightly on the others, so if you find a problem there, please
let me (mckusick@mckusick.com) know.
|
|
|
|
| |
reference.
|
|
|
|
|
|
|
|
| |
against VM_WAIT in the pageout code. Both fixes involve adjusting
the lockmgr's timeout capability so locks obtained with timeouts do not
interfere with locks obtained without a timeout.
Hopefully MFC: before the 4.5 release
|
| |
|
|
|
|
|
|
|
|
| |
unmount time.
Thanks to iedowse for the background information.
Submitted by: bp
|
|
|
|
|
|
| |
With this change, mounting an smb share (using mount_smb, which is not
yet included in the tree) without any of smbfs, libiconv or libmchain
compiled into the kernel or loaded works.
|
|
|
|
| |
also don't use ANSI string concatenation.
|
|
|
|
| |
Submitted by: Max Khon <fjoe@iclub.nsu.ru>
|
|
|
|
|
|
| |
in preparation for an implementation of limiting code for kern.maxvnodes.
MFC after: 3 days
|
|
|
|
| |
minor formatting issues to minimize differences
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
non-cosmetique: add missing break; - original code was broken here
|
|
|
|
| |
Pointed by: bde
|
|
|
|
|
| |
copy EOVERFLOW handling code from main variant
fix type of 'size' arg
|
|
|
|
|
| |
Obtained from: Mac OS X
MFC after: 1 week
|
|
|
|
|
| |
Obtained from: Mac OS X
MFC after: 1 week
|
|
|
|
| |
Noticed by: tanimura
|
|
|
|
|
|
| |
getpages/putpages.
- Use vm_page_undirty() instead of messing with pages' dirty fields
directly.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Replace the a.out emulation of 'struct linker_set' with something
a little more flexible. <sys/linker_set.h> now provides macros for
accessing elements and completely hides the implementation.
The linker_set.h macros have been on the back burner in various
forms since 1998 and has ideas and code from Mike Smith (SET_FOREACH()),
John Polstra (ELF clue) and myself (cleaned up API and the conversion
of the rest of the kernel to use it).
The macros declare a strongly typed set. They return elements with the
type that you declare the set with, rather than a generic void *.
For ELF, we use the magic ld symbols (__start_<setname> and
__stop_<setname>). Thanks to Richard Henderson <rth@redhat.com> for the
trick about how to force ld to provide them for kld's.
For a.out, we use the old linker_set struct.
NOTE: the item lists are no longer null terminated. This is why
the code impact is high in certain areas.
The runtime linker has a new method to find the linker set
boundaries depending on which backend format is in use.
linker sets are still module/kld unfriendly and should never be used
for anything that may be modular one day.
Reviewed by: eivind
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the number of references on the filesystem root vnode to be both
expected and released. Many filesystems hold an extra reference on
the filesystem root vnode, which must be accounted for when
determining if the filesystem is busy and then released if it isn't
busy. The old `skipvp' approach required individual filesystem
xxx_unmount functions to re-implement much of vflush()'s logic to
deal with the root vnode.
All 9 filesystems that hold an extra reference on the root vnode
got the logic wrong in the case of forced unmounts, so `umount -f'
would always fail if there were any extra root vnode references.
Fix this issue centrally in vflush(), now that we can.
This commit also fixes a vnode reference leak in devfs, which could
result in idle devfs filesystems that refuse to unmount.
Reviewed by: phk, bp
|
|
|
|
| |
Forgotten by: alfred
|
|
|
|
|
| |
Un-copy&paste all the VOP_{GET|PUT}PAGES() functions which do nothing but
the default.
|
|
|
|
|
|
|
|
|
|
|
| |
other "system" header files.
Also help the deprecation of lockmgr.h by making it a sub-include of
sys/lock.h and removing sys/lockmgr.h form kernel .c files.
Sort sys/*.h includes where possible in affected files.
OK'ed by: bde (with reservations)
|
|
|
|
|
|
| |
Make 7 filesystems which don't really know about VOP_BMAP rely
on the default vector, rather than more or less complete local
vop_nopbmap() implementations.
|
| |
|
|
Add smbfs(CIFS) filesystem.
Userland part will be in the ports tree for a while.
Obtained from: smbfs-1.3.7-dev package.
|