uio: Export definition of struct uio_device
authorAndy Grover <agrover@redhat.com>
Wed, 1 Oct 2014 23:07:03 +0000 (16:07 -0700)
committerNicholas Bellinger <nab@linux-iscsi.org>
Fri, 3 Oct 2014 04:35:54 +0000 (21:35 -0700)
In order to prevent a O(n) search of the filesystem to link up its uio
node with its target configuration, TCMU needs to know the minor number
that UIO assigned. Expose the definition of this struct so TCMU can
access this field.

Signed-off-by: Andy Grover <agrover@redhat.com>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
drivers/uio/uio.c
include/linux/uio_driver.h

index a673e5b..60fa627 100644 (file)
 
 #define UIO_MAX_DEVICES                (1U << MINORBITS)
 
-struct uio_device {
-       struct module           *owner;
-       struct device           *dev;
-       int                     minor;
-       atomic_t                event;
-       struct fasync_struct    *async_queue;
-       wait_queue_head_t       wait;
-       struct uio_info         *info;
-       struct kobject          *map_dir;
-       struct kobject          *portio_dir;
-};
-
 static int uio_major;
 static struct cdev *uio_cdev;
 static DEFINE_IDR(uio_idr);
index 1ad4724..baa8171 100644 (file)
@@ -63,7 +63,17 @@ struct uio_port {
 
 #define MAX_UIO_PORT_REGIONS   5
 
-struct uio_device;
+struct uio_device {
+        struct module           *owner;
+        struct device           *dev;
+        int                     minor;
+        atomic_t                event;
+        struct fasync_struct    *async_queue;
+        wait_queue_head_t       wait;
+        struct uio_info         *info;
+        struct kobject          *map_dir;
+        struct kobject          *portio_dir;
+};
 
 /**
  * struct uio_info - UIO device capabilities