Message ID | 1451894138-3482-1-git-send-email-baijiaju1990@163.com (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | Kalle Valo |
Headers | show |
On Mon, Jan 4, 2016 at 8:55 AM, Jia-Ju Bai <baijiaju1990@163.com> wrote: > The driver calls pci_set_mwi to enable memory-write-invalidate when it > is initialized, but does not call pci_clear_mwi when it is removed. Many > other drivers calls pci_clear_mwi when pci_set_mwi is called, such as > r8169, 8139cp and e1000. > > This patch adds pci_clear_mwi in error handling and removal procedure, > which can fix the problem. > > Signed-off-by: Jia-Ju Bai <baijiaju1990@163.com> Looks good to me. Does this fix any actual issue? If yes it might we worth to mention it in the commit message. Helmut > --- > drivers/net/wireless/rt2x00/rt2x00pci.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/net/wireless/rt2x00/rt2x00pci.c b/drivers/net/wireless/rt2x00/rt2x00pci.c > index d93db4b..eb6dbcd 100644 > --- a/drivers/net/wireless/rt2x00/rt2x00pci.c > +++ b/drivers/net/wireless/rt2x00/rt2x00pci.c > @@ -149,6 +149,7 @@ exit_free_device: > ieee80211_free_hw(hw); > > exit_release_regions: > + pci_clear_mwi(pci_dev); > pci_release_regions(pci_dev); > > exit_disable_device: > @@ -173,6 +174,7 @@ void rt2x00pci_remove(struct pci_dev *pci_dev) > /* > * Free the PCI device data. > */ > + pci_clear_mwi(pci_dev); > pci_disable_device(pci_dev); > pci_release_regions(pci_dev); > } > -- > 1.7.9.5 > > -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 01/05/2016 12:50 AM, Helmut Schaa wrote: > On Mon, Jan 4, 2016 at 8:55 AM, Jia-Ju Bai<baijiaju1990@163.com> wrote: >> The driver calls pci_set_mwi to enable memory-write-invalidate when it >> is initialized, but does not call pci_clear_mwi when it is removed. Many >> other drivers calls pci_clear_mwi when pci_set_mwi is called, such as >> r8169, 8139cp and e1000. >> >> This patch adds pci_clear_mwi in error handling and removal procedure, >> which can fix the problem. >> >> Signed-off-by: Jia-Ju Bai<baijiaju1990@163.com> > Looks good to me. > Does this fix any actual issue? > If yes it might we worth to mention it in the commit message. > Helmut > Lacking pci_clear_mwi may cause a resource-release omission, but this omission may not cause obvious issues. For reliability, it is better to add pci_clear_mwi in the driver. Many other drivers do so, such as r8169, 8139cp and e1000. Jia-Ju Bai -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, Jan 5, 2016 at 2:27 AM, Jia-Ju Bai <baijiaju1990@163.com> wrote: > On 01/05/2016 12:50 AM, Helmut Schaa wrote: >> >> On Mon, Jan 4, 2016 at 8:55 AM, Jia-Ju Bai<baijiaju1990@163.com> wrote: >>> >>> The driver calls pci_set_mwi to enable memory-write-invalidate when it >>> is initialized, but does not call pci_clear_mwi when it is removed. Many >>> other drivers calls pci_clear_mwi when pci_set_mwi is called, such as >>> r8169, 8139cp and e1000. >>> >>> This patch adds pci_clear_mwi in error handling and removal procedure, >>> which can fix the problem. >>> >>> Signed-off-by: Jia-Ju Bai<baijiaju1990@163.com> >> >> Looks good to me. >> Does this fix any actual issue? >> If yes it might we worth to mention it in the commit message. >> Helmut >> > > Lacking pci_clear_mwi may cause a resource-release omission, > but this omission may not cause obvious issues. > For reliability, it is better to add pci_clear_mwi in the driver. > Many other drivers do so, such as r8169, 8139cp and e1000. Thanks for clarification, fine with me then. Acked-by: Helmut Schaa <helmut.schaa@googlemail.com> -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
> The driver calls pci_set_mwi to enable memory-write-invalidate when it > is initialized, but does not call pci_clear_mwi when it is removed. Many > other drivers calls pci_clear_mwi when pci_set_mwi is called, such as > r8169, 8139cp and e1000. > > This patch adds pci_clear_mwi in error handling and removal procedure, > which can fix the problem. > > Signed-off-by: Jia-Ju Bai <baijiaju1990@163.com> > Acked-by: Helmut Schaa <helmut.schaa@googlemail.com> Thanks, applied to wireless-drivers-next.git. Kalle Valo -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/net/wireless/rt2x00/rt2x00pci.c b/drivers/net/wireless/rt2x00/rt2x00pci.c index d93db4b..eb6dbcd 100644 --- a/drivers/net/wireless/rt2x00/rt2x00pci.c +++ b/drivers/net/wireless/rt2x00/rt2x00pci.c @@ -149,6 +149,7 @@ exit_free_device: ieee80211_free_hw(hw); exit_release_regions: + pci_clear_mwi(pci_dev); pci_release_regions(pci_dev); exit_disable_device: @@ -173,6 +174,7 @@ void rt2x00pci_remove(struct pci_dev *pci_dev) /* * Free the PCI device data. */ + pci_clear_mwi(pci_dev); pci_disable_device(pci_dev); pci_release_regions(pci_dev); }
The driver calls pci_set_mwi to enable memory-write-invalidate when it is initialized, but does not call pci_clear_mwi when it is removed. Many other drivers calls pci_clear_mwi when pci_set_mwi is called, such as r8169, 8139cp and e1000. This patch adds pci_clear_mwi in error handling and removal procedure, which can fix the problem. Signed-off-by: Jia-Ju Bai <baijiaju1990@163.com> --- drivers/net/wireless/rt2x00/rt2x00pci.c | 2 ++ 1 file changed, 2 insertions(+)