linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Loic Prylli <loic@myri.com>
To: Matthew Wilcox <matthew@wil.cx>
Cc: Tony Camuso <tcamuso@redhat.com>, Greg KH <gregkh@suse.de>,
	linux-kernel@vger.kernel.org, linux-pci@atrey.karlin.mff.cuni.cz
Subject: Re: [Fwd: Re: [PATCH 0/5]PCI: x86 MMCONFIG]
Date: Sun, 23 Dec 2007 15:16:24 -0500	[thread overview]
Message-ID: <476EC218.6030000@myri.com> (raw)
In-Reply-To: <20071220181603.GF29690@parisc-linux.org>



On 12/20/2007 1:16 PM, Matthew Wilcox wrote:
> Oh, that's the same bug others (including me) have been complaining
> about.
>
> http://marc.info/?l=linux-kernel&m=118809338631160&w=2
>
>   
>> It hangs in exactly the same place every time.
>>
>> I am surmising that the write to that BAR is causing a MCE.
>>     
>
> Bad deduction.  What's happening is that the write to the BAR is causing
> it to overlap the decode for mmconfig space.  So the mmconfig write to
> set the BAR back never gets through.
>
> I have a different idea to fix this problem.  Instead of writing
> 0xffffffff, we could look for an unused bit of space in the E820 map and
> write, say, 0xdfffffff to the low 32-bits of a BAR.  Then it wouldn't
> overlap, and we could find its size using MMCONFIG.
>
> Does anyone know how Windows handles these machines? 



I just realized one thing: the bar sizing code in pci_read_bases() (that
writes 0xffffffff in the bars) does not seem to disable the
PCI_COMMAND_MEM/PCI_COMMAND_IO bits in the cmd register before
manipulating the BARs. And it seems nobody else ensures they are
disabled at this point either (or am I missing something?).


Touching the bars while they are enabled would be buggy behaviour from
our part, and something trivial to fix. And it might well fix that
particular problem (it's fair play from the machine to crash if we
create a decoding conflict, simply disabling the cmd bits in
pci_read_bases() should remove that conflict).

FWIW, to partially answer your last question, Windows does disable
mem-space and/or IO-space when sizing the bars of a device (I have some
traces of configuration-space-access taken on a window machine for one
of the PCI busses).



Loic







  parent reply	other threads:[~2007-12-23 20:17 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-12-20 12:28 [Fwd: Re: [PATCH 0/5]PCI: x86 MMCONFIG] Tony Camuso
2007-12-20 17:22 ` Greg KH
2007-12-20 17:35   ` Matthew Wilcox
2007-12-20 18:04     ` Tony Camuso
2007-12-20 18:16       ` Matthew Wilcox
2007-12-20 18:30         ` Tony Camuso
2007-12-20 18:36           ` Matthew Wilcox
2007-12-20 18:49         ` Loic Prylli
2007-12-20 19:04           ` Tony Camuso
2007-12-20 19:08             ` Matthew Wilcox
2007-12-20 19:50               ` Ivan Kokshaysky
2007-12-20 20:17                 ` Tony Camuso
2007-12-20 20:27                 ` Tony Camuso
2008-01-08  3:41                 ` Tony Camuso
2007-12-20 20:05               ` Loic Prylli
2007-12-20 20:15                 ` Matthew Wilcox
2007-12-20 20:56                   ` Loic Prylli
2007-12-20 21:00                     ` Matthew Wilcox
2007-12-20 21:55                       ` Loic Prylli
2007-12-20 19:37         ` Tony Camuso
2007-12-20 20:04           ` Matthew Wilcox
2007-12-20 20:15             ` Tony Camuso
2007-12-23 20:16         ` Loic Prylli [this message]
2007-12-23 20:55           ` Matthew Wilcox
2007-12-23 22:40             ` Loic Prylli
2007-12-24  8:09           ` Grant Grundler
2007-12-20 18:25   ` Tony Camuso
2007-12-20 21:57     ` Greg KH
2007-12-20 22:36       ` Tony Camuso
2007-12-20 22:40         ` Greg KH
2007-12-20 23:21           ` Tony Camuso
2007-12-21  2:07             ` Loic Prylli
2007-12-24  8:28           ` Grant Grundler
2008-01-08  3:20           ` [PATCH 0/5]PCI: x86 MMCONFIG Tony Camuso
2008-01-08  4:56             ` Greg KH
2008-01-08 13:14               ` Tony Camuso
2008-01-08 13:36                 ` Greg KH
2008-01-08 13:44                   ` Tony Camuso
  -- strict thread matches above, loose matches on Subject: below --
2007-12-20 12:28 [Fwd: Re: [PATCH 0/5]PCI: x86 MMCONFIG] Tony Camuso
     [not found] <fa.HvUNJ45qy60H427u0v9fNt3Gc7E@ifi.uio.no>
     [not found] ` <fa.uuzqvr64HFsgxfiWwhEmE16Di6c@ifi.uio.no>
     [not found]   ` <fa.zhxdNN/1rfQhfJLVmdGBjvKYrCM@ifi.uio.no>
     [not found]     ` <fa.z1qlON6DA9ubBPFdrEcaFTMgYOY@ifi.uio.no>
     [not found]       ` <fa.U/SCC1Gvd3nSOpkMu5vcsSPYyPE@ifi.uio.no>
     [not found]         ` <fa.d8kGTkzOZH22bXRIRiakqgOPBM4@ifi.uio.no>
2007-12-21  0:44           ` Robert Hancock
2007-12-21  1:35             ` Tony Camuso
2007-12-21  1:42               ` Tony Camuso
2007-12-21 14:59                 ` Bhavana Nagendra
2007-12-21  2:15               ` Robert Hancock
2007-12-21  2:44                 ` Tony Camuso
2007-12-21  3:40                 ` Loic Prylli
2007-12-21  4:07                   ` Tony Camuso
2007-12-21  2:09             ` Tony Camuso
2007-12-21 14:11             ` Andi Kleen
     [not found]           ` <fa.pdOcVPk2gFn5iK76ExRH6Ow+NPw@ifi.uio.no>
2007-12-22 16:41             ` Robert Hancock
     [not found] ` <fa.AlLzUeumrcT2SswgOn6MxKfDE0U@ifi.uio.no>
     [not found]   ` <fa.wIE0QfzMAxr82X049FecszlEnQY@ifi.uio.no>
     [not found]     ` <fa.2jJbe4cdXLfOVhNWVxdIjsW8GQc@ifi.uio.no>
     [not found]       ` <fa.JiW7yU0G/EdLOCYcPOacl/XVocc@ifi.uio.no>
     [not found]         ` <fa.PI93hBriZRT9ggytQ5eY/446Tno@ifi.uio.no>
2007-12-24 17:13           ` Robert Hancock

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=476EC218.6030000@myri.com \
    --to=loic@myri.com \
    --cc=gregkh@suse.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@atrey.karlin.mff.cuni.cz \
    --cc=matthew@wil.cx \
    --cc=tcamuso@redhat.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;
as well as URLs for NNTP newsgroup(s).