Message ID | 1440690671-1029-1-git-send-email-m-karicheri2@ti.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 8/27/15 8:51 AM, Murali Karicheri wrote: > When using accumulator queue for rx side for network driver, following > warning is seen when doing a reboot command from Linux console. This > is because, affinity value is not reset before calling free_irq(). This > patch fixes this. > > Deconfiguring network interfaces... > [ 55.176589] ------------[ cut here ]----------- > [ 55.181232] WARNING: CPU: 0 PID: 2081 at kernel/irq/manage.c:1370 > __free_irq+0x208/0x214 > > Signed-off-by: Murali Karicheri <m-karicheri2@ti.com> > --- Looks good. I will add it my queue. Thanks !! Regards, Santosh
On 08/27/2015 10:51 AM, Murali Karicheri wrote: > When using accumulator queue for rx side for network driver, following > warning is seen when doing a reboot command from Linux console. This > is because, affinity value is not reset before calling free_irq(). This > patch fixes this. > > Deconfiguring network interfaces... > [ 55.176589] ------------[ cut here ]----------- > [ 55.181232] WARNING: CPU: 0 PID: 2081 at kernel/irq/manage.c:1370 > __free_irq+0x208/0x214 The full content of the warning should be included in the commit message; __free_irq has several potential sources of warning messages, and line 1370 doesn't correspond to any of them in 4.2-rc8. > Signed-off-by: Murali Karicheri <m-karicheri2@ti.com> > --- > - Applies to v4.2.0-rc8 > > drivers/soc/ti/knav_qmss_acc.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/soc/ti/knav_qmss_acc.c b/drivers/soc/ti/knav_qmss_acc.c > index ef6f69d..b98fe56 100644 > --- a/drivers/soc/ti/knav_qmss_acc.c > +++ b/drivers/soc/ti/knav_qmss_acc.c > @@ -261,6 +261,10 @@ static int knav_range_setup_acc_irq(struct knav_range_info *range, > if (old && !new) { > dev_dbg(kdev->dev, "setup-acc-irq: freeing %s for channel %s\n", > acc->name, acc->name); > + ret = irq_set_affinity_hint(irq, NULL); > + if (ret) > + dev_warn(range->kdev->dev, > + "Failed to set IRQ affinity\n"); Seems unnecessary to add a warning here.
On 08/27/2015 12:43 PM, Nathan Lynch wrote: > On 08/27/2015 10:51 AM, Murali Karicheri wrote: >> When using accumulator queue for rx side for network driver, following >> warning is seen when doing a reboot command from Linux console. This >> is because, affinity value is not reset before calling free_irq(). This >> patch fixes this. >> >> Deconfiguring network interfaces... >> [ 55.176589] ------------[ cut here ]----------- >> [ 55.181232] WARNING: CPU: 0 PID: 2081 at kernel/irq/manage.c:1370 >> __free_irq+0x208/0x214 > > The full content of the warning should be included in the commit > message; __free_irq has several potential sources of warning messages, > and line 1370 doesn't correspond to any of them in 4.2-rc8. The log corresponds to 4.1.x kernel. Corresponding WARN_ONCE is #ifdef CONFIG_SMP /* make sure affinity_hint is cleaned up */ if (WARN_ON_ONCE(desc->affinity_hint)) desc->affinity_hint = NULL; #endif Which is line 1922. I can edit to make it 1922. Does that work? Murali > > >> Signed-off-by: Murali Karicheri <m-karicheri2@ti.com> >> --- >> - Applies to v4.2.0-rc8 >> >> drivers/soc/ti/knav_qmss_acc.c | 4 ++++ >> 1 file changed, 4 insertions(+) >> >> diff --git a/drivers/soc/ti/knav_qmss_acc.c b/drivers/soc/ti/knav_qmss_acc.c >> index ef6f69d..b98fe56 100644 >> --- a/drivers/soc/ti/knav_qmss_acc.c >> +++ b/drivers/soc/ti/knav_qmss_acc.c >> @@ -261,6 +261,10 @@ static int knav_range_setup_acc_irq(struct knav_range_info *range, >> if (old && !new) { >> dev_dbg(kdev->dev, "setup-acc-irq: freeing %s for channel %s\n", >> acc->name, acc->name); >> + ret = irq_set_affinity_hint(irq, NULL); >> + if (ret) >> + dev_warn(range->kdev->dev, >> + "Failed to set IRQ affinity\n"); > > Seems unnecessary to add a warning here. > >
On 08/27/2015 01:23 PM, Murali Karicheri wrote: > On 08/27/2015 12:43 PM, Nathan Lynch wrote: >> On 08/27/2015 10:51 AM, Murali Karicheri wrote: >>> When using accumulator queue for rx side for network driver, following >>> warning is seen when doing a reboot command from Linux console. This >>> is because, affinity value is not reset before calling free_irq(). This >>> patch fixes this. >>> >>> Deconfiguring network interfaces... >>> [ 55.176589] ------------[ cut here ]----------- >>> [ 55.181232] WARNING: CPU: 0 PID: 2081 at kernel/irq/manage.c:1370 >>> __free_irq+0x208/0x214 >> >> The full content of the warning should be included in the commit >> message; __free_irq has several potential sources of warning messages, >> and line 1370 doesn't correspond to any of them in 4.2-rc8. > > The log corresponds to 4.1.x kernel. Corresponding WARN_ONCE is > > #ifdef CONFIG_SMP > /* make sure affinity_hint is cleaned up */ > if (WARN_ON_ONCE(desc->affinity_hint)) > desc->affinity_hint = NULL; > #endif > > Which is line 1922. I can edit to make it 1922. Does that work? Eh, I guess I wasn't thinking clearly about this clearly when I wrote that. (I somehow had the notion that WARN_ON... maybe printed more than just the file and line number, but that is clearly mistaken.) I think your message is fine as is, sorry for the noise. I don't think changing the line number will make it any easier on future readers.
On 8/27/15 11:34 AM, Nathan Lynch wrote: > On 08/27/2015 01:23 PM, Murali Karicheri wrote: >> On 08/27/2015 12:43 PM, Nathan Lynch wrote: >>> On 08/27/2015 10:51 AM, Murali Karicheri wrote: >>>> When using accumulator queue for rx side for network driver, following >>>> warning is seen when doing a reboot command from Linux console. This >>>> is because, affinity value is not reset before calling free_irq(). This >>>> patch fixes this. >>>> >>>> Deconfiguring network interfaces... >>>> [ 55.176589] ------------[ cut here ]----------- >>>> [ 55.181232] WARNING: CPU: 0 PID: 2081 at kernel/irq/manage.c:1370 >>>> __free_irq+0x208/0x214 >>> >>> The full content of the warning should be included in the commit >>> message; __free_irq has several potential sources of warning messages, >>> and line 1370 doesn't correspond to any of them in 4.2-rc8. >> >> The log corresponds to 4.1.x kernel. Corresponding WARN_ONCE is >> >> #ifdef CONFIG_SMP >> /* make sure affinity_hint is cleaned up */ >> if (WARN_ON_ONCE(desc->affinity_hint)) >> desc->affinity_hint = NULL; >> #endif >> >> Which is line 1922. I can edit to make it 1922. Does that work? > > Eh, I guess I wasn't thinking clearly about this clearly when I wrote > that. (I somehow had the notion that WARN_ON... maybe printed more than > just the file and line number, but that is clearly mistaken.) I think > your message is fine as is, sorry for the noise. > > I don't think changing the line number will make it any easier on future > readers. > Right. Just leave the full call in the commit so that the context is captured.
On 08/27/2015 02:36 PM, santosh.shilimkar@oracle.com wrote: > On 8/27/15 11:34 AM, Nathan Lynch wrote: >> On 08/27/2015 01:23 PM, Murali Karicheri wrote: >>> On 08/27/2015 12:43 PM, Nathan Lynch wrote: >>>> On 08/27/2015 10:51 AM, Murali Karicheri wrote: >>>>> When using accumulator queue for rx side for network driver, following >>>>> warning is seen when doing a reboot command from Linux console. This >>>>> is because, affinity value is not reset before calling free_irq(). >>>>> This >>>>> patch fixes this. >>>>> >>>>> Deconfiguring network interfaces... >>>>> [ 55.176589] ------------[ cut here ]----------- >>>>> [ 55.181232] WARNING: CPU: 0 PID: 2081 at kernel/irq/manage.c:1370 >>>>> __free_irq+0x208/0x214 >>>> >>>> The full content of the warning should be included in the commit >>>> message; __free_irq has several potential sources of warning messages, >>>> and line 1370 doesn't correspond to any of them in 4.2-rc8. >>> >>> The log corresponds to 4.1.x kernel. Corresponding WARN_ONCE is >>> >>> #ifdef CONFIG_SMP >>> /* make sure affinity_hint is cleaned up */ >>> if (WARN_ON_ONCE(desc->affinity_hint)) >>> desc->affinity_hint = NULL; >>> #endif >>> >>> Which is line 1922. I can edit to make it 1922. Does that work? >> >> Eh, I guess I wasn't thinking clearly about this clearly when I wrote >> that. (I somehow had the notion that WARN_ON... maybe printed more than >> just the file and line number, but that is clearly mistaken.) I think >> your message is fine as is, sorry for the noise. >> >> I don't think changing the line number will make it any easier on future >> readers. >> > Right. Just leave the full call in the commit so that the context > is captured. > > Will do that and resend it
diff --git a/drivers/soc/ti/knav_qmss_acc.c b/drivers/soc/ti/knav_qmss_acc.c index ef6f69d..b98fe56 100644 --- a/drivers/soc/ti/knav_qmss_acc.c +++ b/drivers/soc/ti/knav_qmss_acc.c @@ -261,6 +261,10 @@ static int knav_range_setup_acc_irq(struct knav_range_info *range, if (old && !new) { dev_dbg(kdev->dev, "setup-acc-irq: freeing %s for channel %s\n", acc->name, acc->name); + ret = irq_set_affinity_hint(irq, NULL); + if (ret) + dev_warn(range->kdev->dev, + "Failed to set IRQ affinity\n"); free_irq(irq, range); }
When using accumulator queue for rx side for network driver, following warning is seen when doing a reboot command from Linux console. This is because, affinity value is not reset before calling free_irq(). This patch fixes this. Deconfiguring network interfaces... [ 55.176589] ------------[ cut here ]----------- [ 55.181232] WARNING: CPU: 0 PID: 2081 at kernel/irq/manage.c:1370 __free_irq+0x208/0x214 Signed-off-by: Murali Karicheri <m-karicheri2@ti.com> --- - Applies to v4.2.0-rc8 drivers/soc/ti/knav_qmss_acc.c | 4 ++++ 1 file changed, 4 insertions(+)