lkml.org 
[lkml]   [2011]   [Jun]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 0/4] PCI: fix cardbus and sriov regressions
On 24.06.2011 21:29, Ram Pai wrote:
> On Thu, Jun 23, 2011 at 04:55:06PM +0200, Oliver Hartkopp wrote:
>> Hello RP,
>>
>> unfortunately i noticed the discussion on linux-kernel ML a bit late, as i did
>> not subscribe it due to the traffic.
>
> sorry, did not see this mail earlier.
>
>
>>>>> When comparing the logs with mgdiff, i found
>>>>>
>>>>> in revered:
>>>>>
>>>>> pci_bus 0000:04: resource 0 [io 0x2000-0x20ff]
>>>>> pci_bus 0000:04: resource 1 [io 0x2400-0x24ff]
>>>>>
>>>>> in the fixed version (4 patches)
>>>>>
>>>>> pci_bus 0000:04: resource 0 [io 0x2400-0x24ff]
>>>>> pci_bus 0000:04: resource 1 [io 0x2001-0x2100]
>>
>> Did you get further with the unusual alignment?
>
> No. i was thinking this alignment should be ok, since that cardbus resource
> has to be SIZE aligned and not START aligned.
>
> However if it is not acceptable, i will figure out a way
> to get it aligned on the right boundaries.

I'm not sure how drivers expect to access the register layouts of their
specific hardware. E.g. if you have a 32-bit register at the beginning of the
io resource and the driver accesses this with a 32-bit write operation, the
misalignment would be handled (by the CPU) very expensive at runtime, which is
definitely a big drawback in performance. I know the networking people
re-arranging structs to get less cycles in accessing data structures ...

I tried to understand the reason for the original commit in 3.0.0-rc1 that
broke my system - very ambitious :-)

But IMHO you should meet analogue starting boundaries as we had before to make
sure that you don't brake things on machines that did not show up yet.

Best regards,
Oliver


\
 
 \ /
  Last update: 2011-06-25 13:37    [W:0.066 / U:0.300 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site