DragonFly users List (threaded) for 2007-06
HEADS UP! More disklabel work on HEAD, be careful
I will be doing a major commit tonight as part of the continuing
disklabel separation work. I'm about 90% done separating out
the standard 32 bit disklabel. After I finish the separation,
I will implement a 64 bit disklabel.
Anyone running HEAD will have to do a full buildworld/installworld
after tonight's commit or your disklabel program will be out of sync
with the kernel. The new disklabel program will detect old kernels,
but the old disklabel program will not detect new kernels and the
result will be corrupt labels on disk if disklabel -r is used.
This work involves a great deal of messing around with the low
level disklabeling code. The kernel will no longer snoop-adjust
raw writes of the disklabel (aka disklabel -r -e/-w sequences),
will no longer snoop-adjust raw reads of the disklabel (aka
disklabel -r), and the kernel now manually adjusts the label when
reading and writing it rather then depending on it being snoop-adjusted
(which is all the DIOC* ioctls on disk labels).
In addition, struct disklabel will be no more. The header file is being
moved from sys/disklabel.h to sys/disklabel32.h and sys/disklabel.h
will become a generic abstraction layer. The original struct disklabel
will become struct disklabel32, etc.
All of the disentangling of the disklabel is almost done!