Marcel, good day. Fri, Jul 10, 2009 at 08:42:48AM -0700, Marcel Moolenaar wrote: > On Jul 10, 2009, at 4:33 AM, Paul B. Mahol wrote: > > >>>>> Today I had a nasty surprise when I fired up bsdlabel to > >>>>> increase the > >>>>> size of a swap partition. I booted the system off the 7.2-RELEASE > >>>>> live > >>>>> filesystem CD and its bsdlabel displayed "normal" labels. I > >>>>> used the > >>>>> bsdlabel off the 7.2 livefs CD to edit the label. > > *snip* > > > There is one not so trivial solution. Recreating labels with gpart(8) > > Well, as stated, a bsdlabel from 7.2-RELEASE does not complain. > Let's not yet assume the disk label is broken and instead look > at the tool. > > John: > Can you send me the output of "gpart show da0" and "gpart show da0s1". > Could you also send me (or make available for download) a binary dump > of sectors 0 (the MBR), 63 and 64 (the disklabel in slice 1). > > If it's the tool, I'll see about fixing it... For me, it seem to be the kernel who messes up the stuff. What I see in the "BSD" geom class are two entities, ad4s2a (!) and ufsid/47cc[...] (?!), as seen by the 'sysctl -b kern.geom.confxml'. Everything starts fine -- ad4s2 and ad4s3 are attached and create 6 providers each inside g_bsd_taste. But then ad4s2a creates another 6 providers inside g_bsd_taste and they are named ad4s2a{a,b,c,d,e,f} and I also have devices ufsid/47cc[...]{a,b,c,d,e,f}. Normal devices (ad4s2{a-f}) are here too, so mount works. But since ad4s2 isn't in a BSD class, bsdlabel is unable to determine the mbroffset and produces offsets from the beginning of a disk, without MBR offset fixup. Seems like the main devices are disappearing from the BSD class, thus allowing their children who sit on the offset 0 from the parent to attach as BSD disklabel parts. Need to add some more debugging printfs to the kernel and to glance over the code for some more time to get the idea on what's going on ;)) By the way, John, the output from the 'sysctl -b kern.geom.confxml' will be helpful too. -- Eygene _ ___ _.--. # \`.|\..----...-'` `-._.-'_.-'` # Remember that it is hard / ' ` , __.--' # to read the on-line manual )/' _/ \ `-_, / # while single-stepping the kernel. `-'" `"\_ ,_.-;_.-\_ ', fsc/as # _.-'_./ {_.' ; / # -- FreeBSD Developers handbook {_.-``-' {_/ #Received on Fri Jul 10 2009 - 14:18:41 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:51 UTC