aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/fs.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/fs.h')
-rw-r--r--include/linux/fs.h19
1 files changed, 13 insertions, 6 deletions
diff --git a/include/linux/fs.h b/include/linux/fs.h
index 76041b614758..352c48627381 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -135,12 +135,13 @@ struct inodes_stat_t {
135 * immediately after submission. The write equivalent 135 * immediately after submission. The write equivalent
136 * of READ_SYNC. 136 * of READ_SYNC.
137 * WRITE_ODIRECT_PLUG Special case write for O_DIRECT only. 137 * WRITE_ODIRECT_PLUG Special case write for O_DIRECT only.
138 * WRITE_BARRIER Like WRITE_SYNC, but tells the block layer that all 138 * WRITE_BARRIER DEPRECATED. Always fails. Use FLUSH/FUA instead.
139 * previously submitted writes must be safely on storage 139 * WRITE_FLUSH Like WRITE_SYNC but with preceding cache flush.
140 * before this one is started. Also guarantees that when 140 * WRITE_FUA Like WRITE_SYNC but data is guaranteed to be on
141 * this write is complete, it itself is also safely on 141 * non-volatile media on completion.
142 * storage. Prevents reordering of writes on both sides 142 * WRITE_FLUSH_FUA Combination of WRITE_FLUSH and FUA. The IO is preceded
143 * of this IO. 143 * by a cache flush and data is guaranteed to be on
144 * non-volatile media on completion.
144 * 145 *
145 */ 146 */
146#define RW_MASK REQ_WRITE 147#define RW_MASK REQ_WRITE
@@ -158,6 +159,12 @@ struct inodes_stat_t {
158#define WRITE_META (WRITE | REQ_META) 159#define WRITE_META (WRITE | REQ_META)
159#define WRITE_BARRIER (WRITE | REQ_SYNC | REQ_NOIDLE | REQ_UNPLUG | \ 160#define WRITE_BARRIER (WRITE | REQ_SYNC | REQ_NOIDLE | REQ_UNPLUG | \
160 REQ_HARDBARRIER) 161 REQ_HARDBARRIER)
162#define WRITE_FLUSH (WRITE | REQ_SYNC | REQ_NOIDLE | REQ_UNPLUG | \
163 REQ_FLUSH)
164#define WRITE_FUA (WRITE | REQ_SYNC | REQ_NOIDLE | REQ_UNPLUG | \
165 REQ_FUA)
166#define WRITE_FLUSH_FUA (WRITE | REQ_SYNC | REQ_NOIDLE | REQ_UNPLUG | \
167 REQ_FLUSH | REQ_FUA)
161 168
162/* 169/*
163 * These aren't really reads or writes, they pass down information about 170 * These aren't really reads or writes, they pass down information about