All of lore.kernel.org
 help / color / mirror / Atom feed
From: Philippe Gerum <rpm@xenomai.org>
To: Bernhard Pfund <bernhard@domain.hid>
Cc: adeos-main <adeos-main@gna.org>, RTnet-users@domain.hid
Subject: Re: [Adeos-main] [RTnet-users] e1000 & MSI
Date: Tue, 19 Aug 2008 12:17:14 +0200	[thread overview]
Message-ID: <48AA9DAA.3040801@domain.hid> (raw)
In-Reply-To: <48A6B8EC.8020302@domain.hid>

Bernhard Pfund wrote:
> Philippe Gerum wrote:
>> Bernhard Pfund wrote:
>>>> I see no option aside of ironing the inner code that reads/writes the PCI
>>>> config, so here is an ugly yet possible solution for x86, that might work
>>>> (totally untested):
>>>>
>>>> diff --git a/arch/x86/pci/common.c b/arch/x86/pci/common.c
>>>> index 6e64aaf..7f32101 100644
>>>> --- a/arch/x86/pci/common.c
>>>> +++ b/arch/x86/pci/common.c
>>>> @@ -75,7 +75,7 @@ int pcibios_scanned;
>>>>   * This interrupt-safe spinlock protects all accesses to PCI
>>>>   * configuration space.
>>>>   */
>>>> -DEFINE_SPINLOCK(pci_config_lock);
>>>> +IPIPE_DEFINE_SPINLOCK(pci_config_lock);
>>>>
>>>>  static int __devinit can_skip_ioresource_align(const struct dmi_system_id *d)
>>>>  {
>>>> diff --git a/drivers/pci/access.c b/drivers/pci/access.c
>>>> index 39bb96b..9a74083 100644
>>>> --- a/drivers/pci/access.c
>>>> +++ b/drivers/pci/access.c
>>>> @@ -12,7 +12,7 @@
>>>>   * configuration space.
>>>>   */
>>>>
>>>> -static DEFINE_SPINLOCK(pci_lock);
>>>> +static IPIPE_DEFINE_SPINLOCK(pci_lock);
>>>>
>>>>  /*
>>>>   *  Wrappers for all PCI configuration access functions.  They just check
>>>>
>>> This results in:
>>>
>>> arch/x86/pci/common.c:78: error: conflicting types for ‘pci_config_lock’
>>> arch/x86/pci/pci.h:84: error: previous declaration of ‘pci_config_lock’
>>> was here
>>>
>>> Didn't look into it, just tried ;)
>>>
>> Just change the declaration in pci.h the same way.
>>
> 
> Ok, thanx! Seems to work for now, no extensive testing done (yet)
> though. What's the plan for the future? Will this change find its way
> into the official patch?
> 

This change could be merged into the 2.6.26 patch provided it does not raise any
pathological latency when enabling MSI. I would rather ask people to refrain
from using MSI until it is fixed (once again) in later releases, than suffering
random latency peaks. 2.6.27 and beyond is another issue; this will need a
different approach than simply ironing the PCI lock in any case.

We need more test data for 2.6.26 + this patch.

-- 
Philippe.


  reply	other threads:[~2008-08-19 10:17 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20080812075358.4cg1ix9945msccsc@domain.hid>
     [not found] ` <48A12EA8.4070601@domain.hid>
     [not found]   ` <48A34D75.9090509@domain.hid>
2008-08-13 22:01     ` [Adeos-main] [RTnet-users] e1000 & MSI Jan Kiszka
2008-08-14  6:34       ` Jan Kiszka
2008-08-14  6:49         ` Jan Kiszka
2008-08-14  7:41           ` Philippe Gerum
2008-08-14 10:53           ` bernhard
2008-08-14 13:38             ` Philippe Gerum
2008-08-14 15:25               ` Gilles Chanteperdrix
2008-08-14 15:34               ` Bernhard Pfund
2008-08-14 15:52                 ` Gilles Chanteperdrix
2008-08-14 16:57                 ` Philippe Gerum
2008-08-16 11:24                   ` Bernhard Pfund
2008-08-19 10:17                     ` Philippe Gerum [this message]
2008-08-19 10:31                       ` bernhard
2008-08-19 14:18                         ` Philippe Gerum
2008-08-19 20:53                           ` Bernhard Pfund
2008-08-20  9:38                             ` Philippe Gerum
2008-08-25 12:16                               ` bernhard
2008-08-25 12:58                                 ` Jan Kiszka
2008-08-25 13:48                                   ` bernhard
2008-08-25 14:15                                 ` Philippe Gerum
2008-08-14 17:35               ` Jan Kiszka
2008-08-14 17:55                 ` Philippe Gerum
2008-08-14 18:21                   ` Philippe Gerum

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=48AA9DAA.3040801@domain.hid \
    --to=rpm@xenomai.org \
    --cc=RTnet-users@domain.hid \
    --cc=adeos-main@gna.org \
    --cc=bernhard@domain.hid \
    /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.