FreeBSD/Linux Kernel Cross Reference
sys/sys/disk.h
1 /*
2 * ----------------------------------------------------------------------------
3 * "THE BEER-WARE LICENSE" (Revision 42):
4 * <phk@FreeBSD.ORG> wrote this file. As long as you retain this notice you
5 * can do whatever you want with this stuff. If we meet some day, and you think
6 * this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp
7 * ----------------------------------------------------------------------------
8 *
9 * $FreeBSD$
10 *
11 */
12
13 #ifndef _SYS_DISK_H_
14 #define _SYS_DISK_H_
15
16 #ifndef _SYS_DISKSLICE_H_
17 #include <sys/diskslice.h>
18 #endif /* _SYS_DISKSLICE_H_ */
19
20 #ifndef _SYS_DISKLABEL
21 #include <sys/disklabel.h>
22 #endif /* _SYS_DISKLABEL */
23
24 struct disk {
25 u_int d_flags;
26 u_int d_dsflags;
27 struct cdevsw *d_devsw;
28 dev_t d_dev;
29 struct diskslices *d_slice;
30 struct disklabel d_label;
31 LIST_ENTRY(disk) d_list;
32 };
33
34 #define DISKFLAG_LOCK 0x1
35 #define DISKFLAG_WANTED 0x2
36
37 dev_t disk_create __P((int unit, struct disk *disk, int flags, struct cdevsw *cdevsw, struct cdevsw *diskdevsw));
38 void disk_destroy __P((dev_t dev));
39 int disk_dumpcheck __P((dev_t dev, u_int *count, u_int *blkno, u_int *secsize));
40 struct disk *disk_enumerate __P((struct disk *disk));
41 void disk_invalidate __P((struct disk *disk));
42
43 #endif /* _SYS_DISK_H_ */
Cache object: 4e17273936b9fe8a74f25e77954307cb
|