aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2008-03-02 09:09:22 -0500
committerAl Viro <viro@zeniv.linux.org.uk>2008-10-21 07:47:32 -0400
commitd4430d62fa77208824a37fe6f85ab2831d274769 (patch)
tree5d4d0bca31e63eb208fbebe4f39c912b964c1e4d /include
parentbadf8082c33d18b118d3a6f1b32d5ea6b97d3839 (diff)
[PATCH] beginning of methods conversion
To keep the size of changesets sane we split the switch by drivers; to keep the damn thing bisectable we do the following: 1) rename the affected methods, add ones with correct prototypes, make (few) callers handle both. That's this changeset. 2) for each driver convert to new methods. *ALL* drivers are converted in this series. 3) kill the old (renamed) methods. Note that it _is_ a flagday; all in-tree drivers are converted and by the end of this series no trace of old methods remain. The only reason why we do that this way is to keep the damn thing bisectable and allow per-driver debugging if anything goes wrong. New methods: open(bdev, mode) release(disk, mode) ioctl(bdev, mode, cmd, arg) /* Called without BKL */ compat_ioctl(bdev, mode, cmd, arg) locked_ioctl(bdev, mode, cmd, arg) /* Called with BKL, legacy */ Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'include')
-rw-r--r--include/linux/blkdev.h15
-rw-r--r--include/linux/fs.h1
2 files changed, 11 insertions, 5 deletions
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
index 2bad616b9949..b573186ff1a1 100644
--- a/include/linux/blkdev.h
+++ b/include/linux/blkdev.h
@@ -1061,11 +1061,16 @@ struct file;
1061struct inode; 1061struct inode;
1062 1062
1063struct block_device_operations { 1063struct block_device_operations {
1064 int (*open) (struct inode *, struct file *); 1064 int (*__open) (struct inode *, struct file *);
1065 int (*release) (struct inode *, struct file *); 1065 int (*__release) (struct inode *, struct file *);
1066 int (*ioctl) (struct inode *, struct file *, unsigned, unsigned long); 1066 int (*__ioctl) (struct inode *, struct file *, unsigned, unsigned long);
1067 long (*unlocked_ioctl) (struct file *, unsigned, unsigned long); 1067 long (*__unlocked_ioctl) (struct file *, unsigned, unsigned long);
1068 long (*compat_ioctl) (struct file *, unsigned, unsigned long); 1068 long (*__compat_ioctl) (struct file *, unsigned, unsigned long);
1069 int (*open) (struct block_device *, fmode_t);
1070 int (*release) (struct gendisk *, fmode_t);
1071 int (*locked_ioctl) (struct block_device *, fmode_t, unsigned, unsigned long);
1072 int (*ioctl) (struct block_device *, fmode_t, unsigned, unsigned long);
1073 int (*compat_ioctl) (struct block_device *, fmode_t, unsigned, unsigned long);
1069 int (*direct_access) (struct block_device *, sector_t, 1074 int (*direct_access) (struct block_device *, sector_t,
1070 void **, unsigned long *); 1075 void **, unsigned long *);
1071 int (*media_changed) (struct gendisk *); 1076 int (*media_changed) (struct gendisk *);
diff --git a/include/linux/fs.h b/include/linux/fs.h
index 58bbf689fef7..b5894604ba5e 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -79,6 +79,7 @@ extern int dir_notify_enable;
79#define FMODE_NDELAY ((__force fmode_t)32) 79#define FMODE_NDELAY ((__force fmode_t)32)
80#define FMODE_EXCL ((__force fmode_t)64) 80#define FMODE_EXCL ((__force fmode_t)64)
81#define FMODE_WRITE_IOCTL ((__force fmode_t)128) 81#define FMODE_WRITE_IOCTL ((__force fmode_t)128)
82#define FMODE_NDELAY_NOW ((__force fmode_t)256)
82 83
83#define RW_MASK 1 84#define RW_MASK 1
84#define RWA_MASK 2 85#define RWA_MASK 2