Revision tags: vendor/NetBSD/libedit/2012-09-25, vendor/bind9/9.6-ESV-R7-P3, vendor/bind9/9.8.3-P3, zfs-0.6.0-rc11, vendor/acpica/20120913, vendor/tzdata/tzdata2012f, vendor/NetBSD/bmake/20120831, vendor/atf/atf-0.16, vendor/openssh/6.1p1, vendor/openssh/6.0p1, vendor/clang/clang-trunk-r162107, vendor/llvm/llvm-trunk-r162107 |
|
#
1ec9beda |
| 17-Aug-2012 |
Mateusz Guzik <mjg@FreeBSD.org> |
Remove unused member of struct indir (in_exists) from UFS and EXT2 code.
Reviewed by: mckusick Approved by: trasz (mentor) MFC after: 1 week
|
Revision tags: vendor/acpica/20120816, vendor/clang/clang-trunk-r161861, vendor/llvm/llvm-trunk-r161861, zfs-0.6.0-rc10, vendor/compiler-rt/compiler-rt-r160957, vendor/libarchive/3.0.4, vendor/bind9/9.6-ESV-R7-P2, vendor/bind9/9.8.3-P2, vendor/dtc/dtc-f807af19, vendor/less/v451, vendor/illumos/20120614, vendor/illumos/20100818, vendor/opensolaris/20100818, vendor/openssl/1.0.1c, vendor/acpica/20120711, vendor/NetBSD/bmake/20120704, vendor/unbound/1.4.17, vendor/ldns/1.6.13, vendor/gcc/4.2.4-20080519-SVN135556-libstdc++, vendor/openssl/0.9.8x, vendor/less/v449, vendor/NetBSD/bmake/20120620, vendor/acpica/20120620, vendor/zlib/1.2.7, zfs-0.6.0-rc9, vendor/NetBSD/bmake/20120606, vendor/bind9/9.6-ESV-R7-P1, vendor/bind9/9.8.3-P1, vendor/byacc/20120526, vendor/bind9/9.6-ESV-R7, vendor/bind9/9.8.3, vendor/openpam/MICRAMPELIS, vendor/clang/clang-release_31-r156863, vendor/llvm/llvm-release_31-r156863, vendor/clang/clang-release_31-r156748, vendor/llvm/llvm-release_31-r156748, vendor/acpica/20120518, vendor/tcpdump/4.2.1, vendor/pciids/pciids-20120507, vendor/dtracetoolkit/dtracetoolkit-20120512, vendor/netcat/5.1, vendor/clang/clang-release_31-r155985, vendor/llvm/llvm-release_31-r155985, vendor/libc++/r156067, vendor/byacc/20120115, vendor/acpica/20120420, vendor/clang/clang-trunk-r154661, vendor/llvm/llvm-trunk-r154661, vendor/file/5.11, release/8.3.0_cvs, release/8.3.0, vendor/heimdal/1.5.2, vendor/bind9/9.6-ESV-R6, vendor/bind9/9.8.2, zfs-0.6.0-rc8, vendor/tzdata/tzdata2012a, vendor/acpica/20120320, vendor/libcxxrt/2012-03-20-cddcf8734ed06ada9384a461bc21d58b44f6eba1, zfs-0.6.0-rc7, vendor/libc++/r152718, vendor/libc++/r152501, vendor/libcxxrt/2011-11-22-a35d8de85ffd4df32e2dc47fa539d61fd3024a54, vendor/octeon-sdk/2.3.0 |
|
#
35338e60 |
| 01-Mar-2012 |
Kirk McKusick <mckusick@FreeBSD.org> |
This change avoids a kernel deadlock on "snaplk" when using snapshots on UFS filesystems running with journaled soft updates. This is the first of several bugs that need to be fixed before removing t
This change avoids a kernel deadlock on "snaplk" when using snapshots on UFS filesystems running with journaled soft updates. This is the first of several bugs that need to be fixed before removing the restriction added in -r230250 to prevent the use of snapshots on filesystems running with journaled soft updates.
The deadlock occurs when holding the snapshot lock (snaplk) and then trying to flush an inode via ffs_update(). We become blocked by another process trying to flush a different inode contained in the same inode block that we need. It holds the inode block for which we are waiting locked. When it tries to write the inode block, it gets blocked waiting for the our snaplk when it calls ffs_copyonwrite() to see if the inode block needs to be copied in our snapshot.
The most obvious place that this deadlock arises is in the ffs_copyonwrite() routine when it updates critical metadata in a snapshot and tries to write it out before proceeding. The fix here is to write the data and indirect block pointer for the snapshot, but to skip the call to ffs_update() to write the snapshot inode. To ensure that we will never have to update a pointer in the inode itself, the ffs_snapshot() routine that creates the snapshot has to ensure that all the direct blocks are allocated as part of the creation of the snapshot.
A less obvious place that this deadlock occurs is when we hold the snaplk because we are deleting a snapshot. In the course of doing the deletion, we need to allocate various soft update dependency structures and allocate some journal space. If we hit a resource limit while doing this we decrease the resources in use by flushing out an existing dirty file to get it to give up the soft dependency resources that it holds. The flush can cause an ffs_update() to be done on the inode for the file that we have selected to flush resulting in the same deadlock as described above when the inode that we have chosen to flush resides in the same inode block as the snapshot inode that we hold. The fix is to defer cleaning up any time that the inode on which we are operating is a snapshot.
Help and review by: Jeff Roberson Tested by: Peter Holm MFC (to 9 only) after: 2 weeks
show more ...
|
Revision tags: vendor/tcsh/6.18.01, vendor/acpica/20120215 |
|
#
c480f781 |
| 06-Feb-2012 |
Konstantin Belousov <kib@FreeBSD.org> |
Current implementations of sync(2) and syncer vnode fsync() VOP uses mnt_noasync counter to temporary remove MNTK_ASYNC mount option, which is needed to guarantee a synchronous completion of the init
Current implementations of sync(2) and syncer vnode fsync() VOP uses mnt_noasync counter to temporary remove MNTK_ASYNC mount option, which is needed to guarantee a synchronous completion of the initiated i/o before syscall or VOP return. Global removal of MNTK_ASYNC option is harmful because not only i/o started from corresponding thread becomes synchronous, but all i/o is synchronous on the filesystem which is initiated during sync(2) or syncer activity.
Instead of removing MNTK_ASYNC from mnt_kern_flag, provide a local thread flag to disable async i/o for current thread only. Use the opportunity to move DOINGASYNC() macro into sys/vnode.h and consistently use it through places which tested for MNTK_ASYNC.
Some testing demonstrated 60-70% improvements in run time for the metadata-intensive operations on async-mounted UFS volumes, but still with great deviation due to other reasons.
Reviewed by: mckusick Tested by: scottl MFC after: 2 weeks
show more ...
|
Revision tags: vendor/zlib/1.2.6, vendor/libpcap/1.2.1, vendor/libarchive/2.8, vendor/NetBSD/softfloat/20120117, vendor/acpica/20120111, vendor/compiler-rt/compiler-rt-r147467, release/9.0.0, vendor/xz-embedded/48f4588342f4a4e0182a6740e25675fd8e6c6295, vendor/compiler-rt/compiler-rt-r147390, vendor/netcat/5.0, vendor/openpam/LYCOPSIDA, vendor/clang/clang-r145349, vendor/llvm/llvm-r145349, vendor/gperf/3.0.3, vendor/flex/2.5.35, vendor/libcxxrt/8931d9e5180830a5433d16ae6b3ad8dd9e629512, vendor/libcxxrt/1be67aa8295314fb794c4e933d9bb7c7c33e0ca4, vendor/acpica/20111123, vendor/libcxxrt/9802a7e430e08b90bf0e92d24abff095fa72ec21, vendor/bind9/9.4-ESV-R5-P1, vendor/bind9/9.6-ESV-R5-P1, vendor/bind9/9.8.1-P1, vendor/tzdata/tzdata2011n, vendor/tzdata/tzdata2011m, vendor/clang/clang-r142614, vendor/llvm/llvm-r142614, vendor/tzdata/tzdata2011l, zfs-0.6.0-rc6, vendor/heimdal/1.5.1, vendor/com_err/1.5.1, vendor/file/5.09, vendor/heimdal/1.5, vendor/openssh/5.9p1, vendor/acpica/20110922, vendor/openresolv/3.4.4, vendor/bind9/9.8.1, vendor/one-true-awk/20110810, vendor/one-true-awk/20110807, vendor/bind9/9.4-ESV-R5, vendor/bind9/9.6-ESV-R5 |
|
#
fddf7bae |
| 30-Jul-2011 |
Kirk McKusick <mckusick@FreeBSD.org> |
Update to -r224294 to ensure that only one of MNT_SUJ or MNT_SOFTDEP is set so that mount can revert back to using MNT_NOWAIT when doing getmntinfo.
Approved by: re (kib)
|
#
d716efa9 |
| 24-Jul-2011 |
Kirk McKusick <mckusick@FreeBSD.org> |
Move the MNTK_SUJ flag in mnt_kern_flag to MNT_SUJ in mnt_flag so that it is visible to userland programs. This change enables the `mount' command with no arguments to be able to show if a filesystem
Move the MNTK_SUJ flag in mnt_kern_flag to MNT_SUJ in mnt_flag so that it is visible to userland programs. This change enables the `mount' command with no arguments to be able to show if a filesystem is mounted using journaled soft updates as opposed to just normal soft updates.
Approved by: re (bz)
show more ...
|
Revision tags: vendor/clang/clang-r135360, vendor/llvm/llvm-r135360, vendor/pciids/pciids-20110716, vendor/bind9/9.8.0-P4, vendor/dialog/1.1-20110707, zfs-0.6.0-rc5, vendor/bind9/9.6-ESV-R4-P3, vendor/tzdata/tzdata2011h, vendor/acpica/20110623, vendor/tnftp/20100108, vendor/sendmail/8.14.5, vendor/clang/clang-r132879, vendor/llvm/llvm-r132879 |
|
#
280e091a |
| 10-Jun-2011 |
Jeff Roberson <jeff@FreeBSD.org> |
Implement fully asynchronous partial truncation with softupdates journaling to resolve errors which can cause corruption on recovery with the old synchronous mechanism.
- Append partial truncation
Implement fully asynchronous partial truncation with softupdates journaling to resolve errors which can cause corruption on recovery with the old synchronous mechanism.
- Append partial truncation freework structures to indirdeps while truncation is proceeding. These prevent new block pointers from becoming valid until truncation completes and serialize truncations. - On completion of a partial truncate journal work waits for zeroed pointers to hit indirects. - softdep_journal_freeblocks() handles last frag allocation and last block zeroing. - vtruncbuf/ffs_page_remove moved into softdep_*_freeblocks() so it is only implemented in one place. - Block allocation failure handling moved up one level so it does not proceed with buf locks held. This permits us to do more extensive reclaims when filesystem space is exhausted. - softdep_sync_metadata() is broken into two parts, the first executes once at the start of ffs_syncvnode() and flushes truncations and inode dependencies. The second is called on each locked buf. This eliminates excessive looping and rollbacks. - Improve the mechanism in process_worklist_item() that handles acquiring vnode locks for handle_workitem_remove() so that it works more generally and does not loop excessively over the same worklist items on each call. - Don't corrupt directories by zeroing the tail in fsck. This is only done for regular files. - Push a fsync complete record for files that need it so the checker knows a truncation in the journal is no longer valid.
Discussed with: mckusick, kib (ffs_pages_remove and ffs_truncate parts) Tested by: pho
show more ...
|
Revision tags: vendor/less/v444, vendor/compiler-rt/compiler-rt-r132478, vendor/acpica/20110527, vendor/bind9/9.4-ESV-R4-P1, vendor/bind9/9.6-ESV-R4-P1, vendor/netcat/4.9, vendor/less/v443, vendor/one-true-awk/20110506, zfs-0.6.0-rc4, vendor/openssh/5.8p2, vendor/v4l/2.6.17, vendor/tre/0.8.0, vendor/one-true-awk/20110501, vendor/clang/clang-r130700, vendor/llvm/llvm-r130700, vendor/ncurses/5.9-20110405, vendor/ncurses/5.8-20110226, vendor/tzdata/tzdata2011g, vendor/dialog/1.1-20110302, vendor/acpica/20110413, vendor/tzdata/tzdata2011f, zfs-0.6.0-rc3, vendor/pciids/pciids-20110407, vendor/NetBSD/libedit/2010-08-04, vendor/tzdata/tzdata2011e, vendor/NetBSD/libedit/2010-06-01, vendor/NetBSD/libedit/2007-01-12, vendor/NetBSD/libedit/2006-03-23, vendor/NetBSD/libedit/2005-11-09, vendor/NetBSD/libedit/2005-08-02, vendor/NetBSD/libedit/2001-09-29, vendor/NetBSD/libedit/1997-06-25, vendor/openresolv/3.4.1, vendor/compiler-rt/compiler-rt-r127823, vendor/acpica/20110316, vendor/tzdata/tzdata2011d, zfs-0.6.0-rc2, vendor/gdtoa/20110304, vendor/tzdata/tzdata2011c, vendor/tzdata/tzdata2011b, vendor/clang/clang-r126547, vendor/llvm/llvm-r126547, vendor/xz/5.0.1, vendor/clang/clang-r126079, vendor/llvm/llvm-r126079, zfs-0.6.0-rc1, vendor/openssh/5.8p1, vendor/openssh/5.7p1, release/7.4.0_cvs, release/8.2.0_cvs, release/7.4.0, release/8.2.0, vendor/acpica/20110211, vendor/bind9/9.6.3, vendor/tzdata/tzdata2011a, vendor/acpica/20110112, vendor/dialog/1.1-20100428, vendor/acpica/20101209, vendor/bind9/9.4-ESV-R4, vendor/bind9/9.6-ESV-R3, vendor/openssl/0.9.8q, vendor/octeon-sdk/2.0.0, vendor/openssl/0.9.8p, zfs-0.5.2, vendor/xz/5.0.0, vendor/openssh/5.6p1, vendor/bind9/9.4-ESV-R3, vendor/tzdata/tzdata2010o, vendor/binutils/binutils-master-20070703-075419, vendor/bind9/9.6-ESV-R2, vendor/wpa/0.7.3, vendor/tcpdump/4.1.1, vendor/libpcap/1.1.1, vendor/tzcode/tzcode2010n, vendor/compiler-rt/compiler-rt-r117047, vendor/binutils/binutils-2_17-branch-20070807-000013, vendor/binutils/binutils-2_15-branch-20050608-153448, vendor/netcat/4.8, vendor/binutils/binutils-2_15-branch-20040523-044032, vendor/acpica/20101013, vendor/xz/20101010, vendor/ee/1.5.2, vendor/ee/1.5.1, vendor/clang/clang-2.8, vendor/llvm/llvm-2.8, vendor/bzip2/1.0.6, vendor/tzcode/tzcode2010m, vendor/tzdata/tzdata2010m, vendor/clang/clang-r114020, vendor/llvm/llvm-r114020, vendor/clang/clang-r108428, vendor/llvm/llvm-r108428, vendor/acpica/20100915, zfs-0.5.1, vendor/tzcode/tzcode2010l, vendor/tzdata/tzdata2010l, vendor/acpica/20100806, vendor/opensolaris/20100802, vendor/tzdata/tzdata2010k, vendor/octeon-sdk/1.9.0, release/8.1.0_cvs, release/8.1.0, vendor/clang/clang-r108243, vendor/llvm/llvm-r108243, vendor/acpica/20100702 |
|
#
9f9c8c59 |
| 06-Jul-2010 |
Jeff Roberson <jeff@FreeBSD.org> |
- Handle the truncation of an inode with an effective link count of 0 in the context of the process that reduced the effective count. Previously all truncation as a result of unlink happened i
- Handle the truncation of an inode with an effective link count of 0 in the context of the process that reduced the effective count. Previously all truncation as a result of unlink happened in the softdep flush thread. This had the effect of being impossible to rate limit properly with the journal code. Now the process issuing unlinks is suspended when the journal files. This has a side-effect of improving rm performance by allowing more concurrent work. - Handle two cases in inactive, one for effnlink == 0 and another when nlink finally reaches 0. - Eliminate the SPACECOUNTED related code since the truncation is no longer delayed.
Discussed with: mckusick
show more ...
|
Revision tags: vendor/wpa/0.6.10, vendor/acpica/20100528, vendor/clang/clang-r104832, vendor/llvm/llvm-r104832, vendor/bind9/9.4-ESV-R2, vendor/bind9/9.6.2-P2, vendor/tzdata/tzdata2010j, vendor/xz/20100412, vendor/acpica/20100428, vendor/openssh/5.5p1 |
|
#
113db2dd |
| 24-Apr-2010 |
Jeff Roberson <jeff@FreeBSD.org> |
- Merge soft-updates journaling from projects/suj/head into head. This brings in support for an optional intent log which eliminates the need for background fsck on unclean shutdown.
Sponsore
- Merge soft-updates journaling from projects/suj/head into head. This brings in support for an optional intent log which eliminates the need for background fsck on unclean shutdown.
Sponsored by: iXsystems, Yahoo!, and Juniper. With help from: McKusick and Peter Holm
show more ...
|
Revision tags: vendor/testfloat/2a, vendor/zlib/1.2.5, vendor/tzdata/tzdata2010i, vendor/zlib/1.2.4.3, vendor/tzdata/tzdata2010h, vendor/acpica/20100331, vendor/openssl/0.9.8n, vendor/zlib/1.2.4.1, vendor/bind9/9.4-ESV-R1, vendor/netcat/4.7, vendor/tzcode/tzcode2010f, vendor/tzdata/tzdata2010f, release/7.3.0_cvs, release/7.3.0, vendor/bind9/9.6.2-P1, vendor/zlib/1.2.4, vendor/tzdata/tzdata2010e, vendor/openssh/5.4p1, vendor/acpica/20100304, vendor/bind9/9.6.2, vendor/tzcode/tzcode2010c, vendor/tzdata/tzdata2010c, vendor/openssl/0.9.8m, vendor/dtc/dtc-d75b33af, vendor/dtc/1.2.0, vendor/tzcode/tzcode2010a, vendor/bind9/9.4-ESV, vendor/tzdata/tzdata2010b, vendor/sendmail/8.14.4, vendor/bind9/9.6.1-P3, vendor/acpica/20100121, vendor/netcat/4.6, vendor/tzdata/tzdata2010a, vendor/one-true-awk/20091126, vendor/tzdata/tzdata2009u, vendor/tzdata/tzdata2009t, vendor/tzcode/tzcode2009t, vendor/acpica/20091214, vendor/ntp/4.2.4p8, vendor/bind9/9.4.3-P4, vendor/bind9/9.6.1-P2, release/8.0.0_cvs, release/8.0.0, vendor/tzdata/tzdata2009s, vendor/acpica/20091112, vendor/tzcode/tzcode2009r, vendor/tzdata/tzdata2009r, vendor/clang/clang-r86025, vendor/llvm/llvm-r86025, vendor/tzcode/tzcode2009q, vendor/tzdata/tzdata2009q, vendor/tzdata/tzdata2009p, vendor/clang/clang-r84949, vendor/llvm/llvm-r84949, vendor/tzdata/tzdata2009o, vendor/llvm/llvm-r84176, vendor/clang/clang-r84175, vendor/clang/clang-r84119, vendor/llvm/llvm-r84119, vendor/acpica/20091013, vendor/openssh/5.3p1, vendor/tzdata/tzdata2009n, vendor/x86emu/4.6, vendor/tzdata/tzdata2009m, vendor/acpica/20090903, vendor/openssl/0.9.8k-dtls-fixes, vendor/pf-sys/4.5.002, vendor/pf/4.5, vendor/tzdata/tzdata2009l, vendor/openbsm/1.1-P-2, vendor/acpica/20090730, vendor/bind9/9.4.3-P3, vendor/bind9/9.6.1-P1, vendor/less/v436, vendor/tzcode/tzcode2009k, vendor/tzdata/tzdata2009k, vendor/openbsm/1.1-P-1, vendor/tcsh/6.17.00, vendor/clang/clang-r74788, vendor/llvm/llvm-r74788, vendor/clang/clang-r74383, vendor/llvm/llvm-r74383, vendor/acpica/20090625, vendor/bind9/9.6.1, vendor/clang/clang-r73984, vendor/llvm/llvm-r73984, vendor/clang/clang-r73954, vendor/llvm/llvm-r73954, vendor/clang/clang-r73879, vendor/llvm/llvm-r73879, vendor/tzdata/tzdata2009j, vendor/opensolaris/20080410b, vendor/clang/clang-r73340, vendor/llvm/llvm-r73340, vendor/tzcode/tzcode2009i, vendor/tzdata/tzdata2009i, vendor/clang/clang-r73070, vendor/llvm/llvm-r73070, vendor/openssl/0.9.8k, vendor/clang/clang-r73021, vendor/llvm/llvm-r73021, vendor/clang/clang-r72995, vendor/llvm/llvm-r72995, vendor/clang/clang-r72805, vendor/llvm/llvm-r72805, vendor/clang/clang-r72770, vendor/llvm/llvm-r72770, vendor/clang/clang-r72732, vendor/llvm/llvm-r72732, vendor/acpica/20090521, vendor/acpica/20070320resync, vendor/bind9/9.6.1rc1, vendor/netcat/4.5, vendor/tzcode/tzcode2009h, vendor/tzdata/tzdata2009h, vendor/ee/1.5.0, vendor/ee/1.4.7, vendor/ee/1.4.6, vendor/ee/1.4.5a, vendor/ee/1.4.4, vendor/ee/1.4.3, vendor/ee/1.4.2, vendor/top/3.8b1, vendor/tzcode/tzcode2009e, vendor/file/5.03, vendor/less/v429, vendor/binutils/2.15-r191844-obrien, vendor/file/5.00, release/7.2.0_cvs, release/7.2.0, vendor/tzdata/tzdata2009g |
|
#
933a30b6 |
| 27-Apr-2009 |
Rick Macklem <rmacklem@FreeBSD.org> |
Change the semantics of i_modrev/va_filerev to what is required for the nfsv4 Change attribute. There are 2 changes: 1 - The value now changes on metadata changes as well as data modificati
Change the semantics of i_modrev/va_filerev to what is required for the nfsv4 Change attribute. There are 2 changes: 1 - The value now changes on metadata changes as well as data modifications (incremented for IN_CHANGE instead of IN_UPDATE). 2 - It is now saved in spare space in the on-disk i-node so that it survives a crash. Since va_filerev is not passed out into user space, the only current use of va_filerev is in the nfs server, which uses it as the directory cookie verifier. Since this verifier is only passed back to the server by a client verbatim and then the server doesn't check it, changing the semantics should not break anything currently in FreeBSD.
Reviewed by: bde Approved by: kib (mentor)
show more ...
|
Revision tags: vendor/openbsm/1.1, vendor/tzdata/tzdata2009f, vendor/tzdata/tzdata2009e, vendor/tzdata/tzdata2009d, vendor/bind9/9.4.3-P2, vendor/libpcap/1.0.0, vendor/tcpdump/4.0.0, vendor/tzdata/tzdata2009c |
|
#
e65f5a4e |
| 12-Mar-2009 |
Konstantin Belousov <kib@FreeBSD.org> |
The non-modifying EA VOPs are executed with only shared vnode lock taken. Provide a custom lock around initializing and tearing down EA area, to prevent both memory leaks and double-free of it. Count
The non-modifying EA VOPs are executed with only shared vnode lock taken. Provide a custom lock around initializing and tearing down EA area, to prevent both memory leaks and double-free of it. Count the number of EA area accessors.
Lock protocol requires either holding exclusive vnode lock to modify i_ea_area, or shared vnode lock and owning IN_EA_LOCKED flag in i_flag.
Noted by: YAMAMOTO, Taku <taku tackymt homeip net> Tested by: pho (previous version) MFC after: 2 weeks
show more ...
|
Revision tags: vendor/openbsm/1.1-BETA-1, vendor/wpa/0.6.8, vendor/openssh/5.2p1, vendor/tzdata/tzdata2009b, vendor/gdtoa/20081205, vendor/tzdata/tzdata2009a, vendor/wpa_supplicant/0.5.11, vendor/wpa_supplicant/0.5.10, vendor/openbsm/1.1-ALPHA-5, vendor/bind9/9.3.6-P1, vendor/bind9/9.4.3-P1, vendor/file/4.26, release/7.1.0_cvs, release/7.1.0, vendor/openbsm/1.1-ALPHA-4, vendor/bind9/9.4.3, vendor/resolver/9.4.3, vendor/pf-sys/4.4, vendor/pf-sys/4.3, vendor/pf-sys/4.2, vendor/pf/4.4, vendor/pf/4.3, vendor/pf/4.2, release/6.4.0_cvs, release/6.4.0, vendor/openbsm/1.1-ALPHA-2, vendor/ncurses/5.7-20081102, vendor/tzdata/tzdata2008i, vendor/tzdata/tzdata2008h, vendor/tzdata/tzdata2008g, vendor/netcat/4.4, vendor/openssl/0.9.8i |
|
#
c4815510 |
| 16-Sep-2008 |
John Baldwin <jhb@FreeBSD.org> |
Retire the 'i_reclen' field from the in-memory i-node. Previously, during a DELETE lookup operation, lookup would cache the length of the directory entry to be deleted in 'i_reclen'. Later, the act
Retire the 'i_reclen' field from the in-memory i-node. Previously, during a DELETE lookup operation, lookup would cache the length of the directory entry to be deleted in 'i_reclen'. Later, the actual VOP to remove the directory entry (ufs_remove, ufs_rename, etc.) would call ufs_dirremove() which extended the length of the previous directory entry to "remove" the deleted entry.
However, we always read the entire block containing the directory entry when doing the removal, so we always have the directory entry to be deleted in-memory when doing the update to the directory block. Also, we already have to figure out where the directory entry that is being removed is in the block so that we can pass the component name to the dirhash code to update the dirhash. So, instead of passing 'i_reclen' from ufs_lookup() to the ufs_dirremove() routine, just read the 'd_reclen' field directly out of the entry being removed when updating the length of the previous entry in the block.
This avoids a cosmetic issue of writing to 'i_reclen' while holding a shared vnode lock. It also slightly reduces the amount of side-band data passed from ufs_lookup() to operations updating a directory via the directory's i-node.
Reviewed by: jeff
show more ...
|
Revision tags: vendor/tzdata/tzdata2008f, vendor/gdtoa/20080831, vendor/bind9/9.3.5-P2, vendor/bind9/9.4.2-P2, vendor/sendmail/8.14.3, vendor/ath/0.10.5.10, vendor/ntp/4.2.4p5, vendor/tzdata/tzdata2008e, vendor/tzdata/tzdata2008d, vendor/tzdata/tzdata2008c, vendor/pf-sys/4.1.001, vendor/openssh/5.1p1, vendor/openssh/5.0p1, vendor/openssh/4.9p1, vendor/openssh/4.7p1, vendor/openssh/4.6p1, vendor/bind9/9.3.5-P1, vendor/bind9/9.3.5, vendor/bind9/9.4.2-P1, vendor/misc-GNU/cpio/2.8, vendor/binutils/2.15.20040523, vendor/opensolaris/20080410, vendor/ncurses/5.6-20080503, vendor/expat/2.0.1, vendor/com_err/1.1.0, vendor/heimdal/1.1.0, vendor/opensolaris/20080410a |
|
#
721cc566 |
| 22-Apr-2008 |
Jeff Roberson <jeff@FreeBSD.org> |
- Use a local variable for i_ino in ufs_lookup. It is only used to communicate between two parts of this one function. This was causing problems with shared lookups as each would trash the in
- Use a local variable for i_ino in ufs_lookup. It is only used to communicate between two parts of this one function. This was causing problems with shared lookups as each would trash the ino value in the inode. - Remove the unused i_ino field from the inode structure.
show more ...
|
Revision tags: vendor/gcc/trunk_20080418-SVN134423, vendor/netcat/4.3 |
|
#
eab626f1 |
| 16-Apr-2008 |
Konstantin Belousov <kib@FreeBSD.org> |
Move the head of byte-level advisory lock list from the filesystem-specific vnode data to the struct vnode. Provide the default implementation for the vop_advlock and vop_advlockasync. Purge the lock
Move the head of byte-level advisory lock list from the filesystem-specific vnode data to the struct vnode. Provide the default implementation for the vop_advlock and vop_advlockasync. Purge the locks on the vnode reclaim by using the lf_purgelocks(). The default implementation is augmented for the nfs and smbfs. In the nfs_advlock, push the Giant inside the nfs_dolock.
Before the change, the vop_advlock and vop_advlockasync have taken the unlocked vnode and dereferenced the fs-private inode data, racing with with the vnode reclamation due to forced unmount. Now, the vop_getattr under the shared vnode lock is used to obtain the inode size, and later, in the lf_advlockasync, after locking the vnode interlock, the VI_DOOMED flag is checked to prevent an operation on the doomed vnode.
The implementation of the lf_purgelocks() is submitted by dfr.
Reported by: kris Tested by: kris, pho Discussed with: jeff, dfr MFC after: 2 weeks
show more ...
|
Revision tags: vendor/tzdata/tzdata2008b, vendor/bzip2/1.0.5, vendor/misc-GNU/cvs/1.11-20080310, vendor/tcsh/6.15b, vendor/tzdata/tzdata2008a, vendor/bsnmp/syrinx_20080307_bugfix, release/7.0.0_cvs, release/7.0.0, vendor/ncurses/5.6-20080209, vendor/file/4.23-r1.46, vendor/binutils/2.15.cvsrev_1_51, release/6.3.0_cvs, release/6.3.0, vendor/file/4.23, vendor/misc-GNU/cvs/1.11.22, vendor/tzdata/tzdata2007k, vendor/ncurses/5.6-20071222, vendor/openpam/HYDRANGEA, vendor/amd/6.1.5, vendor/tzdata/tzdata2007j, vendor/resolver/9.4.2, vendor/bind9/9.4.2, vendor/less/v416, vendor/less/v415, vendor/libreadline/5.2p3_p7, vendor/sendmail/8.14.2, vendor/tzdata/tzdata2007i, vendor/openbsm/1.0, vendor/one-true-awk/20071023, vendor/ipfilter/4.1.28, vendor/ipfilter-sys/4-1-28, vendor/openssl/0.9.8-20071018, vendor/tcpdump/3.9.8, vendor/libpcap/0.9.8, vendor/tcsh/6.15a, vendor/less/v409, vendor/tzdata/tzdata2007h, vendor/less/v408, vendor/tzdata/tzdata2007g, vendor/gcc/4.2.1-20070718-SVN126787, vendor/bind9/9.4.1p1, vendor/openbsm/1.0-ALPHA-15, vendor/wpa_supplicant/0.5.8, vendor/hostapd/0.5.8, vendor/pf/4.1, vendor/pf-sys/4.1, vendor/less/v406, vendor/misc-GNU/diff/2.8.7, vendor/bind9/9.4.1, vendor/one-true-awk/20070501, vendor/ipfilter/4.1.23, vendor/ipfilter-sys/4-1-23, vendor/less/v403, vendor/resolver/9.4.1, vendor/file/4.21, vendor/file/4.19, vendor/tzdata/tzdata2007f, vendor/gcc/4.2.0-20070514-SVN124707, vendor/openbsm/1.0-ALPHA-14, vendor/libreadline/5.2p2, vendor/sendmail/8.14.1, vendor/binutils/2.15.20050217, vendor/tcpdump/3.9.1a, vendor/tcsh/6.15p1, vendor/bzip2/1.0.4, vendor/netcat/4.1, vendor/acpica/20070320, vendor/openssl/0.9.8-20070315, vendor/openssl/0.9.8e, vendor/tcsh/6.15, vendor/bind9/9.3.4, vendor/ncurses/5.6-20061217, release/6.2.0_cvs, release/6.2.0, vendor/gdtoa/20050923, vendor/libreadline/5.2p1, vendor/libreadline/5.2, vendor/resolver/9.3.4, vendor/resolver/9.3.3, vendor/ath/0.9.20.3, vendor/bind9/9.3.3, vendor/pppd/2.3.11, vendor/openssh/4.5p1, vendor/bind9/9.3.2p2, vendor/resolver/9.3.3RC2, vendor/tzdata/tzdata2006n |
|
#
ec7a247a |
| 10-Oct-2006 |
Konstantin Belousov <kib@FreeBSD.org> |
Do not translate the IN_ACCESS inode flag into the IN_MODIFIED while filesystem is suspending/suspended. Doing so may result in deadlock. Instead, set the (new) IN_LAZYACCESS flag, that becomes IN_MO
Do not translate the IN_ACCESS inode flag into the IN_MODIFIED while filesystem is suspending/suspended. Doing so may result in deadlock. Instead, set the (new) IN_LAZYACCESS flag, that becomes IN_MODIFIED when suspend is lifted.
Change the locking protocol in order to set the IN_ACCESS and timestamps without upgrading shared vnode lock to exclusive (see comments in the inode.h). Before that, inode was modified while holding only shared lock.
Tested by: Peter Holm Reviewed by: tegge, bde Approved by: pjd (mentor) MFC after: 3 weeks
show more ...
|
Revision tags: vendor/openssl/0.9.8-20060929, vendor/openssl/0.9.8d, vendor/openssh/4.4p1 |
|
#
a1e363f2 |
| 26-Sep-2006 |
Tor Egge <tegge@FreeBSD.org> |
Add mnt_noasync counter to better handle interleaved calls to nmount(), sync() and sync_fsync() without losing MNT_ASYNC. Add MNTK_ASYNC flag which is set only when MNT_ASYNC is set and mnt_noasync
Add mnt_noasync counter to better handle interleaved calls to nmount(), sync() and sync_fsync() without losing MNT_ASYNC. Add MNTK_ASYNC flag which is set only when MNT_ASYNC is set and mnt_noasync is zero, and check that flag instead of MNT_ASYNC before initiating async io.
show more ...
|
Revision tags: vendor/openbsm/1.0-ALPHA-12, vendor/openbsm/1.0-ALPHA-11, vendor/bind9/9.3.2p1, vendor/tcpdump/3.9.4, vendor/libpcap/0.9.4, vendor/openbsm/1.0-ALPHA-10, vendor/openbsm/1.0-ALPHA9-kwikfix_backout, vendor/NetBSD/lukemftpd/20060831, vendor/openbsm/1.0-ALPHA9-kwikfix, vendor/gcc/3.4.6-20060825-SVN116475, vendor/openbsm/1.0-ALPHA-9, vendor/gdb/6.1.1, vendor/less/v394, vendor/sendmail/8.13.8, vendor/ipfilter/4.1.13, vendor/ipfilter-sys/4-1-13, vendor/openssl/0.9.8b, vendor/libuwx/BETA10, vendor/openbsm/1.0-ALPHA-7, vendor/OpenBSD/cvs_20060501, vendor/file/4.17a, vendor/file/4.17, vendor/sendmail/8.13.7, vendor/binutils/2.15.NOTHING, vendor/ath/0.9.17.2, vendor/openbsm/1.0-ALPHA-6, release/5.5.0_cvs, release/5.5.0, vendor/netcat/3.9, vendor/resolver/9.3.2, vendor/tzdata/tzdata2006g, release/6.1.0_cvs, release/6.1.0, vendor/libreadline/5.1p1-p4, vendor/libreadline/5.1, vendor/zlib/1.2.3, vendor/openssh/4.3p1, vendor/sendmail/8.13.6, vendor/csup/20060313, vendor/hostapd/0.4.8, vendor/wpa_supplicant/0.4.8, vendor/openbsm/1.0-ALPHA-5, vendor/csup/20060303, vendor/csup/20060302, vendor/bsnmp/1.12, vendor/tcsh/6.14, vendor/openbsm/1.0-ALPHA-4, vendor/ath/0.9.16.16, vendor/openbsm/1.0-ALPHA-3, vendor/openbsm/1.0-ALPHA-2, vendor/openbsm/1.0-ALPHA-1, vendor/bind9/9.3.2-dougb-p1, vendor/ipfilter/4.1.10, vendor/ipfilter-sys/4-1-10, vendor/bind9/9.3.2, vendor/tzdata/tzdata2005r, vendor/tzdata/tzdata2005q, vendor/nve/1.0.0310, release/6.0.0_cvs, release/6.0.0, vendor/acpica/20051021, vendor/acpica/20041119sysinc, vendor/wpa_supplicant/0.3-latest, vendor/groff/1.19.2, vendor/wpa_supplicant/0.3.9, vendor/bsnmp/1.11, vendor/misc-GNU/cpio/2.6, vendor/pf-sys/3.7.001, vendor/openssh/4.2p1, vendor/tzdata/tzdata2005m, vendor/tzdata/tzdata2005l, vendor/bind9/9.3.1p1, vendor/tcpdump/3.9.1, vendor/libpcap/0.9.1, vendor/openpam/FIGWORT, vendor/sendmail/8.13.4_1, vendor/hostapd/0.3.9, vendor/sendmail/8.13.4, vendor/OpenBSD/dhclient_openbsd_3_7, vendor/hostapd/0.3.7, vendor/wpa_supplicant/0.3.8, vendor/openssh/4.1p1, vendor/openssh/4.0p1, vendor/gcc/3.4.4-20050518, vendor/tcpdump/3.9.1-096, vendor/libpcap/0.9.1-096, vendor/ngatm/1.2, vendor/bsnmp/1.10, vendor/misc-GNU/texinfo/4.8, vendor/NetBSD/lukemftp/20050516, vendor/tnftp/20050516, vendor/one-true-awk/20050424, vendor/bzip2/1.0.3, vendor/libregex/fedora-glibc-2.3.4-21, release/5.4.0_cvs, release/5.4.0, vendor/NetBSD/regress_resolv_20050504, vendor/pf/3.7, vendor/pf-sys/3.7, vendor/bsnmp/1.9, vendor/ipfilter/4.1.8, vendor/ipfilter-sys/4-1-8, vendor/zlib/1.2.2, vendor/bind9/9.3.1 |
|
#
14bc0685 |
| 14-Mar-2005 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Use vfs_hash instead of home-rolled.
|
Revision tags: vendor/nve/1.0.0301, vendor/bsnmp/1.8, vendor/openssl/0.9.7e, vendor/heimdal/0.6.3, vendor/NetBSD/lukemftp/20050219, vendor/tnftp/20050219, vendor/sendmail/8.13.3, vendor/netcat/20050204, vendor/openpam/FETERITA, release/4.11.0_cvs, release/4.11.0 |
|
#
60727d8b |
| 07-Jan-2005 |
Warner Losh <imp@FreeBSD.org> |
/* -> /*- for license, minor formatting changes
|
Revision tags: vendor/file/4.12, vendor/ath/0.9.14.9, vendor/tzdata/tzdata2004g, vendor/acpica/20041119, release/5.3.0_cvs, release/5.3.0 |
|
#
43920011 |
| 29-Oct-2004 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Move UFS from DEVFS backing to GEOM backing.
This eliminates a bunch of vnode overhead (approx 1-2 % speed improvement) and gives us more control over the access to the storage device.
Access count
Move UFS from DEVFS backing to GEOM backing.
This eliminates a bunch of vnode overhead (approx 1-2 % speed improvement) and gives us more control over the access to the storage device.
Access counts on the underlying device are not correctly tracked and therefore it is possible to read-only mount the same disk device multiple times: syv# mount -p /dev/md0 /var ufs rw 2 2 /dev/ad0 /mnt ufs ro 1 1 /dev/ad0 /mnt2 ufs ro 1 1 /dev/ad0 /mnt3 ufs ro 1 1
Since UFS/FFS is not a synchrousely consistent filesystem (ie: it caches things in RAM) this is not possible with read-write mounts, and the system will correctly reject this.
Details:
Add a geom consumer and a bufobj pointer to ufsmount.
Eliminate the vnode argument from softdep_disk_prewrite(). Pick the vnode out of bp->b_vp for now. Eventually we should find it through bp->b_bufobj->b_private.
In the mountcode, use g_vfs_open() once we have used VOP_ACCESS() to check permissions.
When upgrading and downgrading between r/o and r/w do the right thing with GEOM access counts. Remove all the workarounds for not being able to do this with VOP_OPEN().
If we are the root mount, drop the exclusive access count until we upgrade to r/w. This allows fsck of the root filesystem and the MNT_RELOAD to work correctly.
Set bo_private to the GEOM consumer on the device bufobj.
Change the ffs_ops->strategy function to call g_vfs_strategy()
In ufs_strategy() directly call the strategy on the disk bufobj. Same in rawread.
In ffs_fsync() we will no longer see VCHR device nodes, so remove code which synced the filesystem mounted on it, in case we came there. I'm not sure this code made sense in the first place since we would have taken the specfs route on such a vnode.
Redo the highly bogus readblock() function in the snapshot code to something slightly less bogus: Constructing an uio and using physio was really quite a detour. Instead just fill in a bio and ship it down.
show more ...
|
Revision tags: vendor/openssh/3.9p1, vendor/libreadline/5.0p1-p5, vendor/libreadline/5.0, vendor/tzdata/tzdata2004e, vendor/gcc/3.4.2-20041014, vendor/ngatm/1.1.1, vendor/libbegemot/1.1.1, vendor/bind9/9.3.0, vendor/bind9/9.3.0rc4, vendor/pf/3.5.001, vendor/NetBSD/lukemftpd/20040809, vendor/isc-dhcp/3.0.1, vendor/openssl/0.9.7-dev, vendor/pf-sys/3.5.004, vendor/pf-sys/3.5.003, vendor/misc-GNU/sort/20040812, vendor/gcc/3.4.2-20040728, vendor/ngatm/1.1, vendor/file/4.10, vendor/bsnmp/1.7, vendor/sendmail/8.13.1 |
|
#
b403319b |
| 28-Jul-2004 |
Alexander Kabaev <kan@FreeBSD.org> |
Avoid using casts as lvalues. Introduce DIP_SET macro which sets proper inode field based on UFS version. Use DIP ro read values and DIP_SET to modify them throughout FFS code base.
|
Revision tags: vendor/ntp/4.2.0, vendor/pf-sys/3.5.002, vendor/tcsh/6.13, vendor/ngatm/1.0, vendor/amd/6.0.10p1, vendor/misc-GNU/grep/2.5.1, vendor/libregex/from-grep-2.5.1, vendor/misc-GNU/sort/5.2.1, vendor/acpica/20040527, vendor/zlib/1.2.1, vendor/isc-dhcp/3.0.1rc14, vendor/gdb/marcel_contrib, vendor/ipfilter/3.4.35, vendor/ipfilter-sys/3-4-35, vendor/tzcode/tzcode2004a, vendor/pf-sys/3.5.001, vendor/pf/3.5, vendor/pf-sys/3.5, vendor/altq/20040607, vendor/misc-GNU/cvs/1.11.17, release/4.10.0_cvs, release/4.10.0, vendor/acpica/20040514, vendor/libuwx/BETA7, vendor/pf-sys/3.4.003, vendor/NetBSD/lukemftp/20040426, vendor/tnftp/20040426, vendor/openssh/3.8.1p1, vendor/less/v381, vendor/misc-GNU/cvs/1.11.15, vendor/bsnmp/1.6, vendor/acpica/20040402, vendor/pf-sys/3.4.002 |
|
#
012d4134 |
| 07-Apr-2004 |
Warner Losh <imp@FreeBSD.org> |
Remove advertising clause from University of California Regent's license, per letter dated July 22, 1999 and irc message from Robert Watson saying that clause 3 can be removed from those files with a
Remove advertising clause from University of California Regent's license, per letter dated July 22, 1999 and irc message from Robert Watson saying that clause 3 can be removed from those files with an NAI copyright that also have only a University of California copyrights.
Approved by: core, rwatson
show more ...
|
Revision tags: vendor/openssl/0.9.7d-p1, vendor/heimdal/0.6.1, vendor/com_err/0.6.1, vendor/tcpdump/3.8.3, vendor/libpcap/0.8.3, vendor/pf-sys/3.4.001, vendor/acpica/20040311, vendor/openssl/0.9.7d, vendor/openssl/0.9.7c-patch1, vendor/misc-GNU/grep/2.4.2, vendor/acpica/20040220, vendor/pf/3.4, vendor/openssh/3.8p1, vendor/pf-sys/3.4, vendor/SGI/vjs_20020502, vendor/libregex/from-grep-2.4.2, release/5.2.1_cvs, release/5.2.1, vendor/sendmail/8.12.11, vendor/libreadline/4.3p1-p5, vendor/openpam/EELGRASS, vendor/one-true-awk/20040207, vendor/one-true-awk/20030731, vendor/bsnmp/1.5a, vendor/gdtoa/20040118, release/5.2.0_cvs, release/5.2.0, vendor/alsa/1.9, vendor/openssh/3.7.1p2, vendor/acpica/20031203, vendor/ath/0.9.6.3, vendor/ath/0.9.6.1, vendor/bind/8.3.7, vendor/bsnmp/1.4, vendor/ngatm/0.91, vendor/gcc/3.3.3-20031106, vendor/NetBSD/lukemftp/20031103, vendor/tnftp/20031103, vendor/ath/0.9.5.17, vendor/ngatm/0.9, vendor/libuwx/BETA6, release/4.9.0_cvs, release/4.9.0, vendor/tzdata/tzdata2003d, vendor/heimdal/cvs-20030922, vendor/heimdal/0.6, vendor/libuwx/BETA5, vendor/openssl/0.9.7c, vendor/sendmail/8.12.10, vendor/sendmail/200309_parseaddr_patch, vendor/openssh/200309-xrealloc-patch, vendor/openssh/200309-buffer-patch, vendor/amd/6.0.9, vendor/isc-dhcp/3.0.1rc12, vendor/libreadline/4.3, vendor/misc-GNU/sort/2.1, vendor/gcc/3.3.1 |
|
#
5c24d6ee |
| 15-Aug-2003 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Eliminate the i_devvp field from the incore UFS inodes, we can get the same value from ip->i_ump->um_devvp.
This saves a pointer in the memory copies of inodes, which can easily run into several hun
Eliminate the i_devvp field from the incore UFS inodes, we can get the same value from ip->i_ump->um_devvp.
This saves a pointer in the memory copies of inodes, which can easily run into several hundred kilobytes.
The extra indirection is unmeasurable in benchmarks.
Approved by: mckusick
show more ...
|
Revision tags: vendor/acpica/20030619, vendor/ath/0.9.5.2, vendor/one-true-awk/20030729, vendor/openpam/DOGWOOD, vendor/gcc/3.3.1-20030711, vendor/NetBSD/lukemftp/20030630, vendor/tnftp/20030630, vendor/ath/0.9.4.0, vendor/misc-GNU/texinfo/4.6, vendor/bind/8.3.6, vendor/NetBSD/lukemftp/20030615, vendor/tnftp/20030615, release/5.1.0_cvs, release/5.1.0, vendor/openpam/DIGITALIS, vendor/acpica/20030228b, vendor/acpica/20030228a, vendor/libuwx/BETA4, vendor/openpam/DIANTHUS, vendor/misc-GNU/texinfo/4.5, vendor/groff/1.19, vendor/acpica/20030228, vendor/tzdata/tzdata2003a, vendor/openssh/3.6.1p1, vendor/alsa/1.8, vendor/alsa/1.51, vendor/alsa/1.39, release/4.8.0_cvs, release/4.8.0, vendor/sendmail/8.12.9, vendor/gdtoa/20030324, vendor/openssl/secfix-20030317, vendor/openssl/secfix-20030319, vendor/gdtoa/20030318, vendor/one-true-awk/20030314, vendor/gdtoa/20030305, vendor/sendmail/8.12.8, vendor/tcpdump/3.7.2, vendor/file/3.41, vendor/ext2fs/2.4.3-rh7.1, vendor/openssl/0.9.7a, vendor/file/3.40, vendor/ipfilter/3.4.31, vendor/ipfilter-sys/3-4-31, vendor/sendmail/8.12.7-protofix, vendor/gcc/3.2.2-20030205, vendor/sendmail/8.12.7, vendor/NetBSD/lukemftpd/20030122, vendor/openssl/0.9.7-stable-1, vendor/openssl/0.9.7, vendor/bind/8.3.4, vendor/misc-GNU/cvs/1.11.5, vendor/heimdal/0.5.1-patch, release/5.0.0_cvs, release/5.0.0, vendor/isc-dhcp/3.0.1rc11, vendor/isc-dhcp/3.0.1rc10, vendor/openpam/DAFFODIL, vendor/NetBSD/lukemftpd/20030105, vendor/one-true-awk/20021213, vendor/openpam/CYCLAMEN |
|
#
8efcd9a7 |
| 15-Dec-2002 |
Kirk McKusick <mckusick@FreeBSD.org> |
Update to previous change (1.54) to use an approperly wide inode field so as to work correctly on 64-bit platforms.
Reported-by: Jake Burkholder <jake@locore.ca> Sponsored by: DARPA & NAI Labs. Ap
Update to previous change (1.54) to use an approperly wide inode field so as to work correctly on 64-bit platforms.
Reported-by: Jake Burkholder <jake@locore.ca> Sponsored by: DARPA & NAI Labs. Approved by: Ian Dowse <iedowse@maths.tcd.ie>
show more ...
|
#
0db138a6 |
| 14-Dec-2002 |
Kirk McKusick <mckusick@FreeBSD.org> |
Only the most recent snapshot contains the complete list of blocks that were copied in all of the earlier snapshots, thus its precomputed list must be used in the copyonwrite test. Using incomplete l
Only the most recent snapshot contains the complete list of blocks that were copied in all of the earlier snapshots, thus its precomputed list must be used in the copyonwrite test. Using incomplete lists may lead to deadlock. Also do not include the blocks used for the indirect pointers in the indirect pointers as this may lead to inconsistent snapshots.
Sponsored by: DARPA & NAI Labs. Approved by: re
show more ...
|
Revision tags: vendor/one-true-awk/20021129, vendor/gcc/3.2.1, vendor/binutils/2.13.2_20021127, vendor/misc-GNU/cvs/1.11.2.1-20021201, vendor/acpica/20021118, vendor/heimdal/0.5.1, vendor/bind/8.3.3.patched, vendor/NetBSD/lukemftpd/1.2-beta2, vendor/ntp/4.1.1b, vendor/ntp/4.1.1a, vendor/openssh/3.5p1, vendor/tzdata/tzdata2002d, vendor/gdb/5.2.1, vendor/ncurses/5.2-20020907-ac-fix, vendor/binutils/2.13.20021011, vendor/groff/1.18.1, vendor/gcc/3.2-20021009 |
|
#
98d275df |
| 09-Oct-2002 |
Kirk McKusick <mckusick@FreeBSD.org> |
When creating a snapshot, create a list of initially allocated blocks. Whenever doing a copy-on-write check, first look in the list of initially allocated blocks to see if it is there. If so, no furt
When creating a snapshot, create a list of initially allocated blocks. Whenever doing a copy-on-write check, first look in the list of initially allocated blocks to see if it is there. If so, no further check is needed. If not, fall through and do the full check. This change eliminates one of two known deadlocks caused by snapshots. Handling the second deadlock will be the subject of another check-in. This change also reduces the cost of the copy-on-write check by speeding up the verification of frequently checked blocks.
Sponsored by: DARPA & NAI Labs.
show more ...
|
Revision tags: release/4.7.0_cvs, vendor/acpica/20021002, vendor/expat/1.95.5, vendor/heimdal/cvs-20020930, vendor/isc-dhcp/3.0.1rc9 |
|
#
a8babca2 |
| 27-Sep-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Make it a tad easier to deal with struct inode in userland programs which fondle /dev/kmem by using "struct cdev *" instead of "dev_t".
Requsted by: jake
|