Commit 55a7cb0
vdpa/mlx5: Keep notifiers during suspend but ignore
Unregistering notifiers is a costly operation. Instead of removing
the notifiers during device suspend and adding them back at resume,
simply ignore the call when the device is suspended.
At resume time call queue_link_work() to make sure that the device state
is propagated in case there were changes.
For 1 vDPA device x 32 VQs (16 VQPs) attached to a large VM (256 GB RAM,
32 CPUs x 2 threads per core), the device suspend time is reduced from
~13 ms to ~2.5 ms.
Signed-off-by: Dragos Tatulea <dtatulea@nvidia.com>
Reviewed-by: Tariq Toukan <tariqt@nvidia.com>
Acked-by: Eugenio Pérez <eperezma@redhat.com>
Message-Id: <20240816090159.1967650-9-dtatulea@nvidia.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Tested-by: Lei Yang <leiyang@redhat.com>1 parent 5eb8c7e commit 55a7cb0
1 file changed
Lines changed: 4 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2850 | 2850 | | |
2851 | 2851 | | |
2852 | 2852 | | |
| 2853 | + | |
| 2854 | + | |
| 2855 | + | |
2853 | 2856 | | |
2854 | 2857 | | |
2855 | 2858 | | |
| |||
3595 | 3598 | | |
3596 | 3599 | | |
3597 | 3600 | | |
3598 | | - | |
3599 | 3601 | | |
3600 | 3602 | | |
3601 | 3603 | | |
| |||
3617 | 3619 | | |
3618 | 3620 | | |
3619 | 3621 | | |
3620 | | - | |
| 3622 | + | |
3621 | 3623 | | |
3622 | 3624 | | |
3623 | 3625 | | |
| |||
0 commit comments