Change the kernel dev_t, representing a pointer to a specinfo structure,
[dragonfly.git] / sys / sys / disk.h
index 006a1f5..7c116f0 100644 (file)
  * ----------------------------------------------------------------------------
  *
  * $FreeBSD: src/sys/sys/disk.h,v 1.16.2.3 2001/06/20 16:11:01 scottl Exp $
- * $DragonFly: src/sys/sys/disk.h,v 1.6 2004/07/16 05:51:57 dillon Exp $
+ * $DragonFly: src/sys/sys/disk.h,v 1.10 2006/09/10 01:26:40 dillon Exp $
  */
 
 #ifndef _SYS_DISK_H_
 #define        _SYS_DISK_H_
 
+#if !defined(_KERNEL) && !defined(_KERNEL_STRUCTURES)
+#error "This file should not be included by userland programs."
+#endif
+
 #ifndef _SYS_DISKSLICE_H_
 #include <sys/diskslice.h>
 #endif
 
-#ifndef _SYS_DISKLABEL
+#ifndef _SYS_DISKLABEL_H_
 #include <sys/disklabel.h>
 #endif
 
-#ifndef _SYS_DISKLABEL
-#include <sys/msgport.h>
-#endif
-
 struct disk {
-       struct lwkt_port        d_port;         /* interception port */
-       struct cdevsw           *d_devsw;       /* our device switch */
-       struct cdevsw           *d_rawsw;       /* the raw device switch */
+       struct dev_ops          *d_dev_ops;     /* our device switch */
+       struct dev_ops          *d_raw_ops;     /* the raw device switch */
        u_int                   d_flags;
        u_int                   d_dsflags;
-       dev_t                   d_rawdev;       /* backing raw device */
-       dev_t                   d_cdev;         /* special whole-disk part */
+       cdev_t                  d_rawdev;       /* backing raw device */
+       cdev_t                  d_cdev;         /* special whole-disk part */
        struct diskslices       *d_slice;
        struct disklabel        d_label;
        LIST_ENTRY(disk)        d_list;
@@ -73,10 +72,12 @@ struct disk {
 #define DISKFLAG_LOCK          0x1
 #define DISKFLAG_WANTED                0x2
 
-dev_t disk_create (int unit, struct disk *disk, int flags, struct cdevsw *sw);
+#ifdef _KERNEL
+cdev_t disk_create (int unit, struct disk *disk, int flags, struct dev_ops *raw_ops);
 void disk_destroy (struct disk *disk);
-int disk_dumpcheck (dev_t dev, u_int *count, u_int *blkno, u_int *secsize);
+int disk_dumpcheck (cdev_t dev, u_int *count, u_int *blkno, u_int *secsize);
 struct disk *disk_enumerate (struct disk *disk);
 void disk_invalidate (struct disk *disk);
+#endif /* _KERNEL */
 
 #endif /* _SYS_DISK_H_ */