freebsd-dev/sys/geom
Poul-Henning Kamp 7812d86f03 (This commit touches about 15 disk device drivers in a very consistent
and predictable way, and I apologize if I have gotten it wrong anywhere,
getting prior review on a patch like this is not feasible, considering
the number of people involved and hardware availability etc.)

If struct disklabel is the messenger: kill the messenger.

Inside struct disk we had a struct disklabel which disk drivers used to
communicate certain metrics to the disklayer above (GEOM or the disk
mini-layer).  This commit changes this communication to use four
explicit fields instead.

Amongst the benefits is that the fields do not get overwritten by
wrong or bogus on-disk disklabels.

Once that is clear, <sys/disk.h> which is included in the drivers
no longer need to pull <sys/disklabel.h> and <sys/diskslice.h> in,
the few places that needs them, have gotten explicit #includes for
them.

The disklabel inside struct disk is now only for internal use in
the disk mini-layer, so instead of embedding it, we malloc it as
we need it.

This concludes (modulus any mistakes) the series of disklabel related
commits.

I belive it all amounts to a NOP for all the rest of you :-)

Sponsored by:   DARPA & NAI Labs.
2002-09-20 19:36:05 +00:00
..
geom_aes.c
geom_bsd.c "Fix" printf format issues by using %j 2002-09-13 11:41:25 +00:00
geom_ccd.c (This commit touches about 15 disk device drivers in a very consistent 2002-09-20 19:36:05 +00:00
geom_dev.c Retire now unused DIOCGDVIRGIN kludge. 2002-09-20 09:31:14 +00:00
geom_disk.c (This commit touches about 15 disk device drivers in a very consistent 2002-09-20 19:36:05 +00:00
geom_dump.c
geom_enc.c Add a couple more of the big/little-endian conversion routines and make 2002-09-13 10:33:10 +00:00
geom_event.c
geom_gpt.c Remove unneeded #include <sys/disklabel.h> 2002-09-20 17:00:24 +00:00
geom_int.h
geom_io.c Use biowait() rather than DIY. 2002-09-13 11:39:11 +00:00
geom_kern.c
geom_mbr.c
geom_pc98.c "Fix" printf format issues by using %j 2002-09-13 11:41:25 +00:00
geom_slice.c
geom_slice.h
geom_subr.c
geom_sunlabel.c
geom.h Add a couple more of the big/little-endian conversion routines and make 2002-09-13 10:33:10 +00:00