All of lore.kernel.org
 help / color / mirror / Atom feed
From: "J. Bruce Fields" <bfields@fieldses.org>
To: Benjamin Coddington <bcodding@redhat.com>
Cc: Jeff Layton <jlayton@kernel.org>,
	Bart Van Assche <bart.vanassche@sandisk.com>,
	Christoph Hellwig <hch@lst.de>,
	linux-nfs@vger.kernel.org
Subject: Re: [PATCH] nfsd: don't advertise a SCSI layout for an unsupported request_queue
Date: Tue, 19 Jun 2018 09:55:53 -0400	[thread overview]
Message-ID: <20180619135553.GA1985@fieldses.org> (raw)
In-Reply-To: <be316794f70ba6e4b2e0314cd6fca9ad2447cdc2.1529398437.git.bcodding@redhat.com>

Thanks, applying.--b.

On Tue, Jun 19, 2018 at 04:57:24AM -0400, Benjamin Coddington wrote:
> Commit 30181faae37f ("nfsd: Check queue type before submitting a SCSI
> request") did the work of ensuring that we don't send SCSI requests to a
> request queue that won't support them, but that check is in the
> GETDEVICEINFO path.  Let's not set the SCSI layout in fs_layout_type in the
> first place, and then we'll have less clients sending GETDEVICEINFO for
> non-SCSI request queues and less unnecessary WARN_ONs.
> 
> While we're in here, remove some outdated comments that refer to
> "overwriting" layout seletion because commit 8a4c3926889e ("nfsd: allow
> nfsd to advertise multiple layout types") changed things to no longer
> overwrite the layout type.
> 
> Signed-off-by: Benjamin Coddington <bcodding@redhat.com>
> ---
>  fs/nfsd/nfs4layouts.c | 11 ++---------
>  1 file changed, 2 insertions(+), 9 deletions(-)
> 
> diff --git a/fs/nfsd/nfs4layouts.c b/fs/nfsd/nfs4layouts.c
> index 7d888369f85a..0ba7d3150213 100644
> --- a/fs/nfsd/nfs4layouts.c
> +++ b/fs/nfsd/nfs4layouts.c
> @@ -133,27 +133,20 @@ void nfsd4_setup_layout_type(struct svc_export *exp)
>  	if (!(exp->ex_flags & NFSEXP_PNFS))
>  		return;
>  
> -	/*
> -	 * If flex file is configured, use it by default. Otherwise
> -	 * check if the file system supports exporting a block-like layout.
> -	 * If the block device supports reservations prefer the SCSI layout,
> -	 * otherwise advertise the block layout.
> -	 */
>  #ifdef CONFIG_NFSD_FLEXFILELAYOUT
>  	exp->ex_layout_types |= 1 << LAYOUT_FLEX_FILES;
>  #endif
>  #ifdef CONFIG_NFSD_BLOCKLAYOUT
> -	/* overwrite flex file layout selection if needed */
>  	if (sb->s_export_op->get_uuid &&
>  	    sb->s_export_op->map_blocks &&
>  	    sb->s_export_op->commit_blocks)
>  		exp->ex_layout_types |= 1 << LAYOUT_BLOCK_VOLUME;
>  #endif
>  #ifdef CONFIG_NFSD_SCSILAYOUT
> -	/* overwrite block layout selection if needed */
>  	if (sb->s_export_op->map_blocks &&
>  	    sb->s_export_op->commit_blocks &&
> -	    sb->s_bdev && sb->s_bdev->bd_disk->fops->pr_ops)
> +	    sb->s_bdev && sb->s_bdev->bd_disk->fops->pr_ops &&
> +		blk_queue_scsi_passthrough(sb->s_bdev->bd_disk->queue))
>  		exp->ex_layout_types |= 1 << LAYOUT_SCSI;
>  #endif
>  }
> -- 
> 2.14.3

  reply	other threads:[~2018-06-19 13:55 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-19  8:57 [PATCH] nfsd: don't advertise a SCSI layout for an unsupported request_queue Benjamin Coddington
2018-06-19 13:55 ` J. Bruce Fields [this message]
2018-06-19 14:11 ` Christoph Hellwig

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=20180619135553.GA1985@fieldses.org \
    --to=bfields@fieldses.org \
    --cc=bart.vanassche@sandisk.com \
    --cc=bcodding@redhat.com \
    --cc=hch@lst.de \
    --cc=jlayton@kernel.org \
    --cc=linux-nfs@vger.kernel.org \
    /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.