diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-10-23 13:23:07 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-10-23 13:23:07 -0400 |
commit | 22484856402bfa1ff3defe47f6029ab0418240d9 (patch) | |
tree | 140c67bf59674da350a7b51765d6ff7eb101b597 /drivers/block/paride | |
parent | 5ed487bc2c44ca4e9668ef9cb54c830e2a9fac47 (diff) | |
parent | 56b26add02b4bdea81d5e0ebda60db1fe3311ad4 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/viro/bdev
* git://git.kernel.org/pub/scm/linux/kernel/git/viro/bdev: (66 commits)
[PATCH] kill the rest of struct file propagation in block ioctls
[PATCH] get rid of struct file use in blkdev_ioctl() BLKBSZSET
[PATCH] get rid of blkdev_locked_ioctl()
[PATCH] get rid of blkdev_driver_ioctl()
[PATCH] sanitize blkdev_get() and friends
[PATCH] remember mode of reiserfs journal
[PATCH] propagate mode through swsusp_close()
[PATCH] propagate mode through open_bdev_excl/close_bdev_excl
[PATCH] pass fmode_t to blkdev_put()
[PATCH] kill the unused bsize on the send side of /dev/loop
[PATCH] trim file propagation in block/compat_ioctl.c
[PATCH] end of methods switch: remove the old ones
[PATCH] switch sr
[PATCH] switch sd
[PATCH] switch ide-scsi
[PATCH] switch tape_block
[PATCH] switch dcssblk
[PATCH] switch dasd
[PATCH] switch mtd_blkdevs
[PATCH] switch mmc
...
Diffstat (limited to 'drivers/block/paride')
-rw-r--r-- | drivers/block/paride/pcd.c | 21 | ||||
-rw-r--r-- | drivers/block/paride/pd.c | 14 | ||||
-rw-r--r-- | drivers/block/paride/pf.c | 22 | ||||
-rw-r--r-- | drivers/block/paride/pt.c | 2 |
4 files changed, 30 insertions, 29 deletions
diff --git a/drivers/block/paride/pcd.c b/drivers/block/paride/pcd.c index b8a994a2b013..e91d4b4b014f 100644 --- a/drivers/block/paride/pcd.c +++ b/drivers/block/paride/pcd.c | |||
@@ -223,23 +223,24 @@ static int pcd_warned; /* Have we logged a phase warning ? */ | |||
223 | 223 | ||
224 | /* kernel glue structures */ | 224 | /* kernel glue structures */ |
225 | 225 | ||
226 | static int pcd_block_open(struct inode *inode, struct file *file) | 226 | static int pcd_block_open(struct block_device *bdev, fmode_t mode) |
227 | { | 227 | { |
228 | struct pcd_unit *cd = inode->i_bdev->bd_disk->private_data; | 228 | struct pcd_unit *cd = bdev->bd_disk->private_data; |
229 | return cdrom_open(&cd->info, inode, file); | 229 | return cdrom_open(&cd->info, bdev, mode); |
230 | } | 230 | } |
231 | 231 | ||
232 | static int pcd_block_release(struct inode *inode, struct file *file) | 232 | static int pcd_block_release(struct gendisk *disk, fmode_t mode) |
233 | { | 233 | { |
234 | struct pcd_unit *cd = inode->i_bdev->bd_disk->private_data; | 234 | struct pcd_unit *cd = disk->private_data; |
235 | return cdrom_release(&cd->info, file); | 235 | cdrom_release(&cd->info, mode); |
236 | return 0; | ||
236 | } | 237 | } |
237 | 238 | ||
238 | static int pcd_block_ioctl(struct inode *inode, struct file *file, | 239 | static int pcd_block_ioctl(struct block_device *bdev, fmode_t mode, |
239 | unsigned cmd, unsigned long arg) | 240 | unsigned cmd, unsigned long arg) |
240 | { | 241 | { |
241 | struct pcd_unit *cd = inode->i_bdev->bd_disk->private_data; | 242 | struct pcd_unit *cd = bdev->bd_disk->private_data; |
242 | return cdrom_ioctl(file, &cd->info, inode, cmd, arg); | 243 | return cdrom_ioctl(&cd->info, bdev, mode, cmd, arg); |
243 | } | 244 | } |
244 | 245 | ||
245 | static int pcd_block_media_changed(struct gendisk *disk) | 246 | static int pcd_block_media_changed(struct gendisk *disk) |
@@ -252,7 +253,7 @@ static struct block_device_operations pcd_bdops = { | |||
252 | .owner = THIS_MODULE, | 253 | .owner = THIS_MODULE, |
253 | .open = pcd_block_open, | 254 | .open = pcd_block_open, |
254 | .release = pcd_block_release, | 255 | .release = pcd_block_release, |
255 | .ioctl = pcd_block_ioctl, | 256 | .locked_ioctl = pcd_block_ioctl, |
256 | .media_changed = pcd_block_media_changed, | 257 | .media_changed = pcd_block_media_changed, |
257 | }; | 258 | }; |
258 | 259 | ||
diff --git a/drivers/block/paride/pd.c b/drivers/block/paride/pd.c index 5fdfa7c888ce..9299455b0af6 100644 --- a/drivers/block/paride/pd.c +++ b/drivers/block/paride/pd.c | |||
@@ -728,9 +728,9 @@ static int pd_special_command(struct pd_unit *disk, | |||
728 | 728 | ||
729 | /* kernel glue structures */ | 729 | /* kernel glue structures */ |
730 | 730 | ||
731 | static int pd_open(struct inode *inode, struct file *file) | 731 | static int pd_open(struct block_device *bdev, fmode_t mode) |
732 | { | 732 | { |
733 | struct pd_unit *disk = inode->i_bdev->bd_disk->private_data; | 733 | struct pd_unit *disk = bdev->bd_disk->private_data; |
734 | 734 | ||
735 | disk->access++; | 735 | disk->access++; |
736 | 736 | ||
@@ -758,10 +758,10 @@ static int pd_getgeo(struct block_device *bdev, struct hd_geometry *geo) | |||
758 | return 0; | 758 | return 0; |
759 | } | 759 | } |
760 | 760 | ||
761 | static int pd_ioctl(struct inode *inode, struct file *file, | 761 | static int pd_ioctl(struct block_device *bdev, fmode_t mode, |
762 | unsigned int cmd, unsigned long arg) | 762 | unsigned int cmd, unsigned long arg) |
763 | { | 763 | { |
764 | struct pd_unit *disk = inode->i_bdev->bd_disk->private_data; | 764 | struct pd_unit *disk = bdev->bd_disk->private_data; |
765 | 765 | ||
766 | switch (cmd) { | 766 | switch (cmd) { |
767 | case CDROMEJECT: | 767 | case CDROMEJECT: |
@@ -773,9 +773,9 @@ static int pd_ioctl(struct inode *inode, struct file *file, | |||
773 | } | 773 | } |
774 | } | 774 | } |
775 | 775 | ||
776 | static int pd_release(struct inode *inode, struct file *file) | 776 | static int pd_release(struct gendisk *p, fmode_t mode) |
777 | { | 777 | { |
778 | struct pd_unit *disk = inode->i_bdev->bd_disk->private_data; | 778 | struct pd_unit *disk = p->private_data; |
779 | 779 | ||
780 | if (!--disk->access && disk->removable) | 780 | if (!--disk->access && disk->removable) |
781 | pd_special_command(disk, pd_door_unlock); | 781 | pd_special_command(disk, pd_door_unlock); |
@@ -809,7 +809,7 @@ static struct block_device_operations pd_fops = { | |||
809 | .owner = THIS_MODULE, | 809 | .owner = THIS_MODULE, |
810 | .open = pd_open, | 810 | .open = pd_open, |
811 | .release = pd_release, | 811 | .release = pd_release, |
812 | .ioctl = pd_ioctl, | 812 | .locked_ioctl = pd_ioctl, |
813 | .getgeo = pd_getgeo, | 813 | .getgeo = pd_getgeo, |
814 | .media_changed = pd_check_media, | 814 | .media_changed = pd_check_media, |
815 | .revalidate_disk= pd_revalidate | 815 | .revalidate_disk= pd_revalidate |
diff --git a/drivers/block/paride/pf.c b/drivers/block/paride/pf.c index e7fe6ca97dd8..bef3b997ba3e 100644 --- a/drivers/block/paride/pf.c +++ b/drivers/block/paride/pf.c | |||
@@ -201,13 +201,13 @@ module_param_array(drive3, int, NULL, 0); | |||
201 | #define ATAPI_READ_10 0x28 | 201 | #define ATAPI_READ_10 0x28 |
202 | #define ATAPI_WRITE_10 0x2a | 202 | #define ATAPI_WRITE_10 0x2a |
203 | 203 | ||
204 | static int pf_open(struct inode *inode, struct file *file); | 204 | static int pf_open(struct block_device *bdev, fmode_t mode); |
205 | static void do_pf_request(struct request_queue * q); | 205 | static void do_pf_request(struct request_queue * q); |
206 | static int pf_ioctl(struct inode *inode, struct file *file, | 206 | static int pf_ioctl(struct block_device *bdev, fmode_t mode, |
207 | unsigned int cmd, unsigned long arg); | 207 | unsigned int cmd, unsigned long arg); |
208 | static int pf_getgeo(struct block_device *bdev, struct hd_geometry *geo); | 208 | static int pf_getgeo(struct block_device *bdev, struct hd_geometry *geo); |
209 | 209 | ||
210 | static int pf_release(struct inode *inode, struct file *file); | 210 | static int pf_release(struct gendisk *disk, fmode_t mode); |
211 | 211 | ||
212 | static int pf_detect(void); | 212 | static int pf_detect(void); |
213 | static void do_pf_read(void); | 213 | static void do_pf_read(void); |
@@ -266,7 +266,7 @@ static struct block_device_operations pf_fops = { | |||
266 | .owner = THIS_MODULE, | 266 | .owner = THIS_MODULE, |
267 | .open = pf_open, | 267 | .open = pf_open, |
268 | .release = pf_release, | 268 | .release = pf_release, |
269 | .ioctl = pf_ioctl, | 269 | .locked_ioctl = pf_ioctl, |
270 | .getgeo = pf_getgeo, | 270 | .getgeo = pf_getgeo, |
271 | .media_changed = pf_check_media, | 271 | .media_changed = pf_check_media, |
272 | }; | 272 | }; |
@@ -296,16 +296,16 @@ static void __init pf_init_units(void) | |||
296 | } | 296 | } |
297 | } | 297 | } |
298 | 298 | ||
299 | static int pf_open(struct inode *inode, struct file *file) | 299 | static int pf_open(struct block_device *bdev, fmode_t mode) |
300 | { | 300 | { |
301 | struct pf_unit *pf = inode->i_bdev->bd_disk->private_data; | 301 | struct pf_unit *pf = bdev->bd_disk->private_data; |
302 | 302 | ||
303 | pf_identify(pf); | 303 | pf_identify(pf); |
304 | 304 | ||
305 | if (pf->media_status == PF_NM) | 305 | if (pf->media_status == PF_NM) |
306 | return -ENODEV; | 306 | return -ENODEV; |
307 | 307 | ||
308 | if ((pf->media_status == PF_RO) && (file->f_mode & 2)) | 308 | if ((pf->media_status == PF_RO) && (mode & FMODE_WRITE)) |
309 | return -EROFS; | 309 | return -EROFS; |
310 | 310 | ||
311 | pf->access++; | 311 | pf->access++; |
@@ -333,9 +333,9 @@ static int pf_getgeo(struct block_device *bdev, struct hd_geometry *geo) | |||
333 | return 0; | 333 | return 0; |
334 | } | 334 | } |
335 | 335 | ||
336 | static int pf_ioctl(struct inode *inode, struct file *file, unsigned int cmd, unsigned long arg) | 336 | static int pf_ioctl(struct block_device *bdev, fmode_t mode, unsigned int cmd, unsigned long arg) |
337 | { | 337 | { |
338 | struct pf_unit *pf = inode->i_bdev->bd_disk->private_data; | 338 | struct pf_unit *pf = bdev->bd_disk->private_data; |
339 | 339 | ||
340 | if (cmd != CDROMEJECT) | 340 | if (cmd != CDROMEJECT) |
341 | return -EINVAL; | 341 | return -EINVAL; |
@@ -346,9 +346,9 @@ static int pf_ioctl(struct inode *inode, struct file *file, unsigned int cmd, un | |||
346 | return 0; | 346 | return 0; |
347 | } | 347 | } |
348 | 348 | ||
349 | static int pf_release(struct inode *inode, struct file *file) | 349 | static int pf_release(struct gendisk *disk, fmode_t mode) |
350 | { | 350 | { |
351 | struct pf_unit *pf = inode->i_bdev->bd_disk->private_data; | 351 | struct pf_unit *pf = disk->private_data; |
352 | 352 | ||
353 | if (pf->access <= 0) | 353 | if (pf->access <= 0) |
354 | return -EINVAL; | 354 | return -EINVAL; |
diff --git a/drivers/block/paride/pt.c b/drivers/block/paride/pt.c index 5ae229656eaa..1e4006e18f03 100644 --- a/drivers/block/paride/pt.c +++ b/drivers/block/paride/pt.c | |||
@@ -667,7 +667,7 @@ static int pt_open(struct inode *inode, struct file *file) | |||
667 | goto out; | 667 | goto out; |
668 | 668 | ||
669 | err = -EROFS; | 669 | err = -EROFS; |
670 | if ((!(tape->flags & PT_WRITE_OK)) && (file->f_mode & 2)) | 670 | if ((!(tape->flags & PT_WRITE_OK)) && (file->f_mode & FMODE_WRITE)) |
671 | goto out; | 671 | goto out; |
672 | 672 | ||
673 | if (!(iminor(inode) & 128)) | 673 | if (!(iminor(inode) & 128)) |