All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sagi Grimberg <sagig@dev.mellanox.co.il>
To: "Martin K. Petersen" <martin.petersen@oracle.com>,
	axboe@fb.com, nab@daterainc.com, linux-scsi@vger.kernel.org
Subject: Re: [PATCH 07/14] block: Add prefix to block integrity profile flags
Date: Thu, 03 Jul 2014 12:42:16 +0300	[thread overview]
Message-ID: <53B52578.7010605@dev.mellanox.co.il> (raw)
In-Reply-To: <1401334128-15499-8-git-send-email-martin.petersen@oracle.com>

On 5/29/2014 6:28 AM, Martin K. Petersen wrote:
> 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>
> ---
>   block/bio-integrity.c  |  4 ++--
>   block/blk-integrity.c  | 43 ++++++++++++++++++++++---------------------
>   include/linux/blkdev.h |  6 ++++--
>   3 files changed, 28 insertions(+), 25 deletions(-)
>
> diff --git a/block/bio-integrity.c b/block/bio-integrity.c
> index e711b9c71767..c91181e3d18d 100644
> --- a/block/bio-integrity.c
> +++ b/block/bio-integrity.c
> @@ -179,11 +179,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;
> diff --git a/block/blk-integrity.c b/block/blk-integrity.c
> index 3760d0aeed92..95f451a3c581 100644
> --- a/block/blk-integrity.c
> +++ b/block/blk-integrity.c
> @@ -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;
>   
> diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
> index e4adbc687d0b..bb44630d27f8 100644
> --- a/include/linux/blkdev.h
> +++ b/include/linux/blkdev.h
> @@ -1428,8 +1428,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;

Reviewed-by: Sagi Grimberg <sagig@mellanox.com>


  parent reply	other threads:[~2014-07-03  9:42 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-29  3:28 Data integrity update Martin K. Petersen
2014-05-29  3:28 ` [PATCH 01/14] block: Get rid of bdev_integrity_enabled() Martin K. Petersen
2014-06-11 16:31   ` Christoph Hellwig
2014-07-03  9:18     ` Sagi Grimberg
2014-05-29  3:28 ` [PATCH 02/14] block: Replace bi_integrity with bi_special Martin K. Petersen
2014-06-11 16:32   ` Christoph Hellwig
2014-06-12  0:18     ` Martin K. Petersen
2014-07-03  9:19       ` Sagi Grimberg
2014-05-29  3:28 ` [PATCH 03/14] block: Deprecate integrity tagging functions Martin K. Petersen
2014-06-11 16:33   ` Christoph Hellwig
2014-06-12  0:18     ` Martin K. Petersen
2014-05-29  3:28 ` [PATCH 04/14] block: Remove bip_buf Martin K. Petersen
2014-06-11 16:35   ` Christoph Hellwig
2014-07-03  9:21     ` Sagi Grimberg
2014-05-29  3:28 ` [PATCH 05/14] block: Deprecate the use of the term sector in the context of block integrity Martin K. Petersen
2014-06-11 16:45   ` Christoph Hellwig
2014-06-12  0:26     ` Martin K. Petersen
2014-07-03  9:35   ` Sagi Grimberg
2014-07-03 10:19     ` Sagi Grimberg
2014-05-29  3:28 ` [PATCH 06/14] block: Clean up the code used to generate and verify integrity metadata Martin K. Petersen
2014-07-03  9:40   ` Sagi Grimberg
2014-05-29  3:28 ` [PATCH 07/14] block: Add prefix to block integrity profile flags Martin K. Petersen
2014-06-11 16:46   ` Christoph Hellwig
2014-07-03  9:42   ` Sagi Grimberg [this message]
2014-05-29  3:28 ` [PATCH 08/14] block: Add a disk flag to block integrity profile Martin K. Petersen
2014-06-11 16:48   ` Christoph Hellwig
2014-06-12  1:30     ` Martin K. Petersen
2014-06-25 10:24       ` Christoph Hellwig
2014-06-25 11:49         ` Martin K. Petersen
2014-07-03  9:58           ` Sagi Grimberg
2014-05-29  3:28 ` [PATCH 09/14] block: Relocate integrity flags Martin K. Petersen
2014-06-11 16:51   ` Christoph Hellwig
2014-06-12  1:51     ` Martin K. Petersen
2014-07-03 10:03   ` Sagi Grimberg
2014-05-29  3:28 ` [PATCH 10/14] block: Integrity checksum flag Martin K. Petersen
2014-06-11 16:52   ` Christoph Hellwig
2014-06-12  2:03     ` Martin K. Petersen
2014-05-29  3:28 ` [PATCH 11/14] block: Don't merge requests if integrity flags differ Martin K. Petersen
2014-06-11 16:53   ` Christoph Hellwig
2014-07-03 10:06   ` Sagi Grimberg
2014-05-29  3:28 ` [PATCH 12/14] block: Add specific data integrity errors Martin K. Petersen
2014-06-11 16:54   ` Christoph Hellwig
2014-06-12  2:16     ` Martin K. Petersen
2014-06-12  2:16       ` Martin K. Petersen
2014-05-29  3:28 ` [PATCH 13/14] lib: Add T10 Protection Information functions Martin K. Petersen
2014-06-11 16:56   ` Christoph Hellwig
2014-06-12  2:23     ` Martin K. Petersen
2014-05-29  3:28 ` [PATCH 14/14] sd: Honor block layer integrity handling flags Martin K. Petersen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=53B52578.7010605@dev.mellanox.co.il \
    --to=sagig@dev.mellanox.co.il \
    --cc=axboe@fb.com \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    --cc=nab@daterainc.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.