Xen: Has pci=resource_alignment kernel command changed in 11.4? (non-page-aligned MMIO BAR error)

I have a PV VM to which I’ve assigned a PCI USB/firewire card. While the VM was working on 11.2 using OBS Xen 4.0.2 packages, it stopped working after I upgraded to 11.4 / Kernel 2.6.37.

The error is “Error: pci: 0000:04:00.1: non-page-aligned MMIO BAR found.” The USB card has PCI IDs 04:00.0, 04:00.1 (USB 2.0), and 04:01.0 (firewire). Before upgrading, I had resolved this error with the pci=resource_alignment… kernel parameter. It apparently doesn’t work anymore. Has this command changed or been replaced?

My grub.lst is:


title Xen -- openSUSE 11.4 - 2.6.37.6-0.7
    root (hd0,0)
    kernel /xen.gz 
    module /vmlinuz-2.6.37.6-0.7-xen root=/dev/sys/root elevator=deadline swiotlb=force,256 iommu=soft pciback.permissive pciback.hide=(00:14.2)(04:00.0)(04:00.1)(04:01.0) **pci=resource_alignment=00:14.2;04:00.0;04:00.1;04:01.0** radeon.modeset=0 vga=0x317 
    module /initrd-2.6.37.6-0.7-xen

The PCI devices are reported as seized by the pciback module, which has been added to initrd in /etc/sysconfig/kernel. I appreciate anyone who can help or point me in the right direction. Thanks!

I should add that I have lines like these in dmesg:


    0.231802] pci 0000:00:14.2: BAR 0: can't assign mem (size 0x4000)
    0.232429] pci 0000:04:00.0: BAR 0: can't assign mem (size 0x1000)
    0.232494] pci 0000:04:00.1: BAR 0: can't assign mem (size 0x1000)
    0.232557] pci 0000:04:01.0: BAR 0: can't assign mem (size 0x1000)

I’ve also tried:
Adding the “resource_alloc_from_bottom” kernel command (no effect)
Adding (pci-passthrough-strict-check no) to /etc/xen/xend-config.sxp (VM boots but the modules crash when udev loads)

On 09/21/2011 09:26 PM, shantikulkarni wrote:
>
> I appreciate anyone who can help or point me in the right direction.

this is primarily a forum of volunteer users helping needy users with
their ills…

that said, you are more than welcome to ask anything here…but, it
seems to me that you really need to find some kernel krunchers…real
ones…and, as far as i know they are as scarce as hens teeth around
here…you might (while checking back here to see if the guru you
need drops in) joint the openSUSE mail list, or IRC channel where
developers and Krunchers hang out…the stepping stone to both of those
is here:

http://en.opensuse.org/openSUSE:Communication_channels

let us know how you got on (because, you never know, maybe someone
googles into this thread looking for an answer)


DD
Caveat
openSUSE®, the “German Automobiles” of operating systems

The same kernel options work on 11.4 if you install the last 2.6.31 from 11.2 on top of it (but apparmor breaks). A reply to my post on the virtualization mail list said the pci=resource_alignment= command and syntax had supposedly not changed since 11.2, and it appeared the new kernel was unsuccessfully attempting to remap the memory. So I opened a bug: https://bugzilla.novell.com/show_bug.cgi?id=719858.