public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
To: Arjan van de Ven <arjan@infradead.org>
Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
	ipw2100-devel@lists.sourceforge.net,
	linux-wireless@vger.kernel.org, yi.zhu@intel.com,
	reinette.chatre@intel.com, jgarzik@pobox.com,
	linville@tuxdriver.com, davem@davemloft.net
Subject: Re: Mark IPW2100 as BROKEN: Fatal interrupt. Scheduling firmware restart.
Date: Sun, 21 Sep 2008 23:00:50 +0400	[thread overview]
Message-ID: <20080921190050.GA20484@2ka.mipt.ru> (raw)
In-Reply-To: <20080921113513.16677c4e@infradead.org>

On Sun, Sep 21, 2008 at 11:35:13AM -0700, Arjan van de Ven (arjan@infradead.org) wrote:
> > And how else user can get attention to the problem which is not fixed
> > by the vendor? 
> 
> ... or the community

Which does not have access to the firmware... Which IMO is failing and
not the driver itself.

> > It stops after several seconds (or packets?). Sometimes (but rarely)
> > it works several minutes, sometimes it fires above dmesg line and
> > continues to work, sometimes it fires it for a while and then stops
> > writing it, although driver does not send or receive anything (at
> > least ifconfig counters do not change).
> 
> again.. so how about you detect this condition and do, in the driver
> code, the equivalent of rmmod/insmod to the hardware. I'm sure people
> who have the hardware would appreciate that type of patch a lot more
> than the one you sent out.
 
Reset task does efectively ipw2100_up(), so the difference is power
cycles over the PCI bus and enable/disable/request commands. Like this
stuff:
	/* We disable the RETRY_TIMEOUT register (0x41) to keep
	 * PCI Tx retries from interfering with C3 CPU state */
	pci_read_config_dword(pci_dev, 0x40, &val);
	if ((val & 0x0000ff00) != 0)
		pci_write_config_dword(pci_dev, 0x40, val & 0xffff00ff);

I do remember I had a tibet monk course of decoding ipw2100 PCI
config address space, just need to find my kimono.

Do you want me to implement ipw2100 driver as a big work structure
which will run ipw2100_init()/wait/ipw2100_exit() in a loop?
And that will be the fix suggested by Intel? That would explain a lot.

P.S. And some people tell that asking for bug bisection is a hard
pressure on user. Vendor has to ask him to fix bug himself instead,
and that will be a solution!

Getting the fact, that rmmod/insmod does not always fix the problem (but
most of the time for a short period of time), I again want to point,
that it looks like a firmware problem related to some inner timings. You
ask me to fix the driver and do not even listen to what I said
previously and do not get that into account and analyze.

-- 
	Evgeniy Polyakov

  parent reply	other threads:[~2008-09-21 19:02 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-09-21 17:23 Mark IPW2100 as BROKEN: Fatal interrupt. Scheduling firmware restart Evgeniy Polyakov
2008-09-21 17:36 ` Michael Buesch
2008-09-21 17:38   ` Evgeniy Polyakov
2008-09-21 18:04 ` Arjan van de Ven
2008-09-21 18:28   ` Evgeniy Polyakov
2008-09-21 18:35     ` Arjan van de Ven
2008-09-21 18:52       ` Wei Weng
2008-09-21 19:20         ` Arjan van de Ven
2008-09-21 19:00       ` Evgeniy Polyakov [this message]
2008-09-21 19:14         ` Johannes Berg
2008-09-21 19:38           ` Evgeniy Polyakov
2008-09-21 19:43             ` Arjan van de Ven
2008-09-21 20:20               ` Evgeniy Polyakov
2008-09-21 20:27                 ` Arjan van de Ven
2008-09-21 20:57                   ` Evgeniy Polyakov
2008-09-21 21:02                     ` Arjan van de Ven
2008-09-21 21:05                       ` Evgeniy Polyakov
2008-09-21 21:14                         ` Arjan van de Ven
2008-09-21 21:43                         ` Denys Fedoryshchenko
2008-09-21 22:07                           ` Evgeniy Polyakov
2008-09-21 22:15                             ` Denys Fedoryshchenko
2008-09-21 23:46                               ` Evgeniy Polyakov
2008-09-21 23:27                         ` Marcel Holtmann
2008-09-22  0:00                           ` Evgeniy Polyakov
2008-09-21 22:38                     ` Alan Cox
2008-09-21 23:44                       ` Evgeniy Polyakov
2008-09-21 23:48                         ` David Miller
2008-09-22  0:18                           ` Evgeniy Polyakov
2008-09-22 14:22                         ` Bill Davidsen
2008-09-21 20:05             ` Cyrill Gorcunov
2008-09-21 20:26               ` Evgeniy Polyakov
2008-09-21 20:35                 ` Cyrill Gorcunov
2008-09-21 21:06                   ` Evgeniy Polyakov
2008-09-21 19:57         ` Alan Cox
2008-09-21 21:10           ` Evgeniy Polyakov
2008-09-26  5:56           ` Evgeniy Polyakov
2008-09-21 19:35 ` Marcel Holtmann
2008-09-21 21:12   ` Evgeniy Polyakov
2008-09-21 22:45   ` Matthew Garrett
2008-09-21 22:42 ` Matthew Garrett
2008-09-21 23:45   ` Evgeniy Polyakov
2008-09-22 16:21 ` [Ipw2100-devel] " Kenneth Crudup

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=20080921190050.GA20484@2ka.mipt.ru \
    --to=johnpol@2ka.mipt.ru \
    --cc=arjan@infradead.org \
    --cc=davem@davemloft.net \
    --cc=ipw2100-devel@lists.sourceforge.net \
    --cc=jgarzik@pobox.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=linville@tuxdriver.com \
    --cc=netdev@vger.kernel.org \
    --cc=reinette.chatre@intel.com \
    --cc=yi.zhu@intel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox