abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 22:55 | Nová verze

    Byla vydána únorová aktualizace aneb nová verze 1.110 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.110 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 6
    včera 18:11 | IT novinky

    Apple představil 13palcový MacBook Neo s čipem A18 Pro. V základní konfiguraci za 16 990 Kč.

    Ladislav Hagara | Komentářů: 30
    včera 12:22 | Komunita

    Kalifornský zákon AB 1043 platný od 1. ledna 2027 vyžaduje, aby operační systémy požadovaly po uživatelích věk nebo datum narození a skrze API poskytovaly aplikacím informaci, zda je uživatel mladší 13 let, má 13 až 16 let, má 16 až 18 let nebo má alespoň 18 let. Vývojáři linuxových distribucí řeší, co s tím (Ubuntu, Fedora, …).

    Ladislav Hagara | Komentářů: 70
    včera 11:44 | Pozvánky

    Konference LinuxDays 2026 proběhne o víkendu 3. a 4. října v Praze v areálu ČVUT v Dejvicích na FIT. Čekají vás desítky přednášek, workshopy, stánky a setkání se spoustou chytrých lidí.

    Petr Krčmář | Komentářů: 0
    včera 00:44 | Humor

    Nové verze webových prohlížečů Chrome a Firefox jsou vydávány každé 4 týdny. Aktuální verze Chrome je 145. Aktuální verze Firefoxu je 148. Od září přejde Chrome na dvoutýdenní cyklus vydávání. V kterém týdnu bude mít Chrome větší číslo verze než Firefox? 😀

    Ladislav Hagara | Komentářů: 1
    3.3. 21:55 | IT novinky Ladislav Hagara | Komentářů: 4
    3.3. 13:44 | Komunita

    Bylo spuštěno hlasování o přednáškách a workshopech pro letošní Installfest, jenž proběhne o víkendu 28. a 29. března v Praze na Karlově náměstí 13.

    Ladislav Hagara | Komentářů: 4
    3.3. 04:33 | Nová verze

    Byla vydána (Mastodon, 𝕏) třetí RC verze GIMPu 3.2. Přehled novinek v oznámení o vydání. Podrobně v souboru NEWS na GitLabu.

    Ladislav Hagara | Komentářů: 0
    2.3. 21:44 | IT novinky

    Apple představil iPhone 17e a iPad Air s čipem M4.

    Ladislav Hagara | Komentářů: 18
    2.3. 21:11 | Zajímavý software

    Byla vydána verze 1.0 editoru kódů Gram. Jedná se o fork editoru Zed bez telemetrie a umělé inteligence.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (17%)
     (7%)
     (0%)
     (11%)
     (28%)
     (2%)
     (5%)
     (1%)
     (13%)
     (25%)
    Celkem 1015 hlasů
     Komentářů: 25, poslední 3.2. 19:50
    Rozcestník

    Dotaz: Zkušenosti s VFIO Virtual Function I/O (qemu/kvm)

    7.6.2014 02:34 Lazar
    Zkušenosti s VFIO Virtual Function I/O (qemu/kvm)
    Přečteno: 549×

    VFIO .. Způsob zpřístupnění fyzického HW v GuestOSu (QEMU/KVM) s využitím IOMMU/VT-d.

    https://www.kernel.org/doc/Documentation/vfio.txt

    https://bbs.archlinux.org/viewtopic.php?id=162768

    Vycházeje z tohoto návodu, podařilo se mi GuestOSu (sorry za Windows) zpřístupnit jak 2.GK(PCIe ATI), tak například SCSI řadič (PCI Adaptec). Použita distribuce Kubuntu 14.04x64 s vanilla jádrem 3.14.4.

    http://www.monitos.cz/tmp/x3430_vfio_pci_scsi.png

    PCI strom (lspci -k) vypadá takto:
    -+-[0000:ff]-+-00.0
     |           +-00.1
     |           +-02.0
     |           +-02.1
     |           +-03.0
     |           +-03.1
     |           +-03.2
     |           +-03.4
     |           +-04.0
     |           +-04.1
     |           +-04.2
     |           +-04.3
     |           +-05.0
     |           +-05.1
     |           +-05.2
     |           \-05.3
     \-[0000:00]-+-00.0
                 +-03.0-[01-05]----00.0-[02-05]--+-00.0-[03]----00.0
                 |                               +-02.0-[04]--+-00.0
                 |                               |            \-00.1
                 |                               \-03.0-[05]----00.0
                 +-08.0
                 +-08.1
                 +-08.2
                 +-08.3
                 +-10.0
                 +-10.1
                 +-1a.0
                 +-1b.0
                 +-1c.0-[06]----00.0
                 +-1c.1-[07]----00.0
                 +-1c.2-[08]----00.0
                 +-1c.3-[09]--+-00.0
                 |            \-00.1
                 +-1c.6-[0a]--+-00.0
                 |            \-00.1
                 +-1d.0
                 +-1e.0-[0b]--
                 +-1f.0
                 +-1f.2
                 \-1f.3
    

    Kombinované SATA/IDE řadiče JMicron jsou připojeny na 09:00.0,09:00.1 (druhý 0a:00.0,0a:00.1). Při snaze o zpřístupnění v GuestOSu jednoho z integrovaných SATA/IDE řadičů JMicron JB36x na MB, základní deska MSI Big Bang Trinergy MSI-7580 (MB:P55/NF200-based + CPU:X3430 jich obsahuje několik, se mi objevilo hlášení.

    group 6 is not viable, please ensure all devices within the iommu_group

    Problém asi spočívá v omezené granulaci IOMMU, takže bylo nutné přiřadit všechny členy iommu groupy 1c.0 až 1c.6 (pravděpodobně jde o sdílení společných zdrojů .. IRQ?). Po tomto opatření již většina zařízení byla v GuestOSu dostupná. Vzhledem k tomu, že celkem šlo o 2xNIC,1xFireWire,1xSATA/IDE JMB36x (druhy radic ovladač neinicializoval), nezbylo slovy klasika: "Již nikoho kdo by se na živý obraz díval.". HostOSu jsem musel přidat USB WLAN, aby měl aspoň nějakou síťovou konektivitu. ;-)

    http://www.monitos.cz/tmp/x3430_vfio_group.png

    Neberte založené téma prosím jako problém/dotaz, ale spíše jako snahu o oživení debaty k této zajímavé problematice.

    Odpovědi

    7.6.2014 17:49 Lazar
    Rozbalit Rozbalit vše Re: Zkušenosti s VFIO Virtual Function I/O (qemu/kvm)
    Doplnění:

    Na denním světle vypadá osazení trochu jinak. Externí řadiče jsou celkem ctyři dle geografie MB by se nabízelo JBM363(obsluha IDE?), 2x JMB322(2x 2 SATA RAID porty?) a JBM362(2x eSATA?).
    09:00.0 SATA controller [0106]: JMicron Technology Corp. JMB363 SATA/IDE Controller [197b:2363] (rev 03)
    09:00.1 IDE interface [0101]: JMicron Technology Corp. JMB363 SATA/IDE Controller [197b:2363] (rev 03)
    0a:00.0 SATA controller [0106]: JMicron Technology Corp. JMB363 SATA/IDE Controller [197b:2363] (rev 03)
    0a:00.1 IDE interface [0101]: JMicron Technology Corp. JMB363 SATA/IDE Controller [197b:2363] (rev 03)
    
    Lspci vzhledem k shodným vendor:device hodnotám v identifikaci moc nepomůže.

    Nakonec se podařilo v GuestOSu fyzicky zpřístupnit: samostatný HDD na eSATA, samostatný HDD na jednom z RAID řadičů, RAID1 na druhém RAID řadiči, DVD IDE byla si v GuestOS viditelná, ale nefungovala (ovladač IDE řadiče chybu nehlásil).

    http://www.monitos.cz/tmp/x3430_vfio_group_attach_hdds.png

    Z v úvodu zmíněného návodu zbývá k dořešení rest s propagací/využitím BIOSu VGA pro přidelenou GK, tj. zpřístupnění obrazu již po zapnutí virtuálního stroje.
    15.6.2014 19:11 Lazar
    Rozbalit Rozbalit vše Re: Zkušenosti s VFIO Virtual Function I/O (qemu/kvm)
    Hodnota 10ec:8168 v parametru pci-stub.ids v GRUBu zabere nejen na integrované Realtek Gigabit NICy, ale i na ten umístěný do PCIe 1x.

    K zajištění jeho funkcionality v HostOSu stačilo (snad správně?) do rc.local přidat unbind pci-stub a modprobe r8169.
    echo -n "10ec 8168" > /sys/bus/pci/drivers/pci-stub/new_id
    echo -n 0000:0a:00.0 > /sys/bus/pci/drivers/pci-stub/unbind
    modprobe r8169
    
    
    ....
    
    root@kubuntu:~# lspci -k |grep 8111 -A 2
    06:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 03)
            Subsystem: Micro-Star International Co., Ltd. [MSI] Device 7580
            Kernel driver in use: pci-stub
    07:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 03)
            Subsystem: Micro-Star International Co., Ltd. [MSI] Device 7580
            Kernel driver in use: pci-stub
    --
    0a:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)
            Subsystem: Realtek Semiconductor Co., Ltd. Device 0123
            Kernel driver in use: r8169
    
    16.6.2014 22:53 Lazar
    Rozbalit Rozbalit vše Re: Zkušenosti s VFIO Virtual Function I/O (qemu/kvm)
    Ukazalo se, ze dotycny PCIe 1x slot patri do iommu group 6 (rada zarizeni sdilena GuestOSu), takze pro HostOS je "ztracen". Pro HostOS vyclenena PCI RT8139, ktera je samostatne (s PCI bridgem?) v iommu group 8.

    Nevite nekdo o nejake Live distribuci se zapnutou podporou IOMMU/VT-d v kernelu, po prvotni overeni dostupnosti (vypis dmesg s klicovymi slovy) teto technologie na dane kombinaci MB/CPU?

    root@kubuntu:~# ls -la /sys/kernel/iommu_groups/*/devices/
    /sys/kernel/iommu_groups/0/devices/:
    total 0
    drwxr-xr-x 2 root root 0 čen 16 22:12 .
    drwxr-xr-x 3 root root 0 čen 16 22:12 ..
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:00:00.0 -> ../../../../devices/pci0000:00/0000:00:00.0
    
    /sys/kernel/iommu_groups/10/devices/:
    total 0
    drwxr-xr-x 2 root root 0 čen 16 22:12 .
    drwxr-xr-x 3 root root 0 čen 16 22:12 ..
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:01:00.0 -> ../../../../devices/pci0000:00/0000:00:03.0/0000:01:00.0
    
    /sys/kernel/iommu_groups/11/devices/:
    total 0
    drwxr-xr-x 2 root root 0 čen 16 22:12 .
    drwxr-xr-x 3 root root 0 čen 16 22:12 ..
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:02:00.0 -> ../../../../devices/pci0000:00/0000:00:03.0/0000:01:00.0/0000:02:00.0
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:03:00.0 -> ../../../../devices/pci0000:00/0000:00:03.0/0000:01:00.0/0000:02:00.0/0000:03:00.0
    
    /sys/kernel/iommu_groups/12/devices/:
    total 0
    drwxr-xr-x 2 root root 0 čen 16 22:12 .
    drwxr-xr-x 3 root root 0 čen 16 22:12 ..
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:02:02.0 -> ../../../../devices/pci0000:00/0000:00:03.0/0000:01:00.0/0000:02:02.0
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:04:00.0 -> ../../../../devices/pci0000:00/0000:00:03.0/0000:01:00.0/0000:02:02.0/0000:04:00.0
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:04:00.1 -> ../../../../devices/pci0000:00/0000:00:03.0/0000:01:00.0/0000:02:02.0/0000:04:00.1
    
    /sys/kernel/iommu_groups/13/devices/:
    total 0
    drwxr-xr-x 2 root root 0 čen 16 22:12 .
    drwxr-xr-x 3 root root 0 čen 16 22:12 ..
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:02:03.0 -> ../../../../devices/pci0000:00/0000:00:03.0/0000:01:00.0/0000:02:03.0
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:05:00.0 -> ../../../../devices/pci0000:00/0000:00:03.0/0000:01:00.0/0000:02:03.0/0000:05:00.0
    
    /sys/kernel/iommu_groups/14/devices/:
    total 0
    drwxr-xr-x 2 root root 0 čen 16 22:12 .
    drwxr-xr-x 3 root root 0 čen 16 22:12 ..
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:ff:00.0 -> ../../../../devices/pci0000:ff/0000:ff:00.0
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:ff:00.1 -> ../../../../devices/pci0000:ff/0000:ff:00.1
    
    /sys/kernel/iommu_groups/15/devices/:
    total 0
    drwxr-xr-x 2 root root 0 čen 16 22:12 .
    drwxr-xr-x 3 root root 0 čen 16 22:12 ..
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:ff:02.0 -> ../../../../devices/pci0000:ff/0000:ff:02.0
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:ff:02.1 -> ../../../../devices/pci0000:ff/0000:ff:02.1
    
    /sys/kernel/iommu_groups/16/devices/:
    total 0
    drwxr-xr-x 2 root root 0 čen 16 22:12 .
    drwxr-xr-x 3 root root 0 čen 16 22:12 ..
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:ff:03.0 -> ../../../../devices/pci0000:ff/0000:ff:03.0
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:ff:03.1 -> ../../../../devices/pci0000:ff/0000:ff:03.1
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:ff:03.2 -> ../../../../devices/pci0000:ff/0000:ff:03.2
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:ff:03.4 -> ../../../../devices/pci0000:ff/0000:ff:03.4
    
    /sys/kernel/iommu_groups/17/devices/:
    total 0
    drwxr-xr-x 2 root root 0 čen 16 22:12 .
    drwxr-xr-x 3 root root 0 čen 16 22:12 ..
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:ff:04.0 -> ../../../../devices/pci0000:ff/0000:ff:04.0
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:ff:04.1 -> ../../../../devices/pci0000:ff/0000:ff:04.1
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:ff:04.2 -> ../../../../devices/pci0000:ff/0000:ff:04.2
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:ff:04.3 -> ../../../../devices/pci0000:ff/0000:ff:04.3
    
    /sys/kernel/iommu_groups/18/devices/:
    total 0
    drwxr-xr-x 2 root root 0 čen 16 22:12 .
    drwxr-xr-x 3 root root 0 čen 16 22:12 ..
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:ff:05.0 -> ../../../../devices/pci0000:ff/0000:ff:05.0
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:ff:05.1 -> ../../../../devices/pci0000:ff/0000:ff:05.1
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:ff:05.2 -> ../../../../devices/pci0000:ff/0000:ff:05.2
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:ff:05.3 -> ../../../../devices/pci0000:ff/0000:ff:05.3
    
    /sys/kernel/iommu_groups/1/devices/:
    total 0
    drwxr-xr-x 2 root root 0 čen 16 22:12 .
    drwxr-xr-x 3 root root 0 čen 16 22:12 ..
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:00:03.0 -> ../../../../devices/pci0000:00/0000:00:03.0
    
    /sys/kernel/iommu_groups/2/devices/:
    total 0
    drwxr-xr-x 2 root root 0 čen 16 22:12 .
    drwxr-xr-x 3 root root 0 čen 16 22:12 ..
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:00:08.0 -> ../../../../devices/pci0000:00/0000:00:08.0
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:00:08.1 -> ../../../../devices/pci0000:00/0000:00:08.1
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:00:08.2 -> ../../../../devices/pci0000:00/0000:00:08.2
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:00:08.3 -> ../../../../devices/pci0000:00/0000:00:08.3
    
    /sys/kernel/iommu_groups/3/devices/:
    total 0
    drwxr-xr-x 2 root root 0 čen 16 22:12 .
    drwxr-xr-x 3 root root 0 čen 16 22:12 ..
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:00:10.0 -> ../../../../devices/pci0000:00/0000:00:10.0
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:00:10.1 -> ../../../../devices/pci0000:00/0000:00:10.1
    
    /sys/kernel/iommu_groups/4/devices/:
    total 0
    drwxr-xr-x 2 root root 0 čen 16 22:12 .
    drwxr-xr-x 3 root root 0 čen 16 22:12 ..
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:00:1a.0 -> ../../../../devices/pci0000:00/0000:00:1a.0
    
    /sys/kernel/iommu_groups/5/devices/:
    total 0
    drwxr-xr-x 2 root root 0 čen 16 22:12 .
    drwxr-xr-x 3 root root 0 čen 16 22:12 ..
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:00:1b.0 -> ../../../../devices/pci0000:00/0000:00:1b.0
    
    /sys/kernel/iommu_groups/6/devices/:
    total 0
    drwxr-xr-x 2 root root 0 čen 16 22:12 .
    drwxr-xr-x 3 root root 0 čen 16 22:12 ..
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:00:1c.0 -> ../../../../devices/pci0000:00/0000:00:1c.0
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:00:1c.1 -> ../../../../devices/pci0000:00/0000:00:1c.1
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:00:1c.2 -> ../../../../devices/pci0000:00/0000:00:1c.2
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:00:1c.3 -> ../../../../devices/pci0000:00/0000:00:1c.3
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:00:1c.5 -> ../../../../devices/pci0000:00/0000:00:1c.5
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:00:1c.6 -> ../../../../devices/pci0000:00/0000:00:1c.6
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:06:00.0 -> ../../../../devices/pci0000:00/0000:00:1c.0/0000:06:00.0
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:07:00.0 -> ../../../../devices/pci0000:00/0000:00:1c.1/0000:07:00.0
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:08:00.0 -> ../../../../devices/pci0000:00/0000:00:1c.2/0000:08:00.0
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:09:00.0 -> ../../../../devices/pci0000:00/0000:00:1c.3/0000:09:00.0
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:09:00.1 -> ../../../../devices/pci0000:00/0000:00:1c.3/0000:09:00.1
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:0a:00.0 -> ../../../../devices/pci0000:00/0000:00:1c.5/0000:0a:00.0
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:0b:00.0 -> ../../../../devices/pci0000:00/0000:00:1c.6/0000:0b:00.0
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:0b:00.1 -> ../../../../devices/pci0000:00/0000:00:1c.6/0000:0b:00.1
    
    /sys/kernel/iommu_groups/7/devices/:
    total 0
    drwxr-xr-x 2 root root 0 čen 16 22:12 .
    drwxr-xr-x 3 root root 0 čen 16 22:12 ..
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:00:1d.0 -> ../../../../devices/pci0000:00/0000:00:1d.0
    
    /sys/kernel/iommu_groups/8/devices/:
    total 0
    drwxr-xr-x 2 root root 0 čen 16 22:12 .
    drwxr-xr-x 3 root root 0 čen 16 22:12 ..
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:00:1e.0 -> ../../../../devices/pci0000:00/0000:00:1e.0
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:0c:01.0 -> ../../../../devices/pci0000:00/0000:00:1e.0/0000:0c:01.0
    
    /sys/kernel/iommu_groups/9/devices/:
    total 0
    drwxr-xr-x 2 root root 0 čen 16 22:12 .
    drwxr-xr-x 3 root root 0 čen 16 22:12 ..
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:00:1f.0 -> ../../../../devices/pci0000:00/0000:00:1f.0
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:00:1f.2 -> ../../../../devices/pci0000:00/0000:00:1f.2
    lrwxrwxrwx 1 root root 0 čen 16 22:12 0000:00:1f.3 -> ../../../../devices/pci0000:00/0000:00:1f.3
    

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.