Re: Should a block device enforce block atomicity?

From: Zhao Forrest
Date: Mon Jun 30 2008 - 04:47:41 EST


>
> Don't forget that all IO requests are queued on the device. With a
> modern HW and disk you usually have NCQ and most drives will throw
> away write request to the same sector if they see a later write to
> the same sector in the queue.
>
> That said. There is nothing wrong with writing again and again to
> the same sector on disk. File/record locking is done at the FileSystem
> level. An application that wants exclusive write need to open the file
> that way. Other wise it could even be written from another machine not
> even another thread.
>
> What is it you are concerned with?
>
I happen to read the email and have a question, that may not be Erez's
real question :)
Let's suppose the following example:
1 pdflush find a dirty inode and decides to flush a set of dirty pages
to harddrive
2 while this set of dirty pages is being committed to
harddrive(dma_mapping is done, but dirty pages are not really written
to disk media), application/FS is trying to update some pages in this
set of dirty pages.

Then what happens? Will application be put into sleep until page
flushing to disk media is done?

Thanks,
Forrest
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/