lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ