[Bug 213507] [msdosfs] [patch]: Prevent occasional directory corruption while extending it to another cluster
    bugzilla-noreply at freebsd.org 
    bugzilla-noreply at freebsd.org
       
    Sun Oct 16 12:16:08 UTC 2016
    
    
  
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=213507
--- Comment #7 from Vladislav Movchan <vladislav.movchan at gmail.com> ---
(In reply to Konstantin Belousov from comment #5)
I confirmed your hypothesis - sometimes buffer pages have valid bits set and
sometimes they don't.
Original problem occurs only in cases when valid bits are set, so
vfs_bio_clrbuf() don't zero random data in buffer.
Also I went through history and found that originally buffer data was always
zeroed by call to clrbuf() macro and in base r171522 it was changed to
vfs_bio_clrbuf() as an optimization.
I suppose what I see is just a regression of this optimization and it was not
noticed since then as "directory extension to another cluster" is a rare
operation.
I attached another patch which restores original behaviour just for the
"directory grows" case.
With this patch I'm no longer able to reproduce this problem.
-- 
You are receiving this mail because:
You are the assignee for the bug.
    
    
More information about the freebsd-fs
mailing list