diff options
| author | Linus Torvalds <torvalds@athlon.transmeta.com> | 2002-02-04 17:57:11 -0800 |
|---|---|---|
| committer | Linus Torvalds <torvalds@athlon.transmeta.com> | 2002-02-04 17:57:11 -0800 |
| commit | c8ebfc888f9ee93f2dc7cd62b3be66263755d99a (patch) | |
| tree | f449a3433c022ed8fd9aaa8f291a1b4e354fd5b9 /drivers/block/elevator.c | |
| parent | 5d12a58c4049a4839abbbdf87dd189505513b1b6 (diff) | |
v2.4.1.2 -> v2.4.1.3
- Jens: better ordering of requests when unable to merge
- Neil Brown: make md work as a module again (we cannot autodetect
in modules, not enough background information)
- Neil Brown: raid5 SMP locking cleanups
- Neil Brown: nfsd: handle Irix NFS clients named pipe behavior and
dentry leak fix
- maestro3 shutdown fix
- fix dcache hash calculation that could cause bad hashes under certain
circumstances (Dean Gaudet)
- David Miller: networking and sparc updates
- Jeff Garzik: include file cleanups
- Andy Grover: ACPI update
- Coda-fs error return fixes
- rth: alpha Jensen update
Diffstat (limited to 'drivers/block/elevator.c')
| -rw-r--r-- | drivers/block/elevator.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/block/elevator.c b/drivers/block/elevator.c index 9917ad055a6d..3df8aab7f497 100644 --- a/drivers/block/elevator.c +++ b/drivers/block/elevator.c @@ -46,6 +46,8 @@ int elevator_linus_merge(request_queue_t *q, struct request **req, break; } + if (!*req && BHRQ_IN_ORDER(bh, __rq)) + *req = __rq; if (__rq->sem) continue; if (__rq->cmd != rw) @@ -65,8 +67,7 @@ int elevator_linus_merge(request_queue_t *q, struct request **req, __rq->elevator_sequence -= count; *req = __rq; break; - } else if (!*req && BHRQ_IN_ORDER(bh, __rq)) - *req = __rq; + } } return ret; |
