patch-2.3.43 linux/include/linux/blkdev.h
Next file: linux/include/linux/bootmem.h
Previous file: linux/include/linux/bfs_fs_sb.h
Back to the patch index
Back to the overall index
- Lines: 75
- Date:
Wed Feb 9 21:33:19 2000
- Orig file:
v2.3.42/linux/include/linux/blkdev.h
- Orig date:
Fri Jan 28 15:09:09 2000
diff -u --recursive --new-file v2.3.42/linux/include/linux/blkdev.h linux/include/linux/blkdev.h
@@ -37,14 +37,17 @@
};
typedef struct request_queue request_queue_t;
-typedef int (merge_request_fn) (request_queue_t *,
- struct request * req,
- struct buffer_head *);
-typedef int (merge_requests_fn) (request_queue_t *,
- struct request * req,
- struct request * req2);
-typedef void (request_fn_proc) (request_queue_t *);
+typedef int (merge_request_fn) (request_queue_t *q,
+ struct request *req,
+ struct buffer_head *bh);
+typedef int (merge_requests_fn) (request_queue_t *q,
+ struct request *req,
+ struct request *req2);
+typedef void (request_fn_proc) (request_queue_t *q);
typedef request_queue_t * (queue_proc) (kdev_t dev);
+typedef void (make_request_fn) (int rw, struct buffer_head *bh);
+typedef void (plug_device_fn) (request_queue_t *q, kdev_t device);
+typedef void (unplug_device_fn) (void *q);
struct request_queue
{
@@ -52,6 +55,8 @@
request_fn_proc * request_fn;
merge_request_fn * merge_fn;
merge_requests_fn * merge_requests_fn;
+ make_request_fn * make_request_fn;
+ plug_device_fn * plug_device_fn;
/*
* The queue owner gets to use this for whatever they like.
* ll_rw_blk doesn't touch it.
@@ -72,12 +77,6 @@
* not.
*/
char head_active;
-
- /*
- * Boolean that indicates whether we should use plugging on
- * this queue or not.
- */
- char use_plug;
};
struct blk_dev_struct {
@@ -107,8 +106,10 @@
extern wait_queue_head_t wait_for_request;
extern void grok_partitions(struct gendisk *dev, int drive, unsigned minors, long size);
extern void register_disk(struct gendisk *dev, kdev_t first, unsigned minors, struct block_device_operations *ops, long size);
-extern void unplug_device(void * data);
-extern void make_request(int major,int rw, struct buffer_head * bh);
+extern void generic_unplug_device(void * data);
+extern void generic_plug_device (request_queue_t *q, kdev_t dev);
+extern void generic_make_request(int rw, struct buffer_head * bh);
+extern request_queue_t * blk_get_queue(kdev_t dev);
/*
* Access functions for manipulating queue properties
@@ -116,12 +117,8 @@
extern void blk_init_queue(request_queue_t *, request_fn_proc *);
extern void blk_cleanup_queue(request_queue_t *);
extern void blk_queue_headactive(request_queue_t *, int);
-extern void blk_queue_pluggable(request_queue_t *, int);
-
-/* md needs this function to remap requests */
-extern int md_map (int minor, kdev_t *rdev, unsigned long *rsector, unsigned long size);
-extern int md_make_request (int minor, int rw, struct buffer_head * bh);
-extern int md_error (kdev_t mddev, kdev_t rdev);
+extern void blk_queue_pluggable(request_queue_t *, plug_device_fn *);
+extern void blk_queue_make_request(request_queue_t *, make_request_fn *);
extern int * blk_size[MAX_BLKDEV];
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)