svn commit: r197608 - head/sys/geom/part

M. Warner Losh imp at bsdimp.com
Tue Sep 29 20:13:20 UTC 2009


In message: <EF993D67-F575-45CC-98EC-A1163EF15B50 at mac.com>
            Marcel Moolenaar <xcllnt at mac.com> writes:
: 
: On Sep 29, 2009, at 10:00 AM, Robert Watson wrote:
: 
: >
: > On Tue, 29 Sep 2009, Marcel Moolenaar wrote:
: >
: >>> Why do you check for zeros at all?  AFAIK, the only real check is  
: >>> for AA55 at the end of the sector (and having an MBR or other  
: >>> Extended MBR partition entry point at the sector in question).   
: >>> The '96' thing seems rather arbitrary in the code, and I think the  
: >>> zero's check is overly restrictive.
: >>
: >> Only checking for a signature that 99% of the boot blocks have  
: >> isn't enough. The msdos file system has that signature and the  
: >> check for all-zeroes is to prevent false positives there.
: >
: > And, as I recall, the msdosfs check has been gradually getting  
: > weaker over time as the constraints it places on things like  
: > cylinder counts become obsolete.  It's not quite that we'll mount  
: > msdosfs on any random pile of bytes, but it might be getting there...
: 
: We really need to get to a point where we treat partition types  
: seriously and
: use it to help avoid false positives. Reducing or eliminating false  
: positives
: is critical if we ever want to go towards DWIM or auto-mounting. With  
: the
: partition type taken into consideration, we may be able to eliminate  
: ad hoc
: checks, like the zero check in g_part_ebr, without creating false  
: positives.

Part of the problem too is that the msdosfs code checks too many
things, making it hard to use on raw images :(  Of course, I'm about
12 sigma from the mean on the images I use, but still...

Warner


More information about the svn-src-all mailing list