lkml.org 
[lkml]   [2006]   [Feb]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: Problems with MSI-X on ia64
    On Fri, Feb 17, 2006 at 12:46:05AM -0800, Chris Wedgwood wrote:
    > On Thu, Feb 16, 2006 at 11:58:29PM -0800, Grant Grundler wrote:
    >
    > > The root cause is the use of u32 to describe a PCI resource "start".
    > > phys_addr needs to be "unsigned long". More details in Log entry
    > > below.
    >
    > That won't always suffice.
    >
    > I have machines at work that will place some PCI resources above the
    > 4GB boundary even when booting in '32-bit OS' mode (there is a BIOS
    > option for this but no matter the setting some resources always end up
    > above 4GB). I've heard from others they've also been hit by this
    > (with 64-bit kernels it's fine). I guess it could be argued that it's
    > a BIOS bug, I'm not entirely sure what to thing, Windows seems to
    > deal with it.

    If the machine is suppose to support a 32-bit OS, then yeah, it's
    a BIOS bug. It all depends on who defines the support matrix.

    One way to support that behavior is use u64 in struct resource (ioport.h)
    (NOT dma_addr_t) instead of "unsigned long".

    The other way is to reassign "invalid" resources (above 4GB) with
    "valid" ones (below 4GB). I suspect windows is doing this and
    I'd rather see linux take this route as well if possible.

    grant
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2006-02-17 17:28    [W:4.840 / U:0.016 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site