buffer cache question, complex IO requests.

Ingo Molnar (mingo@pc5829.hil.siemens.at)
Wed, 18 Dec 1996 11:22:44 +0100 (MET)


Hello buffer cache experts :)

in our (soon to come) RAID1 and RAID[45] code we have the following
problem: The current ll_rw_block() logic ensures that a dirty buffer is
marked clean and the IO request is put into the global block IO request
queue always atomically.

Is it a problem if a process sleeps after it has marked a buffer clean,
but hasnt issued the IO operation into the global queue yet? As far as i
could check, bdflush doesnt deal with such buffers, it's on the BUF_LOCKED
list. Could other races be possible?

thanks in advance,

-- mingo