projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
9980060
)
floppy: fix lock imbalance
author
Jiri Slaby
<
[email protected]
>
Tue, 30 Jun 2009 18:41:44 +0000
(11:41 -0700)
committer
Linus Torvalds
<
[email protected]
>
Wed, 1 Jul 2009 01:56:01 +0000
(18:56 -0700)
A crappy macro prevents us unlocking on a fail path.
Expand the macro and unlock appropriatelly.
Signed-off-by: Jiri Slaby <
[email protected]
>
Cc: Jens Axboe <
[email protected]
>
Signed-off-by: Andrew Morton <
[email protected]
>
Signed-off-by: Linus Torvalds <
[email protected]
>
drivers/block/floppy.c
patch
|
blob
|
history
diff --git
a/drivers/block/floppy.c
b/drivers/block/floppy.c
index 862b40c90181b008f91f22aef61e69e87c681123..91b753013780f8a1bcb113159970abde34f4e127 100644
(file)
--- a/
drivers/block/floppy.c
+++ b/
drivers/block/floppy.c
@@
-3327,7
+3327,10
@@
static inline int set_geometry(unsigned int cmd, struct floppy_struct *g,
if (!capable(CAP_SYS_ADMIN))
return -EPERM;
mutex_lock(&open_lock);
- LOCK_FDC(drive, 1);
+ if (lock_fdc(drive, 1)) {
+ mutex_unlock(&open_lock);
+ return -EINTR;
+ }
floppy_type[type] = *g;
floppy_type[type].name = "user format";
for (cnt = type << 2; cnt < (type << 2) + 4; cnt++)