Displaying 13 results from an estimated 13 matches for "config_cb".
Did you mean:
config_dcb
2020 Apr 26
1
[PATCH 2/2] vdpa: implement config interrupt in IFCVF
...vdpa/ifcvf/ifcvf_base.c
> index b61b06e..c825d99 100644
> --- a/drivers/vdpa/ifcvf/ifcvf_base.c
> +++ b/drivers/vdpa/ifcvf/ifcvf_base.c
> @@ -185,6 +185,9 @@ void ifcvf_set_status(struct ifcvf_hw *hw, u8 status)
>
> void ifcvf_reset(struct ifcvf_hw *hw)
> {
> + hw->config_cb.callback = NULL;
> + hw->config_cb.private = NULL;
> +
> ifcvf_set_status(hw, 0);
> /* flush set_status, make sure VF is stopped, reset */
> ifcvf_get_status(hw);
> diff --git a/drivers/vdpa/ifcvf/ifcvf_base.h b/drivers/vdpa/ifcvf/ifcvf_base.h
> index e803070..76928...
2020 Apr 26
0
[PATCH V3 2/2] vdpa: implement config interrupt in IFCVF
...vdpa/ifcvf/ifcvf_base.c
> index b61b06e..c825d99 100644
> --- a/drivers/vdpa/ifcvf/ifcvf_base.c
> +++ b/drivers/vdpa/ifcvf/ifcvf_base.c
> @@ -185,6 +185,9 @@ void ifcvf_set_status(struct ifcvf_hw *hw, u8 status)
>
> void ifcvf_reset(struct ifcvf_hw *hw)
> {
> + hw->config_cb.callback = NULL;
> + hw->config_cb.private = NULL;
> +
> ifcvf_set_status(hw, 0);
> /* flush set_status, make sure VF is stopped, reset */
> ifcvf_get_status(hw);
> diff --git a/drivers/vdpa/ifcvf/ifcvf_base.h b/drivers/vdpa/ifcvf/ifcvf_base.h
> index e803070..23ac4...
2023 May 08
1
[PATCH V2 4/5] vDPA/ifcvf: synchronize irqs in the reset routine
...pa/ifcvf/ifcvf_base.c b/drivers/vdpa/ifcvf/ifcvf_base.c
index 79e313c5e10e..1f39290baa38 100644
--- a/drivers/vdpa/ifcvf/ifcvf_base.c
+++ b/drivers/vdpa/ifcvf/ifcvf_base.c
@@ -170,12 +170,9 @@ void ifcvf_set_status(struct ifcvf_hw *hw, u8 status)
void ifcvf_reset(struct ifcvf_hw *hw)
{
- hw->config_cb.callback = NULL;
- hw->config_cb.private = NULL;
-
ifcvf_set_status(hw, 0);
- /* flush set_status, make sure VF is stopped, reset */
- ifcvf_get_status(hw);
+ while (ifcvf_get_status(hw))
+ msleep(1);
}
u64 ifcvf_get_hw_features(struct ifcvf_hw *hw)
@@ -368,20 +365,42 @@ void ifcvf_set_vq...
2023 May 24
2
[PATCH V2 4/5] vDPA/ifcvf: synchronize irqs in the reset routine
...fcvf_base.c
> index 79e313c5e10e..1f39290baa38 100644
> --- a/drivers/vdpa/ifcvf/ifcvf_base.c
> +++ b/drivers/vdpa/ifcvf/ifcvf_base.c
> @@ -170,12 +170,9 @@ void ifcvf_set_status(struct ifcvf_hw *hw, u8 status)
>
> void ifcvf_reset(struct ifcvf_hw *hw)
> {
> - hw->config_cb.callback = NULL;
> - hw->config_cb.private = NULL;
> -
> ifcvf_set_status(hw, 0);
> - /* flush set_status, make sure VF is stopped, reset */
> - ifcvf_get_status(hw);
> + while (ifcvf_get_status(hw))
> + msleep(1);
> }
>
&...
2023 Apr 03
0
[Patch v3] vdpa/mlx5: Avoid losing link state updates
...ndev->config.status |= cpu_to_mlx5vdpa16(mvdev, VIRTIO_NET_S_LINK_UP);
> >> + else
> >> + ndev->config.status &= cpu_to_mlx5vdpa16(mvdev, ~VIRTIO_NET_S_LINK_UP);
> >> +
> >> + if (ndev->nb_registered && ndev->config_cb.callback)
> > It looks to me nb_registered is accessed without synchronization. Or
> > we don't even need to check that if we do:
> >
> > unregister();
> > flush_workqueue();
> >
> > which has been done in unregister_link_notifier().
> >
> >...
2023 Mar 27
0
[PATCH] vdpa/mlx5: Avoid losing link state updates
...(get_link_state(mvdev))
> - ndev->config.status |= cpu_to_mlx5vdpa16(mvdev, VIRTIO_NET_S_LINK_UP);
> - else
> - ndev->config.status &= cpu_to_mlx5vdpa16(mvdev, ~VIRTIO_NET_S_LINK_UP);
> -
> + update_link_state(mvdev);
> if (ndev->nb_registered && ndev->config_cb.callback)
> ndev->config_cb.callback(ndev->config_cb.private);
>
> @@ -3172,6 +3196,7 @@ static int mlx5_vdpa_dev_add(struct vdpa_mgmt_dev *v_mdev, const char *name,
>
> init_mvqs(ndev);
> init_rwsem(&ndev->reslock);
> + spin_lock_init(&ndev->stat...
2023 Jul 07
1
[PATCH virtio 1/4] pds_vdpa: reset to vdpa specified mac
...y vdpa */
>> u8 vdpa_index; /* rsvd for future subdevice use */
>> u8 num_vqs; /* num vqs in use */
>> + u8 mac[ETH_ALEN]; /* mac selected when the device was added */
>> struct vdpa_callback config_cb;
>> struct notifier_block nb;
>> };
>> --
>> 2.17.1
>>
>
2023 Mar 31
7
[PATCH 0/5] vDPA/ifcvf: implement immediate initialization mechanism
Formerly, ifcvf driver has implemented a lazy-initialization mechanism
for the virtqueues and other config space contents,
it would store all configurations that passed down from the userspace,
then load them to the device config space upon DRIVER_OK.
This can not serve live migration, so this series implement an
immediate initialization mechanism, which means rather than the
former store-load
2023 May 08
6
[PATCH V2 0/5] vDPA/ifcvf: implement immediate initialization mechanism
Formerly, ifcvf driver has implemented a lazy-initialization mechanism
for the virtqueues and other config space contents,
it would store all configurations that passed down from the userspace,
then load them to the device config space upon DRIVER_OK.
This can not serve live migration, so this series implement an
immediate initialization mechanism, which means rather than the
former store-load
2020 Jul 23
4
[PATCH 1/2] vdpa: ifcvf: return err when fail to request config irq
We ignore the err of requesting config interrupt, fix this.
Fixes: e7991f376a4d ("ifcvf: implement config interrupt in IFCVF")
Cc: Zhu Lingshan <lingshan.zhu at intel.com>
Signed-off-by: Jason Wang <jasowang at redhat.com>
---
drivers/vdpa/ifcvf/ifcvf_main.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/vdpa/ifcvf/ifcvf_main.c
2020 Jul 23
4
[PATCH 1/2] vdpa: ifcvf: return err when fail to request config irq
We ignore the err of requesting config interrupt, fix this.
Fixes: e7991f376a4d ("ifcvf: implement config interrupt in IFCVF")
Cc: Zhu Lingshan <lingshan.zhu at intel.com>
Signed-off-by: Jason Wang <jasowang at redhat.com>
---
drivers/vdpa/ifcvf/ifcvf_main.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/vdpa/ifcvf/ifcvf_main.c
2023 Jun 30
4
[PATCH virtio 0/4] pds_vdpa: mac, reset, and irq updates
v2 for internal review
- heavily reworked NET_F_MAC patch, matches recent PR-68875
- reordered to put "clean and reset vqs" before "alloc-irq"
to make them slightly simpler patches
- other minor cleanups for simpler patches
These are some fixes for device providing a MAC address, for allocating
irq resources later to support vhost use, and for properly cleaning
vq info
2023 Jun 30
4
[PATCH virtio 0/4] pds_vdpa: mac, reset, and irq updates
v2 for internal review
- heavily reworked NET_F_MAC patch, matches recent PR-68875
- reordered to put "clean and reset vqs" before "alloc-irq"
to make them slightly simpler patches
- other minor cleanups for simpler patches
These are some fixes for device providing a MAC address, for allocating
irq resources later to support vhost use, and for properly cleaning
vq info