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 /include/linux/raid/raid5.h | |
| 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 'include/linux/raid/raid5.h')
| -rw-r--r-- | include/linux/raid/raid5.h | 28 |
1 files changed, 15 insertions, 13 deletions
diff --git a/include/linux/raid/raid5.h b/include/linux/raid/raid5.h index d46dbd51264e..93a81473ef33 100644 --- a/include/linux/raid/raid5.h +++ b/include/linux/raid/raid5.h @@ -57,9 +57,9 @@ * * Buffers for the md device that arrive via make_request are attached * to the appropriate stripe in one of two lists linked on b_reqnext. - * One list for read requests, one for write. There should never be - * more than one buffer on the two lists together, but we are not - * guaranteed of that so we allow for more. + * One list (bh_read) for read requests, one (bh_write) for write. + * There should never be more than one buffer on the two lists + * together, but we are not guaranteed of that so we allow for more. * * If a buffer is on the read list when the associated cache buffer is * Uptodate, the data is copied into the read buffer and it's b_end_io @@ -70,16 +70,18 @@ * that the Uptodate bit is set. Once they have checked that they may * take buffers off the read queue. * - * When a buffer on the write_list is committed for write, it is - * marked clean, copied into the cache buffer, which is then marked - * dirty, and moved onto a third list, the written list. Once both - * the parity block and the cached buffer are successfully written, - * any buffer on a written list can be returned with b_end_io. - * - * The write_list and read_list lists act as fifos. They are protected by the - * device_lock which can be claimed when a stripe_lock is held. - * The device_lock is only for list manipulations and will only be held for a very - * short time. It can be claimed from interrupts. + * When a buffer on the write list is committed for write is it copied + * into the cache buffer, which is then marked dirty, and moved onto a + * third list, the written list (bh_written). Once both the parity + * block and the cached buffer are successfully written, any buffer on + * a written list can be returned with b_end_io. + * + * The write list and read list both act as fifos. The read list is + * protected by the device_lock. The write and written lists are + * protected by the stripe lock. The device_lock, which can be + * claimed while the stipe lock is held, is only for list + * manipulations and will only be held for a very short time. It can + * be claimed from interrupts. * * * Stripes in the stripe cache can be on one of two lists (or on |
