NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/52056: mount -u / causes a kernel assertion



The following reply was made to PR kern/52056; it has been noted by GNATS.

From: =?UTF-8?B?SmFyb23DrXIgRG9sZcSNZWs=?= <jaromir.dolecek%gmail.com@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc: kern-bug-people%netbsd.org@localhost, gnats-admin%netbsd.org@localhost, netbsd-bugs%netbsd.org@localhost, 
	Martin Husemann <martin%netbsd.org@localhost>
Subject: Re: kern/52056: mount -u / causes a kernel assertion
Date: Fri, 10 Mar 2017 15:00:13 +0100

 >  This is more than possible.  Martin does:
 >
 >  -> mount -u /          "Change root from read-only,no-log to no-log"
 >  -> edit file           "This will bdwrite() and leave buffers B_DELWRI"
 >  -> exit singleuser
 >  -> /etc/rc.d/root      "Change root from no-log to log"
 >
 >  We now have buffers marked BO_DELWRI without B_LOCKED.
 >
 >  This has nothing to do with my recent changes.
 >
 >  We have to either:
 >
 >  - Remove the assertion and have wapbl_add_buf() pick up these buffers.
 >
 >  - Deny no-log to log transitions while read-write.
 
 I'll look if we can deny the transition, or make sure that pending
 blocks are synced first.
 
 I noticed that rev. 1.344 of ffs_vfsops.c removed a ffs_fsync() call -
 could that change perhaps have changed the behaviour?
 
 Some volunteer for checking why the -u doesn't work as advertized?
 
 Jaromir
 


Home | Main Index | Thread Index | Old Index