[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <673d222c-52ee-4b65-9dff-0357ed0726a8@intel.com>
Date: Mon, 27 Nov 2023 14:01:59 +0100
From: Alexander Lobakin <aleksander.lobakin@...el.com>
To: Gan Yi Fang <yi.fang.gan@...el.com>
CC: Looi Hong Aun <hong.aun.looi@...el.com>, Voon Weifeng
<weifeng.voon@...el.com>, Song Yoong Siang <yoong.siang.song@...el.com>, "Lai
Peter Jun Ann" <jun.ann.lai@...el.com>, Russell King <linux@...linux.org.uk>,
Andrew Lunn <andrew@...n.ch>, Heiner Kallweit <hkallweit1@...il.com>, "David
S . Miller" <davem@...emloft.net>, Eric Dumazet <edumazet@...gle.com>, "Jakub
Kicinski" <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
Marek BehĂșn <kabel@...nel.org>, <netdev@...r.kernel.org>,
<linux-kernel@...r.kernel.org>
Subject: Re: [PATCH net 1/1] net: phylink: Add module_exit()
From: Gan Yi Fang <yi.fang.gan@...el.com>
Date: Mon, 27 Nov 2023 18:16:03 +0800
> From: "Gan, Yi Fang" <yi.fang.gan@...el.com>
Please fix your Git vs mail client settings, so that your own patches
won't contain "From:" with your own name.
I'd suggest using "Gan Yi Fang", as that Intel's versions with commas
(,) aren't optimal for mailing lists and development.
>
> In free_module(), if mod->init callback is defined but mod->exit callback
> is not defined, it will assume the module cannot be removed and return
> EBUSY. The module_exit() is missing from current phylink module drive
> causing failure while unloading it.
>
> This patch introduces phylink_exit() for phylink module removal.
>
> Fixes: eca68a3c7d05 ("net: phylink: pass supported host PHY interface modes to phylib for SFP's PHYs")
> Cc: <stable@...r.kernel.org> # 6.1+
> Signed-off-by: Lai Peter Jun Ann <jun.ann.lai@...el.com>
> Signed-off-by: Gan, Yi Fang <yi.fang.gan@...el.com>
> ---
> drivers/net/phy/phylink.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/net/phy/phylink.c b/drivers/net/phy/phylink.c
> index 25c19496a336..7121503c9259 100644
> --- a/drivers/net/phy/phylink.c
> +++ b/drivers/net/phy/phylink.c
> @@ -3724,7 +3724,10 @@ static int __init phylink_init(void)
> return 0;
> }
>
> +static void __exit phylink_exit(void){}
> +
> module_init(phylink_init);
> +module_exit(phylink_exit);
This pattern (empty __exit function + module_exit()) is +/- common in
the kernel. How about making a macro from it, just like it's done with
e.g. module_platform_driver() etc.?
So that you could just add to phylink.c something like:
module_exit_stub(phylink);
>
> MODULE_LICENSE("GPL v2");
> MODULE_DESCRIPTION("phylink models the MAC to optional PHY connection");
Thanks,
Olek
Powered by blists - more mailing lists