remove SWRITE* I/O types
authorChristoph Hellwig <hch@lst.de>
Wed, 11 Aug 2010 15:06:24 +0000 (17:06 +0200)
committerAl Viro <viro@zeniv.linux.org.uk>
Wed, 18 Aug 2010 05:09:01 +0000 (01:09 -0400)
commit9cb569d601e0b93e01c20a22872270ec663b75f6
tree80b2568fae48018806e82f8884062dae8a5494ae
parent87e99511ea54510ffb60b98001d108794d5037f8
remove SWRITE* I/O types

These flags aren't real I/O types, but tell ll_rw_block to always
lock the buffer instead of giving up on a failed trylock.

Instead add a new write_dirty_buffer helper that implements this semantic
and use it from the existing SWRITE* callers.  Note that the ll_rw_block
code had a bug where it didn't promote WRITE_SYNC_PLUG properly, which
this patch fixes.

In the ufs code clean up the helper that used to call ll_rw_block
to mirror sync_dirty_buffer, which is the function it implements for
compound buffers.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
16 files changed:
fs/buffer.c
fs/fat/misc.c
fs/jbd/checkpoint.c
fs/jbd/journal.c
fs/jbd/revoke.c
fs/jbd2/checkpoint.c
fs/jbd2/journal.c
fs/jbd2/revoke.c
fs/reiserfs/journal.c
fs/ufs/balloc.c
fs/ufs/ialloc.c
fs/ufs/truncate.c
fs/ufs/util.c
fs/ufs/util.h
include/linux/buffer_head.h
include/linux/fs.h