diff options
Diffstat (limited to 'drivers/block')
-rw-r--r-- | drivers/block/amiflop.c | 1 | ||||
-rw-r--r-- | drivers/block/floppy.c | 9 | ||||
-rw-r--r-- | drivers/block/pktcdvd.c | 3 |
3 files changed, 7 insertions, 6 deletions
diff --git a/drivers/block/amiflop.c b/drivers/block/amiflop.c index 1468e8cf712d..0acbfff8ad28 100644 --- a/drivers/block/amiflop.c +++ b/drivers/block/amiflop.c | |||
@@ -1816,7 +1816,6 @@ out_blkdev: | |||
1816 | } | 1816 | } |
1817 | 1817 | ||
1818 | #ifdef MODULE | 1818 | #ifdef MODULE |
1819 | #include <linux/version.h> | ||
1820 | 1819 | ||
1821 | int init_module(void) | 1820 | int init_module(void) |
1822 | { | 1821 | { |
diff --git a/drivers/block/floppy.c b/drivers/block/floppy.c index 5eadbb9d4d71..28002de783b6 100644 --- a/drivers/block/floppy.c +++ b/drivers/block/floppy.c | |||
@@ -3714,6 +3714,12 @@ static int floppy_open(struct inode *inode, struct file *filp) | |||
3714 | USETF(FD_VERIFY); | 3714 | USETF(FD_VERIFY); |
3715 | } | 3715 | } |
3716 | 3716 | ||
3717 | /* set underlying gendisk policy to reflect real ro/rw status */ | ||
3718 | if (UTESTF(FD_DISK_WRITABLE)) | ||
3719 | inode->i_bdev->bd_disk->policy = 0; | ||
3720 | else | ||
3721 | inode->i_bdev->bd_disk->policy = 1; | ||
3722 | |||
3717 | if (UDRS->fd_ref == -1 || (UDRS->fd_ref && (filp->f_flags & O_EXCL))) | 3723 | if (UDRS->fd_ref == -1 || (UDRS->fd_ref && (filp->f_flags & O_EXCL))) |
3718 | goto out2; | 3724 | goto out2; |
3719 | 3725 | ||
@@ -3770,8 +3776,7 @@ static int floppy_open(struct inode *inode, struct file *filp) | |||
3770 | /* Allow ioctls if we have write-permissions even if read-only open. | 3776 | /* Allow ioctls if we have write-permissions even if read-only open. |
3771 | * Needed so that programs such as fdrawcmd still can work on write | 3777 | * Needed so that programs such as fdrawcmd still can work on write |
3772 | * protected disks */ | 3778 | * protected disks */ |
3773 | if (filp->f_mode & 2 | 3779 | if ((filp->f_mode & FMODE_WRITE) || !file_permission(filp, MAY_WRITE)) |
3774 | || permission(filp->f_dentry->d_inode, 2, NULL) == 0) | ||
3775 | filp->private_data = (void *)8; | 3780 | filp->private_data = (void *)8; |
3776 | 3781 | ||
3777 | if (UFDCS->rawcmd == 1) | 3782 | if (UFDCS->rawcmd == 1) |
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c index a280e679b1ca..59e5982a5db3 100644 --- a/drivers/block/pktcdvd.c +++ b/drivers/block/pktcdvd.c | |||
@@ -511,14 +511,11 @@ static void pkt_queue_bio(struct pktcdvd_device *pd, struct bio *bio) | |||
511 | */ | 511 | */ |
512 | static void pkt_iosched_process_queue(struct pktcdvd_device *pd) | 512 | static void pkt_iosched_process_queue(struct pktcdvd_device *pd) |
513 | { | 513 | { |
514 | request_queue_t *q; | ||
515 | 514 | ||
516 | if (atomic_read(&pd->iosched.attention) == 0) | 515 | if (atomic_read(&pd->iosched.attention) == 0) |
517 | return; | 516 | return; |
518 | atomic_set(&pd->iosched.attention, 0); | 517 | atomic_set(&pd->iosched.attention, 0); |
519 | 518 | ||
520 | q = bdev_get_queue(pd->bdev); | ||
521 | |||
522 | for (;;) { | 519 | for (;;) { |
523 | struct bio *bio; | 520 | struct bio *bio; |
524 | int reads_queued, writes_queued; | 521 | int reads_queued, writes_queued; |