mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-20 05:06:43 +07:00
ibmvnic: skip send_request_unmap for timeout reset
[ Upstream commit 7d3a7b9ea59ddb223aec59b45fa1713c633aaed4 ]
Timeout reset will trigger the VIOS to unmap it automatically,
similarly as FAILVOER and MOBILITY events. If we unmap it
in the linux side, we will see errors like
"30000003: Error 4 in REQUEST_UNMAP_RSP".
So, don't call send_request_unmap for timeout reset.
Fixes: ed651a1087
("ibmvnic: Updated reset handling")
Signed-off-by: Lijun Pan <ljp@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
be613736fd
commit
ad84312158
@ -249,8 +249,13 @@ static void free_long_term_buff(struct ibmvnic_adapter *adapter,
|
||||
if (!ltb->buff)
|
||||
return;
|
||||
|
||||
/* VIOS automatically unmaps the long term buffer at remote
|
||||
* end for the following resets:
|
||||
* FAILOVER, MOBILITY, TIMEOUT.
|
||||
*/
|
||||
if (adapter->reset_reason != VNIC_RESET_FAILOVER &&
|
||||
adapter->reset_reason != VNIC_RESET_MOBILITY)
|
||||
adapter->reset_reason != VNIC_RESET_MOBILITY &&
|
||||
adapter->reset_reason != VNIC_RESET_TIMEOUT)
|
||||
send_request_unmap(adapter, ltb->map_id);
|
||||
dma_free_coherent(dev, ltb->size, ltb->buff, ltb->addr);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user