Re: [PATCH net-next v3] net/core: Allow live renaming when an interface is up
From: Ido Schimmel
Date: Tue Nov 08 2022 - 06:02:57 EST
On Mon, Nov 07, 2022 at 09:42:42AM -0800, Andy Ren wrote:
> Allow a network interface to be renamed when the interface
> is up.
>
> As described in the netconsole documentation [1], when netconsole is
> used as a built-in, it will bring up the specified interface as soon as
> possible. As a result, user space will not be able to rename the
> interface since the kernel disallows renaming of interfaces that are
> administratively up unless the 'IFF_LIVE_RENAME_OK' private flag was set
> by the kernel.
>
> The original solution [2] to this problem was to add a new parameter to
> the netconsole configuration parameters that allows renaming of
> the interface used by netconsole while it is administratively up.
> However, during the discussion that followed, it became apparent that we
> have no reason to keep the current restriction and instead we should
> allow user space to rename interfaces regardless of their administrative
> state:
>
> 1. The restriction was put in place over 20 years ago when renaming was
> only possible via IOCTL and before rtnetlink started notifying user
> space about such changes like it does today.
>
> 2. The 'IFF_LIVE_RENAME_OK' flag was added over 3 years ago in version
> 5.2 and no regressions were reported.
>
> 3. In-kernel listeners to 'NETDEV_CHANGENAME' do not seem to care about
> the administrative state of interface.
>
> Therefore, allow user space to rename running interfaces by removing the
> restriction and the associated 'IFF_LIVE_RENAME_OK' flag. Help in
> possible triage by emitting a message to the kernel log that an
> interface was renamed while UP.
>
> [1] https://www.kernel.org/doc/Documentation/networking/netconsole.rst
> [2] https://lore.kernel.org/netdev/20221102002420.2613004-1-andy.ren@xxxxxxxxxxxxx/
>
> Signed-off-by: Andy Ren <andy.ren@xxxxxxxxxxxxx>
Reviewed-by: Ido Schimmel <idosch@xxxxxxxxxx>