diff options
author | phk <phk@FreeBSD.org> | 2003-04-01 13:19:14 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 2003-04-01 13:19:14 +0000 |
commit | 8be523e927234c4cdbcbcd551b013c0a7c96aefc (patch) | |
tree | fbb024cbdd6c88d46f8d4d6630e50aff0bbfa956 /sys/sys/disk.h | |
parent | 17f3ff85b3442b554111f21248e040fa2a2826d4 (diff) | |
download | FreeBSD-src-8be523e927234c4cdbcbcd551b013c0a7c96aefc.zip FreeBSD-src-8be523e927234c4cdbcbcd551b013c0a7c96aefc.tar.gz |
Start to split the GEOM/diskdriver specific bits into geom/geom_disk.h
Diffstat (limited to 'sys/sys/disk.h')
-rw-r--r-- | sys/sys/disk.h | 48 |
1 files changed, 1 insertions, 47 deletions
diff --git a/sys/sys/disk.h b/sys/sys/disk.h index 063100c..f0d5042 100644 --- a/sys/sys/disk.h +++ b/sys/sys/disk.h @@ -17,58 +17,12 @@ #ifdef _KERNEL -#include <sys/queue.h> - #ifndef _SYS_CONF_H_ #include <sys/conf.h> /* XXX: temporary to avoid breakage */ #endif -typedef int disk_open_t(struct disk *); -typedef int disk_close_t(struct disk *); -typedef void disk_strategy_t(struct bio *bp); -typedef int disk_ioctl_t(struct disk *, u_long cmd, void *data, - int fflag, struct thread *td); - /* NB: disk_ioctl_t SHALL be cast'able to d_ioctl_t */ - -struct g_geom; -struct devstat; - -struct disk { - /* Fields which are private to geom_disk */ - struct g_geom *d_geom; - struct devstat *d_devstat; - - /* Shared fields */ - u_int d_flags; - const char *d_name; - u_int d_unit; - - /* Disk methods */ - disk_open_t *d_open; - disk_close_t *d_close; - disk_strategy_t *d_strategy; - disk_ioctl_t *d_ioctl; - dumper_t *d_dump; - - /* Info fields from driver to geom_disk.c. Valid when open */ - u_int d_sectorsize; - off_t d_mediasize; - u_int d_fwsectors; - u_int d_fwheads; - u_int d_maxsize; - u_int d_stripeoffset; - u_int d_stripesize; - - /* Fields private to the driver */ - void *d_drv1; -}; - -#define DISKFLAG_NOGIANT 0x1 -#define DISKFLAG_OPEN 0x2 -#define DISKFLAG_CANDELETE 0x4 +#include <geom/geom_disk.h> -void disk_create(int unit, struct disk *disk, int flags, void *unused, void *unused2); -void disk_destroy(struct disk *disk); struct disk *disk_enumerate(struct disk *disk); void disk_err(struct bio *bp, const char *what, int blkdone, int nl); |