Hi,

this is a heads-up of a significant codechange about to go into PCFS.

I've put a webrev for the proposed change up at:

        http://cr.grommit.com/~frankho/

Why is this big / significant ?

a) it provides most of the support for media with 2kB sectorsize
    (the infamous "my iPod isn't accessible" problem)
    Most of this was contributed by Juergen Keil - thanks, Juergen !

b) it changes the way how you'll troubleshoot PCFS. In particular,
    most of the occurances of "PC_DPRINTF()" have been eliminated, and
    even if you crank up the `pcfsdebuglevel` tunable you'll not see a
    big number of messages on console/syslog anymore.

    This is because most of these messages were just function entry/exit
    brackets, and others were simply not helpful.
        - function entry/return bracketing should be done with DTrace,
          that's what fbt:pcfs::entry {} / fbt:pcfs::return {} would be
          for.
        - where the messages remain, they have been cleaned up to give
          enough / reasonable information.

    In addition to that, PCFS got a few statically-defined tracepoints,
    via DTrace SDT. The most important of these are:
        sdt:pcfs:parseBPB:parseBPB-initial {}
        sdt:pcfs:parseBPB:parseBPB-final {}
    which deliver a "score-based" match for what PCFS could figure out
    about the FAT bootsector.
    How does this look like ? Best, try on your own system, use the
    changes from above, and the following DTrace script:

        http://cr.grommit.com/~frankho/pcfs-mount-diagnose.d

    and then simply mount a PCFS filesystem.

    In short, it's DTrace time.

c) There's some new behaviour in there which may surprise you, such as:
        - validation of filesystem size against media size. PCFS will now
          give you warning messages that there might be errors on access
          if the filesystem doesn't fit on the medium.
          If you see this, and believe you shouldn't, please contact us.
        - access time updates are disabled by default on removeable media.
          You're not likely to notice this as atime granularity on FAT is
          days anyway; but then, some of you seem to test this area more
          intense than I used to, so just following principle of least
          surprise.
        - the mountpoint for a FAT filesystem will no longer report a
          timestamp of Jan 1st 1970 ('unix time zero'). Instead, it'll
          report the time when the mount was done.


If you feel that there are problems with this change, or things that it 
doesn't address but should, please reply; otherwise, enjoy the piece, and 
thanks to Juergen Keil and Alex Zakharov for their fix contributions !

FrankH.


------------------------------------------------------------------------------
No good can come from selling your freedom, not for all the gold in the world,
for the value of this heavenly gift far exceeds that of any fortune on earth.
------------------------------------------------------------------------------
_______________________________________________
opensolaris-discuss mailing list
[email protected]

Reply via email to