| a8e62ea8 | 16-May-2019 |
Hans Petter Selasky <[email protected]> |
MFC r347323: Fix race between driver unload and dumping firmware in mlx5core.
Present code uses lock-less accesses to the dump data to prevent top level ioctls from blocking bottom-level call to dum
MFC r347323: Fix race between driver unload and dumping firmware in mlx5core.
Present code uses lock-less accesses to the dump data to prevent top level ioctls from blocking bottom-level call to dump. Unfortunately, this depends on the type stability of the dump data structure, which makes it non-functional during driver teardown.
Switch to the mutex locking scheme where top levels use the mutex in the bound regions, while copyouts and drain for completion utilize condvars. The mutex lifetime is guaranteed to be strictly larger than the time interval where driver can initiate dump, and most of the control fields of the old struct mlx5_dump_data are directly embedded into struct mlx5_core_dev.
Submitted by: kib@ Sponsored by: Mellanox Technologies
show more ...
|
| 277b84d2 | 16-May-2019 |
Hans Petter Selasky <[email protected]> |
MFC r347272: Query and cache PCAM, MCAM registers on initialization in mlx5core.
On load_one, we now cache our capabilities registers internally, similar to QUERY_HCA_CAP. Capabilities can later be
MFC r347272: Query and cache PCAM, MCAM registers on initialization in mlx5core.
On load_one, we now cache our capabilities registers internally, similar to QUERY_HCA_CAP. Capabilities can later be queried using macros introduced in this patch.
Linux commit: 71862561f3a62015a11de16d1c306481e8415c08
Submitted by: slavash@ Sponsored by: Mellanox Technologies
show more ...
|