From: Benny Halevy <bhalevy@panasas.com>
To: Ricardo Labiaga <Ricardo.Labiaga@netapp.com>
Cc: linux-nfs@vger.kernel.org
Subject: Re: [PATCH] SQUASHME: pnfs-submit: Use generic layout name to load layout modules
Date: Thu, 05 Aug 2010 18:19:17 +0300 [thread overview]
Message-ID: <4C5AD675.4070101@panasas.com> (raw)
In-Reply-To: <1280193018-1628-1-git-send-email-Ricardo.Labiaga@netapp.com>
Merged for pnfs-all-2.6.35-2010-08-05. Thanks!
Benny
On Jul. 27, 2010, 4:10 +0300, Ricardo Labiaga <Ricardo.Labiaga@netapp.com> wrote:
> Future NFSv4.x work will add several new layout types. Use
> nfs-layouttype4-<number> in request_module() to allow current and future
> layout types to be loaded without requiring changes to the module loading
> code.
>
> The kernel issues request_module(nfs4-layouttype4-<number>) which is
> then mapped to the actual module name in the modprobe aliases file.
> Something like:
> alias nfs-layouttype4-1 nfs_layout_nfsv41_files
> alias nfs-layouttype4-2 nfs_layout_osd2_objects
>
> It can be turned off by commenting out the alias, or specifying it off.
> For example:
> alias nfs-layouttype4-3 off
>
> The module can still be loaded by hand using modprobe.
>
> Signed-off-by: Ricardo Labiaga <Ricardo.Labiaga@netapp.com>
> ---
> fs/nfs/Makefile | 4 ++--
> fs/nfs/pnfs.c | 10 +---------
> fs/nfs/pnfs.h | 2 +-
> 3 files changed, 4 insertions(+), 12 deletions(-)
>
> diff --git a/fs/nfs/Makefile b/fs/nfs/Makefile
> index 6c218e7..4776ff9 100644
> --- a/fs/nfs/Makefile
> +++ b/fs/nfs/Makefile
> @@ -19,5 +19,5 @@ nfs-$(CONFIG_NFS_V4_1) += pnfs.o
> nfs-$(CONFIG_SYSCTL) += sysctl.o
> nfs-$(CONFIG_NFS_FSCACHE) += fscache.o fscache-index.o
>
> -obj-$(CONFIG_PNFS_FILE_LAYOUT) += nfslayoutdriver.o
> -nfslayoutdriver-y := nfs4filelayout.o nfs4filelayoutdev.o
> +obj-$(CONFIG_PNFS_FILE_LAYOUT) += nfs_layout_nfsv41_files.o
> +nfs_layout_nfsv41_files-y := nfs4filelayout.o nfs4filelayoutdev.o
> diff --git a/fs/nfs/pnfs.c b/fs/nfs/pnfs.c
> index 3494d5e..b2fb693 100644
> --- a/fs/nfs/pnfs.c
> +++ b/fs/nfs/pnfs.c
> @@ -210,14 +210,7 @@ set_pnfs_layoutdriver(struct nfs_server *server, u32 id)
> return;
>
> if (!find_pnfs(id, &mod)) {
> - switch (id) {
> - case LAYOUT_NFSV4_1_FILES:
> - request_module(LAYOUT_NFSV4_1_FILES_MODULE);
> - break;
> - default:
> - goto out_not_found;
> - };
> -
> + request_module("%s-%u", LAYOUT_NFSV4_1_MODULE_PREFIX, id);
> find_pnfs(id, &mod);
> }
>
> @@ -233,7 +226,6 @@ set_pnfs_layoutdriver(struct nfs_server *server, u32 id)
> return;
> }
>
> -out_not_found:
> dprintk("%s: No pNFS module found for %u. ", __func__, id);
> out_err:
> dprintk("Using NFSv4 I/O\n");
> diff --git a/fs/nfs/pnfs.h b/fs/nfs/pnfs.h
> index 6bc27af..f48ef24 100644
> --- a/fs/nfs/pnfs.h
> +++ b/fs/nfs/pnfs.h
> @@ -73,7 +73,7 @@ void put_layout(struct inode *inode);
> (srv)->pnfs_curr_ld->ld_policy_ops && \
> (srv)->pnfs_curr_ld->ld_policy_ops->opname)
>
> -#define LAYOUT_NFSV4_1_FILES_MODULE "nfslayoutdriver"
> +#define LAYOUT_NFSV4_1_MODULE_PREFIX "nfs-layouttype4"
>
> static inline int lo_fail_bit(u32 iomode)
> {
next prev parent reply other threads:[~2010-08-05 15:19 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-07-27 1:10 [PATCH] SQUASHME: pnfs-submit: Use generic layout name to load layout modules Ricardo Labiaga
2010-08-05 15:19 ` Benny Halevy [this message]
2010-08-05 15:53 ` [PATCH] SQUASHME: pnfs-submit: reduce nesting level in set_pnfs_layoutdriver Benny Halevy
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=4C5AD675.4070101@panasas.com \
--to=bhalevy@panasas.com \
--cc=Ricardo.Labiaga@netapp.com \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).