mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-15 21:56:40 +07:00
net: hns3: remove override_pci_need_reset
We add override_pci_need_reset to prevent redundant and unwanted PF
resets if a RAS error occurs in commit 69b51bbb03
("net: hns3: fix
to stop multiple HNS reset due to the AER changes").
Now in HNS3 driver, we use hw_err_reset_req to record reset level that
we need to recover from a RAS error. This variable cans solve above
issue as override_pci_need_reset, so this patch removes
override_pci_need_reset.
Signed-off-by: Weihang Li <liweihang@hisilicon.com>
Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
b4b9bd92fe
commit
9d5e67d1c1
@ -213,7 +213,6 @@ struct hnae3_ae_dev {
|
||||
const struct hnae3_ae_ops *ops;
|
||||
struct list_head node;
|
||||
u32 flag;
|
||||
u8 override_pci_need_reset; /* fix to stop multiple reset happening */
|
||||
unsigned long hw_err_reset_req;
|
||||
enum hnae3_reset_type reset_type;
|
||||
void *priv;
|
||||
|
@ -1950,7 +1950,7 @@ static pci_ers_result_t hns3_slot_reset(struct pci_dev *pdev)
|
||||
ops = ae_dev->ops;
|
||||
/* request the reset */
|
||||
if (ops->reset_event) {
|
||||
if (!ae_dev->override_pci_need_reset) {
|
||||
if (ae_dev->hw_err_reset_req) {
|
||||
reset_type = ops->get_reset_level(ae_dev,
|
||||
&ae_dev->hw_err_reset_req);
|
||||
ops->set_default_reset_request(ae_dev, reset_type);
|
||||
|
@ -1627,13 +1627,10 @@ pci_ers_result_t hclge_handle_hw_ras_error(struct hnae3_ae_dev *ae_dev)
|
||||
if (test_bit(HCLGE_STATE_RST_HANDLING, &hdev->state))
|
||||
goto out;
|
||||
|
||||
if (ae_dev->hw_err_reset_req) {
|
||||
ae_dev->override_pci_need_reset = 0;
|
||||
if (ae_dev->hw_err_reset_req)
|
||||
return PCI_ERS_RESULT_NEED_RESET;
|
||||
}
|
||||
|
||||
out:
|
||||
ae_dev->override_pci_need_reset = 1;
|
||||
return PCI_ERS_RESULT_RECOVERED;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user