summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--block/blk-sysfs.c14
1 files changed, 3 insertions, 11 deletions
diff --git a/block/blk-sysfs.c b/block/blk-sysfs.c
index afc797fb0dfc..0cde6598fb2f 100644
--- a/block/blk-sysfs.c
+++ b/block/blk-sysfs.c
@@ -449,21 +449,13 @@ static ssize_t queue_wc_show(struct request_queue *q, char *page)
static ssize_t queue_wc_store(struct request_queue *q, const char *page,
size_t count)
{
- int set = -1;
-
if (!strncmp(page, "write back", 10))
- set = 1;
+ blk_queue_flag_set(QUEUE_FLAG_WC, q);
else if (!strncmp(page, "write through", 13) ||
!strncmp(page, "none", 4))
- set = 0;
-
- if (set == -1)
- return -EINVAL;
-
- if (set)
- blk_queue_flag_set(QUEUE_FLAG_WC, q);
- else
blk_queue_flag_clear(QUEUE_FLAG_WC, q);
+ else
+ return -EINVAL;
return count;
}