All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jeff Garzik <jgarzik@pobox.com>
To: Yinghai Lu <yhlu.kernel@gmail.com>
Cc: Ayaz Abdulla <aabdulla@nvidia.com>,
	Manfred Spraul <manfred@colorfullife.com>,
	nedev <netdev@vger.kernel.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	David Miller <davem@davemloft.net>,
	Andrew Morton <akpm@linux-foundation.org>
Subject: Re: MSI interrupts and disable_irq
Date: Sat, 06 Oct 2007 13:59:13 -0400	[thread overview]
Message-ID: <4707CCF1.8080909@pobox.com> (raw)
In-Reply-To: <86802c440710061043u6e51cd7q468346bd06b08657@mail.gmail.com>

Yinghai Lu wrote:
> On 9/28/07, Jeff Garzik <jgarzik@pobox.com> wrote:
>> Ayaz Abdulla wrote:
>>> I am trying to track down a forcedeth driver issue described by bug 9047
>>> in bugzilla (2.6.23-rc7-git1 forcedeth w/ MCP55 oops under heavy load).
>>> I added a patch to synchronize the timer handlers so that one handler
>>> doesn't accidently enable the IRQ while another timer handler is running
>>> (see attachment 'Add timer lock' in bug report) and for other processing
>>> protection.
>>>
>>> However, the system still had an Oops. So I added a lock around the
>>> nv_rx_process_optimized() and the Oops has not happened (see attachment
>>> 'New patch for locking' in bug report). This would imply a
>>> synchronization issue. However, the only callers of that function are
>>> the IRQ handler and the timer handlers (in non-NAPI case). The timer
>>> handlers  use disable_irq so that the IRQ handler does not contend with
>>> them. It looks as if disable_irq is not working properly.
>>>
>>> This issue repros only with MSI interrupt and not legacy INTx
>>> interrupts. Any ideas?
>> (added linux-kernel to CC, since I think it's more of a general kernel
>> issue)
>>
> I wonder if the race is between soft_timer for nv_do_nic_poll from
> different CPUs

Interested parties should try the forcedeth patches I just posted :)

	Jeff




  reply	other threads:[~2007-10-06 17:59 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-09-27 20:42 MSI interrupts and disable_irq Ayaz Abdulla
2007-09-29  2:47 ` Jeff Garzik
2007-09-29  3:08   ` Stephen Hemminger
2007-10-05 22:12     ` Eric W. Biederman
2007-10-06  6:23       ` Yinghai Lu
2007-10-06 17:43   ` Yinghai Lu
2007-10-06 17:59     ` Jeff Garzik [this message]
2007-10-07 16:54       ` Manfred Spraul
2007-10-13  9:30   ` Manfred Spraul
2007-10-14  5:59     ` Yinghai Lu
2007-10-14  7:15       ` Manfred Spraul
2007-10-14 19:55         ` Yinghai Lu
2007-10-14 21:47         ` Benjamin Herrenschmidt
2007-10-14 23:15           ` Yinghai Lu
2007-10-14 23:36             ` Benjamin Herrenschmidt
2007-10-15 22:17     ` Jeff Garzik
2007-10-16 17:23       ` Yinghai Lu
2007-10-16 17:39         ` Jeff Garzik
2007-10-16 17:59           ` Yinghai Lu
2007-10-16 19:44             ` Jeff Garzik
2007-10-16 18:01           ` Yinghai Lu
2007-10-17 19:43             ` Manfred Spraul
2007-10-02 19:03 ` Manfred Spraul

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4707CCF1.8080909@pobox.com \
    --to=jgarzik@pobox.com \
    --cc=aabdulla@nvidia.com \
    --cc=akpm@linux-foundation.org \
    --cc=davem@davemloft.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=manfred@colorfullife.com \
    --cc=netdev@vger.kernel.org \
    --cc=yhlu.kernel@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.