Displaying 8 results from an estimated 8 matches for "mlx5_vdpa_dev_del".
2023 Jul 27
1
[PATCH] vdpa/mlx5: Fix crash on shutdown for when no ndev exists
...t; > ?
> > > -???????free_irqs(ndev);
> > > +???????if (ndev)
> > > +???????????????free_irqs(ndev);
> > > ?}
> > > ?
> >
> > something I don't get:
> > irqs are allocated in mlx5_vdpa_dev_add
> > why are they not freed in mlx5_vdpa_dev_del?
> >
> That is a good point. I will try to find out. I also don't get why free_irq is
> called in the vdpa dev .free op instead of mlx5_vdpa_dev_del. Maybe I can change
> that in a different refactoring.
as it is I have no idea whether e.g. ndev can change
between these two cal...
2023 Jul 31
1
[PATCH] vdpa/mlx5: Fix crash on shutdown for when no ndev exists
...qs(ndev);
> > > > +???????if (ndev)
> > > > +???????????????free_irqs(ndev);
> > > > ?}
> > > > ?
> > >
> > > something I don't get:
> > > irqs are allocated in mlx5_vdpa_dev_add
> > > why are they not freed in mlx5_vdpa_dev_del?
> > >
> > That is a good point. I will try to find out. I also don't get why free_irq
> > is
> > called in the vdpa dev .free op instead of mlx5_vdpa_dev_del. Maybe I can
> > change
> > that in a different refactoring.
>
> as it is I have no idea...
2023 Jul 31
1
[PATCH] vdpa/mlx5: Fix crash on shutdown for when no ndev exists
...???if (ndev)
> > > > > +???????????????free_irqs(ndev);
> > > > > ?}
> > > > > ?
> > > >
> > > > something I don't get:
> > > > irqs are allocated in mlx5_vdpa_dev_add
> > > > why are they not freed in mlx5_vdpa_dev_del?
> > > >
> > > That is a good point. I will try to find out. I also don't get why free_irq
> > > is
> > > called in the vdpa dev .free op instead of mlx5_vdpa_dev_del. Maybe I can
> > > change
> > > that in a different refactoring.
>...
2023 Aug 01
1
[PATCH] vdpa/mlx5: Fix crash on shutdown for when no ndev exists
...> > + free_irqs(ndev);
> > > > > > }
> > > > > >
> > > > >
> > > > > something I don't get:
> > > > > irqs are allocated in mlx5_vdpa_dev_add
> > > > > why are they not freed in mlx5_vdpa_dev_del?
> > > > >
> > > > That is a good point. I will try to find out. I also don't get why free_irq
> > > > is
> > > > called in the vdpa dev .free op instead of mlx5_vdpa_dev_del. Maybe I can
> > > > change
> > > > that in a...
2023 Aug 01
1
[PATCH] vdpa/mlx5: Fix crash on shutdown for when no ndev exists
...irqs(ndev);
> > > > > > > ?}
> > > > > > >
> > > > > >
> > > > > > something I don't get:
> > > > > > irqs are allocated in mlx5_vdpa_dev_add
> > > > > > why are they not freed in mlx5_vdpa_dev_del?
> > > > > >
> > > > > That is a good point. I will try to find out. I also don't get why
> > > > > free_irq
> > > > > is
> > > > > called in the vdpa dev .free op instead of mlx5_vdpa_dev_del. Maybe I
> > >...
2023 Mar 17
0
[PATCH] vdpa/mlx5: Remove debugfs file after device unregister
...2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/vdpa/mlx5/net/mlx5_vnet.c b/drivers/vdpa/mlx5/net/mlx5_vnet.c
> index 3858ba1e8975..3f6149f2ffd4 100644
> --- a/drivers/vdpa/mlx5/net/mlx5_vnet.c
> +++ b/drivers/vdpa/mlx5/net/mlx5_vnet.c
> @@ -3322,8 +3322,6 @@ static void mlx5_vdpa_dev_del(struct vdpa_mgmt_dev *v_mdev, struct vdpa_device *
> struct mlx5_vdpa_net *ndev = to_mlx5_vdpa_ndev(mvdev);
> struct workqueue_struct *wq;
>
> - mlx5_vdpa_remove_debugfs(ndev->debugfs);
> - ndev->debugfs = NULL;
> if (ndev->nb_registere...
2023 Jul 26
1
[PATCH] vdpa/mlx5: Fix crash on shutdown for when no ndev exists
The ndev was accessed on shutdown without a check if it actually exists.
This triggered the crash pasted below. This patch simply adds a check
before using ndev.
BUG: kernel NULL pointer dereference, address: 0000000000000300
#PF: supervisor read access in kernel mode
#PF: error_code(0x0000) - not-present page
PGD 0 P4D 0
Oops: 0000 [#1] SMP
CPU: 0 PID: 1 Comm: systemd-shutdow Not tainted
2023 Apr 03
0
[Patch v3] vdpa/mlx5: Avoid losing link state updates
...v->nb);
> >> - ndev->nb_registered = true;
> >> mvdev->vdev.mdev = &mgtdev->mgtdev;
> >> err = _vdpa_register_device(&mvdev->vdev, max_vqs + 1);
> >> if (err)
> >> @@ -3318,10 +3345,7 @@ static void mlx5_vdpa_dev_del(struct vdpa_mgmt_dev *v_mdev, struct vdpa_device *
> >>
> >> mlx5_vdpa_remove_debugfs(ndev->debugfs);
> >> ndev->debugfs = NULL;
> >> - if (ndev->nb_registered) {
> >> - ndev->nb_registered = false;
>...