]> git.baikalelectronics.ru Git - kernel.git/commit
net: qed: fix NVMe login fails over VFs
authorAlexander Lobakin <alobakin@marvell.com>
Tue, 23 Jun 2020 13:51:32 +0000 (16:51 +0300)
committerDavid S. Miller <davem@davemloft.net>
Tue, 23 Jun 2020 22:01:16 +0000 (15:01 -0700)
commitf216c9a6f6be875b394a4fa694dae74d6c890eb6
treefe7576028a936a542184eb1e7fa397a1deac732f
parent7ea335dbffd99c9005208a81f6a12fc5bf7a5521
net: qed: fix NVMe login fails over VFs

25ms sleep cycles in waiting for PF response are excessive and may lead
to different timeout failures.

Start to wait with short udelays, and in most cases polling will end
here. If the time was not sufficient, switch to msleeps.
usleep_range() may go far beyond 100us depending on platform and tick
configuration, hence atomic udelays for consistency.

Also add explicit DMA barriers since 'done' always comes from a shared
request-response DMA pool, and note that in the comment nearby.

Fixes: e9f82ce07354 ("qed: Introduce VFs")
Signed-off-by: Alexander Lobakin <alobakin@marvell.com>
Signed-off-by: Igor Russkikh <irusskikh@marvell.com>
Signed-off-by: Michal Kalderon <michal.kalderon@marvell.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/qlogic/qed/qed_vf.c