Page MenuHomeFreeBSD

mckusick (Marshall Kirk McKusick)
User

Projects

User Details

User Since
Oct 24 2014, 7:17 PM (215 w, 2 d)

Recent Activity

Thu, Dec 6

mckusick committed rS341611: If the vfs.ffs.dotrimcons sysctl option is enabled while a file.
If the vfs.ffs.dotrimcons sysctl option is enabled while a file
Thu, Dec 6, 1:05 AM
mckusick committed rS341608: Normally when an attempt is made to mount a UFS/FFS filesystem whose.
Normally when an attempt is made to mount a UFS/FFS filesystem whose
Thu, Dec 6, 12:10 AM

Wed, Dec 5

mckusick committed rS341510: Ensure that cylinder-group check-hashes are properly updated when first.
Ensure that cylinder-group check-hashes are properly updated when first
Wed, Dec 5, 6:32 AM

Mon, Dec 3

mckusick added inline comments to D18351: Add BIO_SPEEDUP.
Mon, Dec 3, 1:19 AM

Sun, Dec 2

mckusick added inline comments to D18351: Add BIO_SPEEDUP.
Sun, Dec 2, 11:49 PM

Thu, Nov 29

mckusick accepted D18351: Add BIO_SPEEDUP.

This now looks reasonable to me.

Thu, Nov 29, 12:49 AM
mckusick accepted D17586: Make fsck(8) use pread(2).

This now looks good to me. I concur with kib's followup comments.

Thu, Nov 29, 12:33 AM

Tue, Nov 27

mckusick requested changes to D18351: Add BIO_SPEEDUP.

Generally this looks reasonable.

Tue, Nov 27, 6:12 AM

Mon, Nov 26

mckusick committed rS341004: Bring up to date with recently added functions berase(3), getinode(3),.
Bring up to date with recently added functions berase(3), getinode(3),
Mon, Nov 26, 11:10 PM
mckusick committed rS340927: Move the check for the filesystem having been run on a kernel that.
Move the check for the filesystem having been run on a kernel that
Mon, Nov 26, 1:00 AM

Sun, Nov 25

mckusick committed rS340925: Properly recover from superblock check-hash failures. Specifically,.
Properly recover from superblock check-hash failures. Specifically,
Sun, Nov 25, 6:11 PM
mckusick committed rS340924: Calculate updated superblock check-hash before writing it into the snapshot..
Calculate updated superblock check-hash before writing it into the snapshot.
Sun, Nov 25, 6:01 PM

Wed, Nov 14

mckusick committed rS340422: Fix build break from dump incompatibility I introduced in -r340411.
Fix build break from dump incompatibility I introduced in -r340411
Wed, Nov 14, 12:22 AM

Tue, Nov 13

mckusick committed rS340411: In preparation for adding inode check-hashes, clean up and.
In preparation for adding inode check-hashes, clean up and
Tue, Nov 13, 9:41 PM

Mon, Nov 12

mckusick accepted D17917: d_off support for multiple filesystems.

OK, keeping it as currently specified is fine. I was concerned that using it as an lseek parameter might be an issue for ZFS,and OneFS, but given that it appears that these filesystems are fine with that tells me that the above implementation works fine.

Mon, Nov 12, 10:49 PM
mckusick added a comment to D17917: d_off support for multiple filesystems.

My intent when adding the d_off field was that it be used for this purpose, so I am glad to see someone actually making it happen.

Mon, Nov 12, 9:02 PM

Nov 1 2018

mckusick committed rS339983: In preparation for adding inode check-hashes, convert the clri(8).
In preparation for adding inode check-hashes, convert the clri(8)
Nov 1 2018, 3:39 AM

Oct 31 2018

mckusick committed rS339941: In preparation for adding inode check-hashes, change the fsck_ffs.
In preparation for adding inode check-hashes, change the fsck_ffs
Oct 31 2018, 5:18 AM

Oct 23 2018

mckusick committed rS339671: Continuing efforts to provide hardening of FFS, this change adds a.
Continuing efforts to provide hardening of FFS, this change adds a
Oct 23 2018, 9:13 PM

Oct 19 2018

mckusick requested changes to D17586: Make fsck(8) use pread(2).

I prefer not to do things halfway. Either we use lseek/read or we use pread. Having it half & half is just crappy coding style. It is possible to write some tests that will exercise the error cases, so if you want to make this change, then I would like you to do it completely.

Oct 19 2018, 2:39 AM

Oct 17 2018

mckusick added a comment to D17586: Make fsck(8) use pread(2).

In answer to kib:

Oct 17 2018, 5:21 PM

Oct 16 2018

mckusick accepted D17586: Make fsck(8) use pread(2).

This change looks fine to me.

Oct 16 2018, 6:51 PM

Oct 2 2018

mckusick committed rS339082: Add missing newline in pwarn message..
Add missing newline in pwarn message.
Oct 2 2018, 1:45 PM

Sep 18 2018

mckusick accepted D17208: Fix state of dquot-less vnodes after failed quotaoff..

This seems like the correct approach to me.

Sep 18 2018, 2:41 PM

Sep 6 2018

mckusick committed rS338517: The Call For Testing had no reports of operational problems and.
The Call For Testing had no reports of operational problems and
Sep 6 2018, 11:28 PM

Aug 27 2018

mckusick committed rS338340: When doing a -S "safe copy", the install command should do an.
When doing a -S "safe copy", the install command should do an
Aug 27 2018, 3:21 PM

Aug 23 2018

mckusick committed rS338281: Proper spelling of consolidation..
Proper spelling of consolidation.
Aug 23 2018, 10:35 PM

Aug 20 2018

mckusick committed rS338118: TRIM consolodation is supposed to be off by default.
TRIM consolodation is supposed to be off by default
Aug 20 2018, 9:19 PM
mckusick committed rS338117: Fix incorrect output when printing block lists for files small enough.
Fix incorrect output when printing block lists for files small enough
Aug 20 2018, 8:44 PM

Aug 19 2018

mckusick committed rS338057: For traditional disks, the filesystem attempts to allocate the.
For traditional disks, the filesystem attempts to allocate the
Aug 19 2018, 5:19 PM
mckusick committed rS338056: Add consolodation of TRIM / BIO_DELETE commands to the UFS/FFS filesystem..
Add consolodation of TRIM / BIO_DELETE commands to the UFS/FFS filesystem.
Aug 19 2018, 4:56 PM

Aug 18 2018

mckusick committed rS338031: Replace the TRIM consolodation framework originally added in -r337396.
Replace the TRIM consolodation framework originally added in -r337396
Aug 18 2018, 10:22 PM
mckusick committed rS338029: Revert -r337396. It is being replaced with a revised interface that.
Revert -r337396. It is being replaced with a revised interface that
Aug 18 2018, 9:21 PM

Aug 7 2018

mckusick committed rS337437: When getting mount information for all filesystems, mount uses the.
When getting mount information for all filesystems, mount uses the
Aug 7 2018, 9:18 PM

Aug 6 2018

mckusick committed rS337396: Put in place the framework for consolodating contiguous blocks into.
Put in place the framework for consolodating contiguous blocks into
Aug 6 2018, 9:09 PM

Jul 30 2018

mckusick added a comment to D16328: brelse() should not make buffers dirty again when writes fail.

The idea of channelling everything through b_iodone is aesthetically pleasing, but impractical. Adding an extra indirect call to every buffer operation introduces a lot of overhead for a very rare event. It also requires changes to every filesystem that uses the buffer cache (which is most of them). So, the idea of adding a function that gets called only when a disk goes offline that can have a default function that keeps the current (albeit broken) behavior of redirtying the buffer is both efficient and requires far less code churn.

Jul 30 2018, 6:05 AM

Jul 22 2018

mckusick added a comment to D16328: brelse() should not make buffers dirty again when writes fail.

As kib has pointed out, much of UFS is not prepared to deal with failure.

Jul 22 2018, 7:04 PM

Jul 20 2018

mckusick requested changes to D16328: brelse() should not make buffers dirty again when writes fail.

On further thought, I realize that while we (correctly) deal with the B_PAGING panic, we simply replace it with the "dangling dependency" panic in UFS along with about 100 UFS metadata corruption panics that occur if the I/O fails when writing a UFS metadata block. So, at a minimum we need to make a callback to the filesystem when we are going to fail a write so that it can take some sort of defensive action (such as forcible unmount). This can be done here where we know that we are about to start the cascade or perhaps in buf_free where we should call buf_deallocate if the reason for the buffer being freed is that it had a failed write.

Jul 20 2018, 2:59 PM

Jul 19 2018

mckusick accepted D16328: brelse() should not make buffers dirty again when writes fail.

I am fine with this change.

Jul 19 2018, 5:25 PM

Jul 17 2018

mckusick committed rS336361: Add needed locking for um_flags added in -r335808..
Add needed locking for um_flags added in -r335808.
Jul 17 2018, 4:44 AM

Jul 7 2018

mckusick committed rS336074: Import commit from NetBSD with checkin message:.
Import commit from NetBSD with checkin message:
Jul 7 2018, 7:12 PM

Jun 29 2018

mckusick committed rS335808: Create um_flags in the ufsmount structure to hold flags for a UFS filesystem..
Create um_flags in the ufsmount structure to hold flags for a UFS filesystem.
Jun 29 2018, 10:24 PM

Jun 7 2018

mckusick committed rS334814: Ensure proper initialization of superblock..
Ensure proper initialization of superblock.
Jun 7 2018, 8:49 PM

Jun 2 2018

mckusick accepted D15342: Break recursion involving getnewvnode and zfs_rmnode.

I am not the right person to review the ZFS-specific parts of this change. But the approach of avoiding recursive invocations of getnewvnode is needed and this change accomplishes that requirement.

Jun 2 2018, 6:25 PM

May 17 2018

mckusick accepted D15456: change ffs_blkfree() trim to not bypass geom_vfs, avoids panics.

This looks good to me. I'll change the M_TEMP to M_TRIM when I check my changes into the tree.

May 17 2018, 5:31 AM

May 16 2018

mckusick committed rS333694: Fix warning found by Coverity..
Fix warning found by Coverity.
May 16 2018, 11:42 PM
mckusick committed rS333693: Revert change made in base r171522.
Revert change made in base r171522
May 16 2018, 11:30 PM

Apr 19 2018

mckusick committed rS332798: Fix incorrect output for a file consisting of a single full-size.
Fix incorrect output for a file consisting of a single full-size
Apr 19 2018, 10:44 PM

Apr 18 2018

mckusick committed rS332742: In addition to the existing argument format:.
In addition to the existing argument format:
Apr 18 2018, 11:08 PM
mckusick committed rS332741: Check the inode type and only attempt to print block lists for.
Check the inode type and only attempt to print block lists for
Apr 18 2018, 10:25 PM

Apr 17 2018

mckusick committed rS332638: MFC of 332264, 332266, 332415:.
MFC of 332264, 332266, 332415:
Apr 17 2018, 12:03 AM

Apr 11 2018

mckusick committed rS332415: Fix potentially overflowing expression "fs->fs_ipg * fs->fs_ncg".
Fix potentially overflowing expression "fs->fs_ipg * fs->fs_ncg"
Apr 11 2018, 7:29 PM

Apr 8 2018

mckusick committed rS332268: Add (intmax_t) type casts to some printf parameters to keep i386 happy..
Add (intmax_t) type casts to some printf parameters to keep i386 happy.
Apr 8 2018, 7:18 AM
mckusick committed rS332267: When using the fsdb `blocks' command, replace the long and ugly list of.
When using the fsdb `blocks' command, replace the long and ugly list of
Apr 8 2018, 7:06 AM
mckusick committed rS332266: The ufs_disk_write() function is used to upgrade a read-only descriptor.
The ufs_disk_write() function is used to upgrade a read-only descriptor
Apr 8 2018, 7:00 AM
mckusick committed rS332265: Split tools/diag/prtblknos into two parts:.
Split tools/diag/prtblknos into two parts:
Apr 8 2018, 6:53 AM
mckusick committed rS332264: Defensive programming when reading inodes in getino()..
Defensive programming when reading inodes in getino().
Apr 8 2018, 5:15 AM

Apr 5 2018

mckusick committed rS332055: Renumber soft-update types starting at 1 instead of 0 to avoid confusion.
Renumber soft-update types starting at 1 instead of 0 to avoid confusion
Apr 5 2018, 12:32 AM

Mar 24 2018

mckusick committed rS331491: When freeing a superblock returned by ffs_sbget, be sure to also.
When freeing a superblock returned by ffs_sbget, be sure to also
Mar 24 2018, 3:36 PM

Mar 18 2018

mckusick accepted D14712: Remove Giant from init creation and vfs_mountroot..

This all looks good to me. Glad to see more of Giant retired.

Mar 18 2018, 5:06 PM

Mar 14 2018

mckusick accepted D14679: Modify rc.d/fsck to handle new status from fsck/fsck_ffs.

I concur that this change should be made.

Mar 14 2018, 10:35 PM
mckusick added a comment to D14679: Modify rc.d/fsck to handle new status from fsck/fsck_ffs.

A couple of points that I would like to add to this discussion:

Mar 14 2018, 4:21 PM

Mar 2 2018

mckusick committed rS330266: MFC of 329880..
MFC of 329880.
Mar 2 2018, 4:43 AM
mckusick committed rS330265: MFC of 329880..
MFC of 329880.
Mar 2 2018, 4:42 AM
mckusick committed rS330264: This change is some refactoring of Mark Johnston's changes in r329375.
This change is some refactoring of Mark Johnston's changes in r329375
Mar 2 2018, 4:35 AM

Feb 26 2018

mckusick committed rS329997: Use a more straight-forward approach to relaxing the location.
Use a more straight-forward approach to relaxing the location
Feb 26 2018, 12:35 AM

Feb 24 2018

mckusick committed rS329896: Relax the location restraints when validating one of the.
Relax the location restraints when validating one of the
Feb 24 2018, 3:34 AM

Feb 23 2018

mckusick committed rS329883: MFC of 329749..
MFC of 329749.
Feb 23 2018, 11:07 PM
mckusick committed rS329881: MFC of 329749..
MFC of 329749.
Feb 23 2018, 10:23 PM
mckusick committed rS329880: Include error number in the "fsync: giving up on dirty" message.
Include error number in the "fsync: giving up on dirty" message
Feb 23 2018, 9:57 PM

Feb 21 2018

mckusick committed rS329749: Fix a read past the end of a buffer in fsck..
Fix a read past the end of a buffer in fsck.
Feb 21 2018, 8:32 PM
mckusick closed D14163: Fix a read past the end of a buffer in fsck..
Feb 21 2018, 8:32 PM
mckusick committed rS329746: Refactor fix in r329600 to do its check once in readsuper() rather.
Refactor fix in r329600 to do its check once in readsuper() rather
Feb 21 2018, 7:56 PM

Feb 9 2018

mckusick committed rS329087: Add an explanation of the block size units output by prtblknos..
Add an explanation of the block size units output by prtblknos.
Feb 9 2018, 10:23 PM
mckusick committed rS329078: Merge biodone_finish() back into biodone(). The primary purpose is.
Merge biodone_finish() back into biodone(). The primary purpose is
Feb 9 2018, 7:51 PM
mckusick committed rS329076: This is a little C-program that can be used to print out the list.
This is a little C-program that can be used to print out the list
Feb 9 2018, 7:10 PM

Feb 8 2018

mckusick added a comment to D14163: Fix a read past the end of a buffer in fsck..

In response to brooks. You are correct that this always allocates one block and initialises it to zero. Thus all zero-length directories will sort to the front of the list so that they will all be reported in a block.

Feb 8 2018, 11:27 PM
mckusick committed rS329052: Include files missed in 329051..
Include files missed in 329051.
Feb 8 2018, 11:14 PM
mckusick committed rS329051: The goal of this change is to prevent accidental foot shooting by.
The goal of this change is to prevent accidental foot shooting by
Feb 8 2018, 11:07 PM

Feb 7 2018

mckusick committed rS328997: Adjust MFC in r328946 to stable/10..
Adjust MFC in r328946 to stable/10.
Feb 7 2018, 10:50 PM

Feb 6 2018

mckusick committed rS328948: MFC of 328647..
MFC of 328647.
Feb 6 2018, 7:18 PM
mckusick committed rS328947: MFC of 328647..
MFC of 328647.
Feb 6 2018, 7:17 PM
mckusick committed rS328946: MFC of 328643..
MFC of 328643.
Feb 6 2018, 7:15 PM
mckusick committed rS328944: MFC of 328643..
MFC of 328643.
Feb 6 2018, 7:13 PM
mckusick committed rS328943: MFC of 328304 and 328382..
MFC of 328304 and 328382.
Feb 6 2018, 7:10 PM
mckusick committed rS328942: MFC of 328304 and 328382..
MFC of 328304 and 328382.
Feb 6 2018, 7:09 PM
mckusick committed rS328914: Occasional cylinder-group check-hash errors were being reported on.
Occasional cylinder-group check-hash errors were being reported on
Feb 6 2018, 12:20 AM

Feb 2 2018

mckusick committed rS328821: Check and report error returns from sbput(3) calls..
Check and report error returns from sbput(3) calls.
Feb 2 2018, 11:27 PM
mckusick abandoned D14177: Proposed alternative fix..

See https://reviews.freebsd.org/D14163

Feb 2 2018, 10:24 PM
mckusick updated the diff for D14163: Fix a read past the end of a buffer in fsck..

I agree with the problem, but propose this new diff as the correct solution.

Feb 2 2018, 10:20 PM
mckusick commandeered D14163: Fix a read past the end of a buffer in fsck..
Feb 2 2018, 10:18 PM
mckusick committed rS328813: In the sbwrite(3) function, ensure that the file descriptor has been.
In the sbwrite(3) function, ensure that the file descriptor has been
Feb 2 2018, 10:06 PM
mckusick added a reviewer for D14177: Proposed alternative fix.: brooks.
Feb 2 2018, 9:34 PM
mckusick requested changes to D14163: Fix a read past the end of a buffer in fsck..

I concur with the problem, but differ on the solution. When I tried to upload my proposed change it created a whole new report https://reviews.freebsd.org/D14177. How do I just attach a new diff here?

Feb 2 2018, 9:33 PM
mckusick created D14177: Proposed alternative fix..
Feb 2 2018, 9:29 PM
mckusick committed rS328765: MFC of 328444..
MFC of 328444.
Feb 2 2018, 1:28 AM
mckusick committed rS328764: MFC of 328444..
MFC of 328444.
Feb 2 2018, 12:52 AM
mckusick committed rS328763: Use sbput(3) rather than sbwrite(3) to ensure that the updated copy of.
Use sbput(3) rather than sbwrite(3) to ensure that the updated copy of
Feb 2 2018, 12:07 AM
mckusick committed rS328762: Fix punctuation..
Fix punctuation.
Feb 2 2018, 12:02 AM

Jan 31 2018

mckusick committed rS328647: Null out journal softc pointer earlier to avoid a segment fault.
Null out journal softc pointer earlier to avoid a segment fault
Jan 31 2018, 11:31 PM