block: Add sysfs entry for fua support
authorKent Overstreet <kent.overstreet@gmail.com>
Wed, 9 May 2018 01:33:58 +0000 (21:33 -0400)
committerJens Axboe <axboe@kernel.dk>
Mon, 14 May 2018 19:16:17 +0000 (13:16 -0600)
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/blk-sysfs.c

index d00d1b0..cae525b 100644 (file)
@@ -491,6 +491,11 @@ static ssize_t queue_wc_store(struct request_queue *q, const char *page,
        return count;
 }
 
+static ssize_t queue_fua_show(struct request_queue *q, char *page)
+{
+       return sprintf(page, "%u\n", test_bit(QUEUE_FLAG_FUA, &q->queue_flags));
+}
+
 static ssize_t queue_dax_show(struct request_queue *q, char *page)
 {
        return queue_var_show(blk_queue_dax(q), page);
@@ -659,6 +664,11 @@ static struct queue_sysfs_entry queue_wc_entry = {
        .store = queue_wc_store,
 };
 
+static struct queue_sysfs_entry queue_fua_entry = {
+       .attr = {.name = "fua", .mode = S_IRUGO },
+       .show = queue_fua_show,
+};
+
 static struct queue_sysfs_entry queue_dax_entry = {
        .attr = {.name = "dax", .mode = S_IRUGO },
        .show = queue_dax_show,
@@ -708,6 +718,7 @@ static struct attribute *default_attrs[] = {
        &queue_random_entry.attr,
        &queue_poll_entry.attr,
        &queue_wc_entry.attr,
+       &queue_fua_entry.attr,
        &queue_dax_entry.attr,
        &queue_wb_lat_entry.attr,
        &queue_poll_delay_entry.attr,