--- src/sys/sys/diskslice.h 2007/06/17 09:56:17 1.20 +++ src/sys/sys/diskslice.h 2007/06/18 05:13:42 1.21 @@ -66,6 +66,9 @@ #ifndef _SYS_TYPES_H_ #include #endif +#ifndef _SYS_DISKLABEL_H_ +#include +#endif #ifndef _SYS_IOCCOM_H_ #include #endif @@ -88,7 +91,6 @@ #define DIOCWLABEL _IOW('d', 109, int) #define DIOCGSLICEINFO _IOR('d', 111, struct diskslices) #define DIOCSYNCSLICEINFO _IOW('d', 112, int) -#define DIOCSETSNOOP _IOW('d', 113, int) #define MAX_SLICES 16 /* @@ -129,7 +131,8 @@ struct diskslice { u_int64_t ds_size; /* number of sectors */ u_int32_t ds_reserved; /* sectors reserved parent overlap */ int ds_type; /* (foreign) slice type */ - struct disklabel *ds_label; /* BSD label, if any */ + disklabel_t ds_label; /* label, if any */ + struct disklabel_ops *ds_ops; /* label ops (probe default) */ void *ds_dev; /* devfs token for raw whole slice */ void *ds_devs[MAXPARTITIONS]; /* XXX s.b. in label */ u_int32_t ds_openmask[DKMAXPARTITIONS/(sizeof(u_int32_t)*8)]; @@ -386,7 +389,6 @@ dssetmaskfrommask(struct diskslice *ds, struct buf; struct bio; -struct disklabel; struct disk_info; struct bio_queue_head;