block: Add prefix to block integrity profile flags
authorMartin K. Petersen <martin.petersen@oracle.com>
Fri, 26 Sep 2014 23:20:02 +0000 (19:20 -0400)
committerJens Axboe <axboe@fb.com>
Sat, 27 Sep 2014 15:14:51 +0000 (09:14 -0600)
Add a BLK_ prefix to the integrity profile flags. Also rename the flags
to be more consistent with the generate/verify terminology in the rest
of the integrity code.

Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Sagi Grimberg <sagig@mellanox.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
block/bio-integrity.c
block/blk-integrity.c
include/linux/blkdev.h

index fe4de033b34c0479c84c8f2c5633c884ce45ee27..e64733bb29b6aa8adc242b74f6740085413bf1c6 100644 (file)
@@ -173,11 +173,11 @@ bool bio_integrity_enabled(struct bio *bio)
                return false;
 
        if (bio_data_dir(bio) == READ && bi->verify_fn != NULL &&
-           (bi->flags & INTEGRITY_FLAG_READ))
+           (bi->flags & BLK_INTEGRITY_VERIFY))
                return true;
 
        if (bio_data_dir(bio) == WRITE && bi->generate_fn != NULL &&
-           (bi->flags & INTEGRITY_FLAG_WRITE))
+           (bi->flags & BLK_INTEGRITY_GENERATE))
                return true;
 
        return false;
index 3a83a7d0817799ff1d85ab842c113c99256a9988..a7436ccc936bf3f300766cf52ebe38fa8777635c 100644 (file)
@@ -269,42 +269,42 @@ static ssize_t integrity_tag_size_show(struct blk_integrity *bi, char *page)
                return sprintf(page, "0\n");
 }
 
-static ssize_t integrity_read_store(struct blk_integrity *bi,
-                                   const char *page, size_t count)
+static ssize_t integrity_verify_store(struct blk_integrity *bi,
+                                     const char *page, size_t count)
 {
        char *p = (char *) page;
        unsigned long val = simple_strtoul(p, &p, 10);
 
        if (val)
-               bi->flags |= INTEGRITY_FLAG_READ;
+               bi->flags |= BLK_INTEGRITY_VERIFY;
        else
-               bi->flags &= ~INTEGRITY_FLAG_READ;
+               bi->flags &= ~BLK_INTEGRITY_VERIFY;
 
        return count;
 }
 
-static ssize_t integrity_read_show(struct blk_integrity *bi, char *page)
+static ssize_t integrity_verify_show(struct blk_integrity *bi, char *page)
 {
-       return sprintf(page, "%d\n", (bi->flags & INTEGRITY_FLAG_READ) != 0);
+       return sprintf(page, "%d\n", (bi->flags & BLK_INTEGRITY_VERIFY) != 0);
 }
 
-static ssize_t integrity_write_store(struct blk_integrity *bi,
-                                    const char *page, size_t count)
+static ssize_t integrity_generate_store(struct blk_integrity *bi,
+                                       const char *page, size_t count)
 {
        char *p = (char *) page;
        unsigned long val = simple_strtoul(p, &p, 10);
 
        if (val)
-               bi->flags |= INTEGRITY_FLAG_WRITE;
+               bi->flags |= BLK_INTEGRITY_GENERATE;
        else
-               bi->flags &= ~INTEGRITY_FLAG_WRITE;
+               bi->flags &= ~BLK_INTEGRITY_GENERATE;
 
        return count;
 }
 
-static ssize_t integrity_write_show(struct blk_integrity *bi, char *page)
+static ssize_t integrity_generate_show(struct blk_integrity *bi, char *page)
 {
-       return sprintf(page, "%d\n", (bi->flags & INTEGRITY_FLAG_WRITE) != 0);
+       return sprintf(page, "%d\n", (bi->flags & BLK_INTEGRITY_GENERATE) != 0);
 }
 
 static struct integrity_sysfs_entry integrity_format_entry = {
@@ -317,23 +317,23 @@ static struct integrity_sysfs_entry integrity_tag_size_entry = {
        .show = integrity_tag_size_show,
 };
 
-static struct integrity_sysfs_entry integrity_read_entry = {
+static struct integrity_sysfs_entry integrity_verify_entry = {
        .attr = { .name = "read_verify", .mode = S_IRUGO | S_IWUSR },
-       .show = integrity_read_show,
-       .store = integrity_read_store,
+       .show = integrity_verify_show,
+       .store = integrity_verify_store,
 };
 
-static struct integrity_sysfs_entry integrity_write_entry = {
+static struct integrity_sysfs_entry integrity_generate_entry = {
        .attr = { .name = "write_generate", .mode = S_IRUGO | S_IWUSR },
-       .show = integrity_write_show,
-       .store = integrity_write_store,
+       .show = integrity_generate_show,
+       .store = integrity_generate_store,
 };
 
 static struct attribute *integrity_attrs[] = {
        &integrity_format_entry.attr,
        &integrity_tag_size_entry.attr,
-       &integrity_read_entry.attr,
-       &integrity_write_entry.attr,
+       &integrity_verify_entry.attr,
+       &integrity_generate_entry.attr,
        NULL,
 };
 
@@ -406,7 +406,7 @@ int blk_integrity_register(struct gendisk *disk, struct blk_integrity *template)
 
                kobject_uevent(&bi->kobj, KOBJ_ADD);
 
-               bi->flags |= INTEGRITY_FLAG_READ | INTEGRITY_FLAG_WRITE;
+               bi->flags |= BLK_INTEGRITY_VERIFY | BLK_INTEGRITY_GENERATE;
                bi->interval = queue_logical_block_size(disk->queue);
                disk->integrity = bi;
        } else
@@ -419,6 +419,7 @@ int blk_integrity_register(struct gendisk *disk, struct blk_integrity *template)
                bi->verify_fn = template->verify_fn;
                bi->tuple_size = template->tuple_size;
                bi->tag_size = template->tag_size;
+               bi->flags |= template->flags;
        } else
                bi->name = bi_unsupported_name;
 
index 24c1e055b8a76891a440cae8bdba89df784cbebe..cf92eb031ae9f84f5f33c14c1435cdde40e077c3 100644 (file)
@@ -1458,8 +1458,10 @@ static inline uint64_t rq_io_start_time_ns(struct request *req)
 
 #if defined(CONFIG_BLK_DEV_INTEGRITY)
 
-#define INTEGRITY_FLAG_READ    2       /* verify data integrity on read */
-#define INTEGRITY_FLAG_WRITE   4       /* generate data integrity on write */
+enum blk_integrity_flags {
+       BLK_INTEGRITY_VERIFY            = 1 << 0,
+       BLK_INTEGRITY_GENERATE          = 1 << 1,
+};
 
 struct blk_integrity_iter {
        void                    *prot_buf;