[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <c2a33fa1-30b0-4f19-808f-3bd0316a4ed8@t-8ch.de>
Date: Mon, 8 Nov 2021 19:50:34 +0100
From: Thomas Weißschuh <linux@...ssschuh.net>
To: Dominique Martinet <asmadeus@...ewreck.org>
Cc: v9fs-developer@...ts.sourceforge.net, netdev@...r.kernel.org,
Eric Van Hensbergen <ericvh@...il.com>,
Latchesar Ionkov <lucho@...kov.net>,
"David S. Miller" <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>,
Stefano Stabellini <stefano@...reto.com>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 4/4] net/p9: load default transports
Hi Dominique,
On 2021-11-03 20:38+0100, Thomas Weißschuh wrote:
> Now that all transports are split into modules it may happen that no
> transports are registered when v9fs_get_default_trans() is called.
> When that is the case try to load more transports from modules.
>
> Signed-off-by: Thomas Weißschuh <linux@...ssschuh.net>
> ---
> net/9p/mod.c | 9 +++++++++
> 1 file changed, 9 insertions(+)
>
> diff --git a/net/9p/mod.c b/net/9p/mod.c
> index 8f1d067b272e..7bb875cd279f 100644
> --- a/net/9p/mod.c
> +++ b/net/9p/mod.c
> @@ -128,6 +128,10 @@ struct p9_trans_module *v9fs_get_trans_by_name(const char *s)
> }
> EXPORT_SYMBOL(v9fs_get_trans_by_name);
>
> +static const char * const v9fs_default_transports[] = {
> + "virtio", "tcp", "fd", "unix", "xen", "rdma",
> +};
> +
> /**
> * v9fs_get_default_trans - get the default transport
> *
> @@ -136,6 +140,7 @@ EXPORT_SYMBOL(v9fs_get_trans_by_name);
> struct p9_trans_module *v9fs_get_default_trans(void)
> {
> struct p9_trans_module *t, *found = NULL;
> + int i;
>
> spin_lock(&v9fs_trans_lock);
>
> @@ -153,6 +158,10 @@ struct p9_trans_module *v9fs_get_default_trans(void)
> }
>
> spin_unlock(&v9fs_trans_lock);
> +
> + for (i = 0; !found && i < ARRAY_SIZE(v9fs_default_transports); i++)
> + found = v9fs_get_trans_by_name(v9fs_default_transports[i]);
> +
> return found;
> }
> EXPORT_SYMBOL(v9fs_get_default_trans);
> --
> 2.33.1
I did not notice that you already had applied "net/9p: autoload transport modules"
to your tree when sending this series.
Please note that in this series I modified patch 1 a bit, from the ony you
applied, to prevent warnings in patch 4.
Concretely I modified the prototypes of `v9fs_get_trans_by_name()` and
`_p9_get_trans_by_name()` to take const parameters.
Feel free to roll those changes into this patch when applying or I can resend
the patch/series.
Thomas
Powered by blists - more mailing lists