On 9 March 2018 at 18:36, David Bright <d...@freebsd.org> wrote: > On Mar 9, 2018, at 17:31, Ian Lepore <i...@freebsd.org> wrote: >> >> On Fri, 2018-03-09 at 17:09 -0500, Mark Johnston wrote: >>> >>> etc/rc.d/fsck doesn't know how to interpret the new exit code and now >>> just drops to a single-user shell when it is encountered. […] >>> >>> Is there any reason etc/rc.d/fsck shouldn't automatically retry (up to > > This is, in fact, the reason that I made the change I did. I was trying to > put in a retry loop to rc.d/fsck, but found that I couldn’t get it to work > because fsck and fsck_ffs were not exiting with non-zero status. The drop to > single user is not really due to the specific (new) error code of 16, it is > due to the fact that fsck_ffs is now exiting with a non-zero status when it > hasn’t completely cleaned the file system; /any/ non-zero status would cause > the current rc.d/fsck script to go to single user. Prior to my change, > fsck_ffs was exiting with a zero status even though it had not completely > cleaned the filesystem and told the user to run it again. > >> >> fsck_ffs already has a -R flag to automatically retry, wouldn't that be >> a better mechanism for handling this new type of retry? > > That’s true; however, there is currently no way to pass that flag through the > filesystem-agnostic fsck wrapper called from rc.d/fsck to the > filesystem-specific fsck_ffs program that it calls. One could implement a > similar flag on the fsck wrapper to be passed along to the > filesystem-specific checker, but I think fsck_ffs is the only one that > currently implements such a flag.
Why does it need to be filesystem specific? Can't the retry happen in the wrapper itself? -- Eitan Adler _______________________________________________ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"