On Mon, 16 Nov 2020 11:41:21 +0100 Martin Schiller wrote:
> Call netdev notifiers before and after changing the device type.
> 
> Signed-off-by: Martin Schiller <m...@dev.tdt.de>
> ---
> 
> Change from v2:
> use subject_prefix 'net-next' to fix 'fixes_present' issue
> 
> Change from v1:
> fix 'subject_prefix' and 'checkpatch' warnings
> 
> ---
>  drivers/net/tun.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/net/tun.c b/drivers/net/tun.c
> index 3d45d56172cb..2d9a00f41023 100644
> --- a/drivers/net/tun.c
> +++ b/drivers/net/tun.c
> @@ -3071,9 +3071,13 @@ static long __tun_chr_ioctl(struct file *file, 
> unsigned int cmd,
>                                  "Linktype set failed because interface is 
> up\n");
>                       ret = -EBUSY;
>               } else {
> +                     call_netdevice_notifiers(NETDEV_PRE_TYPE_CHANGE,
> +                                              tun->dev);

This call may return an error (which has to be unpacked with
notifier_to_errno()).

>                       tun->dev->type = (int) arg;
>                       netif_info(tun, drv, tun->dev, "linktype set to %d\n",
>                                  tun->dev->type);
> +                     call_netdevice_notifiers(NETDEV_POST_TYPE_CHANGE,
> +                                              tun->dev);
>                       ret = 0;
>               }
>               break;

Reply via email to