linux-i2c.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jean Delvare <khali-PUYAD+kWke1g9hUCZPvPmw@public.gmane.org>
To: Henrik Kretzschmar <henne-lmEOmhgwvqJeCmjzdEDfrw@public.gmane.org>
Cc: jbarnes-Y1mF5jBUw70BENJcbMCuUQ@public.gmane.org,
	linux-pci-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: Crash on reading the whole PCI config of PIIX4 SMBus
Date: Tue, 22 Sep 2009 20:07:56 +0200	[thread overview]
Message-ID: <20090922200756.245c43b0@hyperion.delvare> (raw)
In-Reply-To: <4AB8F142.9090609-lmEOmhgwvqJeCmjzdEDfrw@public.gmane.org>

On Tue, 22 Sep 2009 17:46:10 +0200, Henrik Kretzschmar wrote:
> Hi there,
> 
> at boot time my system (Wincor/Nixdorf Beetle D1) sometimes crashs while loading the i2c-piix4 driver.
> I found out that I can always trigger the crash as root, which one of those:  
> 
> # hexdump -C /proc/bus/pci/00/07.3
> # hexdump -C /sys/bus/pci/devices/0000:00:07.3/config
> # lspci -s 07.3 -xxx
> 
> While initialization the i2c-piix4 driver does two reads to the config space, at 0xd2 and 0xd6,
> in a relative short time. That sometimes triggers the crash,
> but isn't that precise like one of those commands.
> 
> While my investigations I put a printk() between those two reads and had no more crashs
> on module loading. I tested that with a script, doing insmod/rmmod 100 times in a row.
> 
> But printk() can't be the solution, so I tried msleep(1) and udelay(250),
> but with each of these my system crashed.
> The time for the read and one printk() takes ~100 us on my machine,
> so both time values should be more than enough, if time would have been the reason.
> 
> Does someone have an idea what the driver should do between those two reads, to avoid crashing?
> Can somebody with the same device trigger this crash too (greped LKML 2001-2008, found nothing)?

And to answer this question: with the same device (except that it's at
01.3 instead of 07.3 here), none of the 3 above commands crash my
system (kernel 2.6.29.)

-- 
Jean Delvare

  parent reply	other threads:[~2009-09-22 18:07 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-22 15:46 Crash on reading the whole PCI config of PIIX4 SMBus Henrik Kretzschmar
2009-09-22 17:04 ` Jean Delvare
     [not found] ` <4AB8F142.9090609-lmEOmhgwvqJeCmjzdEDfrw@public.gmane.org>
2009-09-22 18:07   ` Jean Delvare [this message]
2009-09-22 23:18 ` Wolfram Sang
2009-09-23 12:59   ` Henrik Kretzschmar
2009-09-23 13:35     ` Jean Delvare
2009-09-23 14:11       ` Henrik Kretzschmar
     [not found]         ` <4ABA2CA1.8070806-lmEOmhgwvqJeCmjzdEDfrw@public.gmane.org>
2009-09-23 14:15           ` Jean Delvare
     [not found]             ` <20090923161518.5cb29107-ig7AzVSIIG7kN2dkZ6Wm7A@public.gmane.org>
2009-09-23 15:49               ` Henrik Kretzschmar
2009-09-23 16:30                 ` Jean Delvare

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=20090922200756.245c43b0@hyperion.delvare \
    --to=khali-puyad+kwke1g9huczpvpmw@public.gmane.org \
    --cc=henne-lmEOmhgwvqJeCmjzdEDfrw@public.gmane.org \
    --cc=jbarnes-Y1mF5jBUw70BENJcbMCuUQ@public.gmane.org \
    --cc=linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-pci-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    /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;
as well as URLs for NNTP newsgroup(s).