Creating a bootable ZFS disk?

Dr Josef Karthauser joe at tao.org.uk
Sat Jan 24 20:17:03 UTC 2015


> On 1 Jan 2015, at 19:28, Steven Hartland <killing at multiplay.co.uk> wrote:
> 
> On 01/01/2015 17:18, Dr Josef Karthauser wrote:
>> On 30 Dec 2014, at 16:34, Steven Hartland <killing at multiplay.co.uk> wrote:
>>> This is strengthened by the fact that ATI's previous generation HW (SB600) had MSI disabled by r245875 due to a very similar issue.
>>> 
>>> So given all the evidence so far ahci.0.msi=1 may well be the fix.
>>> 
>> Is there any benefit to also trying with mdi > 1 < 8?
> Nope as the ahci(4) details there's only 3 settings:
> 0 = MSI disabled
> 1 = Single MSI vector used, if supported
> 2 = Multiple MSI vectors used, if supported (default)
> 
> If setting it to 1 does fix it, I've got a patch which provides a quirk we can use to make that the default for this HW.

Finally got the machine into a state I can test it - sorry for the delay.

I’ve set it in boot.loader:

    $ cat /boot/loader.conf 
    zfs_load=“YES"
    ahci.0.msi=1

However, it’s still allocating all 8 vectors:

    $ dmesg | grep MSI
    [cut]
    ahci0: attempting to allocate 8 MSI vectors (8 supported)
    msi: routing MSI IRQ 263 to local APIC 0 vector 64
    msi: routing MSI IRQ 264 to local APIC 0 vector 65
    msi: routing MSI IRQ 265 to local APIC 0 vector 66
    msi: routing MSI IRQ 266 to local APIC 0 vector 67
    msi: routing MSI IRQ 267 to local APIC 0 vector 68
    msi: routing MSI IRQ 268 to local APIC 0 vector 69
    msi: routing MSI IRQ 269 to local APIC 0 vector 70
    msi: routing MSI IRQ 270 to local APIC 0 vector 71
    ahci0: using IRQs 263-270 for MSI
    [cut]

This is with:

    $ uname -a
    FreeBSD my.machine.and.domain 10.1-RELEASE FreeBSD 10.1-RELEASE #0 r274401: Tue Nov 11 21:02:49 UTC 2014     root at releng1.nyi.freebsd.org:/usr/obj/usr/src/sys/GENERIC  amd64

So, that’s confusing - I was expecting it to only route a single vector.

That sysctl isn’t exposed as a read variable:

    $ sysctl -a | grep ahci.0
    dev.ahci.0.%desc: AMD SB7x0/SB8x0/SB9x0 AHCI SATA controller
    dev.ahci.0.%driver: ahci
    dev.ahci.0.%location: slot=17 function=0 handle=\_SB_.PCI0.SATA
    dev.ahci.0.%pnpinfo: vendor=0x1002 device=0x4391 subvendor=0x103c subdevice=0x1609 class=0x010601
    dev.ahci.0.%parent: pci0

Is it only in -current perchance?

Thanks,
Joe




More information about the freebsd-stable mailing list