Message ID | 20231109021308.1859881-1-nichen@iscas.ac.cn (mailing list archive) |
---|---|
State | Changes Requested |
Delegated to: | Herbert Xu |
Headers | show |
Series | crypto: hisilicon - Add check for pci_find_ext_capability | expand |
On 2023/11/9 10:13, Chen Ni wrote: > Add check for pci_find_ext_capability() and return the error if it > fails in order to transfer the error. > > Fixes: 6c6dd5802c2d ("crypto: hisilicon/qm - add controller reset interface") > Signed-off-by: Chen Ni <nichen@iscas.ac.cn> > --- > drivers/crypto/hisilicon/qm.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/drivers/crypto/hisilicon/qm.c b/drivers/crypto/hisilicon/qm.c > index 18599f3634c3..adbab1286d4a 100644 > --- a/drivers/crypto/hisilicon/qm.c > +++ b/drivers/crypto/hisilicon/qm.c > @@ -3967,6 +3967,9 @@ static int qm_set_vf_mse(struct hisi_qm *qm, bool set) > int i; > > pos = pci_find_ext_capability(pdev, PCI_EXT_CAP_ID_SRIOV); > + if (!pos) > + return -ENODEV; > + Thanks for your patch. The function qm_set_vf_mse() is called only after SRIOV is enabled, so function pci_find_ext_capability() does not return 0. This check makes no sense. Thanks, Weili > pci_read_config_word(pdev, pos + PCI_SRIOV_CTRL, &sriov_ctrl); > if (set) > sriov_ctrl |= PCI_SRIOV_CTRL_MSE; >
On Fri, Nov 17, 2023 at 10:07:00AM +0800, Weili Qian wrote: > > Thanks for your patch. The function qm_set_vf_mse() is called only after SRIOV > is enabled, so function pci_find_ext_capability() does not return 0. This check > makes no sense. Perhaps we could add a comment instead? Thanks,
On 2023/11/17 18:36, Herbert Xu wrote: > On Fri, Nov 17, 2023 at 10:07:00AM +0800, Weili Qian wrote: >> >> Thanks for your patch. The function qm_set_vf_mse() is called only after SRIOV >> is enabled, so function pci_find_ext_capability() does not return 0. This check >> makes no sense. > > Perhaps we could add a comment instead? > > Thanks, > Okay, I will add a comment for this. Thanks, Weili
diff --git a/drivers/crypto/hisilicon/qm.c b/drivers/crypto/hisilicon/qm.c index 18599f3634c3..adbab1286d4a 100644 --- a/drivers/crypto/hisilicon/qm.c +++ b/drivers/crypto/hisilicon/qm.c @@ -3967,6 +3967,9 @@ static int qm_set_vf_mse(struct hisi_qm *qm, bool set) int i; pos = pci_find_ext_capability(pdev, PCI_EXT_CAP_ID_SRIOV); + if (!pos) + return -ENODEV; + pci_read_config_word(pdev, pos + PCI_SRIOV_CTRL, &sriov_ctrl); if (set) sriov_ctrl |= PCI_SRIOV_CTRL_MSE;
Add check for pci_find_ext_capability() and return the error if it fails in order to transfer the error. Fixes: 6c6dd5802c2d ("crypto: hisilicon/qm - add controller reset interface") Signed-off-by: Chen Ni <nichen@iscas.ac.cn> --- drivers/crypto/hisilicon/qm.c | 3 +++ 1 file changed, 3 insertions(+)