From 92bfb9ab0133f9a00eeaad00135ea7654699c35a Mon Sep 17 00:00:00 2001 From: Jiri Kosina Date: Fri, 18 May 2012 13:50:28 +0200 Subject: [PATCH] --- yaml --- r: 309286 b: refs/heads/master c: bfa10b8c98bb335bc3e401d3ec947d446f04d1aa h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/block/floppy.c | 18 ++++-------------- 2 files changed, 5 insertions(+), 15 deletions(-) diff --git a/[refs] b/[refs] index 5e52f4b0dff5..fe2b8b5ba493 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 070ad7e793dc6ff753ee682ef7790b3373b471f6 +refs/heads/master: bfa10b8c98bb335bc3e401d3ec947d446f04d1aa diff --git a/trunk/drivers/block/floppy.c b/trunk/drivers/block/floppy.c index 48e1d70740dc..cce7df367b79 100644 --- a/trunk/drivers/block/floppy.c +++ b/trunk/drivers/block/floppy.c @@ -3607,9 +3607,7 @@ static int floppy_release(struct gendisk *disk, fmode_t mode) mutex_lock(&floppy_mutex); mutex_lock(&open_lock); - if (UDRS->fd_ref < 0) - UDRS->fd_ref = 0; - else if (!UDRS->fd_ref--) { + if (!UDRS->fd_ref--) { DPRINT("floppy_release with fd_ref == 0"); UDRS->fd_ref = 0; } @@ -3645,13 +3643,7 @@ static int floppy_open(struct block_device *bdev, fmode_t mode) set_bit(FD_VERIFY_BIT, &UDRS->flags); } - if (UDRS->fd_ref == -1 || (UDRS->fd_ref && (mode & FMODE_EXCL))) - goto out2; - - if (mode & FMODE_EXCL) - UDRS->fd_ref = -1; - else - UDRS->fd_ref++; + UDRS->fd_ref++; opened_bdev[drive] = bdev; @@ -3714,10 +3706,8 @@ static int floppy_open(struct block_device *bdev, fmode_t mode) mutex_unlock(&floppy_mutex); return 0; out: - if (UDRS->fd_ref < 0) - UDRS->fd_ref = 0; - else - UDRS->fd_ref--; + UDRS->fd_ref--; + if (!UDRS->fd_ref) opened_bdev[drive] = NULL; out2: