Re: [PATCH] dm.c - device-mapper I/O path fixes

Joe Thornber (joe@fib011235813.fsnet.co.uk)
Wed, 11 Dec 2002 12:19:15 +0000


dec_pending(): only bother spin locking if io->error is going to be
updated. [Kevin Corry]

--- diff/drivers/md/dm.c 2002-12-11 12:00:29.000000000 +0000
+++ source/drivers/md/dm.c 2002-12-11 12:00:34.000000000 +0000
@@ -238,10 +238,11 @@
static spinlock_t _uptodate_lock = SPIN_LOCK_UNLOCKED;
unsigned long flags;

- spin_lock_irqsave(&_uptodate_lock, flags);
- if (error)
+ if (error) {
+ spin_lock_irqsave(&_uptodate_lock, flags);
io->error = error;
- spin_unlock_irqrestore(&_uptodate_lock, flags);
+ spin_unlock_irqrestore(&_uptodate_lock, flags);
+ }

if (atomic_dec_and_test(&io->io_count)) {
if (atomic_dec_and_test(&io->md->pending))
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/