> > I'm not sure if those are relevant to this case.
> 
> It is, in a way.
> 
> > Does opensuse Xen Dom0 boot from GRUB2+UEFI?
> 
> I suppose so, but using the chainloader command, not the "normal"
> mechanism to invoke a multiboot aware OS. I would have thought
> that you even get respective entries created when installing Xen,
> which you could then at least use as reference. The chainloader
> mechanism of course requires using xen.efi, not xen.gz.
> 
> (To be precise, booting xen.gz to "normal" way is possible on some
> systems - the main prerequisite is that despite there being UEFI the
> firmware also exposes ACPI tables such that they can be found
> without using EFI mechanisms.)

Reading

        http://wiki.xenproject.org/wiki/Xen_EFI

                Xen 4.3 and later can be built as EFI binaries. Xen 4.5 can be 
built as an EFI binary under ARM.

                Linux 3.17 and later when built with CONFIG_XEN_EFI can be 
booted under Xen in EFI platform. 

Checking the prereqs I did find the EFI binary

        find / | grep xen.efi
                /usr/lib64/efi/xen.efi
        rpm -q --whatprovides /usr/lib64/efi/xen.efi
                xen-4.5.0_03-359.6.x86_64

Reading, the kernel's been patched to check for using the CONFIG_XEN_EFI flag

        Put EFI machinery for Xen in place
        http://markmail.org/message/3zumxhat4trjkaeu

Checking for it, it's missing from the installed Xen kernel's config

        grep -i efi /boot/config-3.19.2-3.gd8856ce-xen 
                CONFIG_EFI_PARTITION=y
                CONFIG_EFI=y
                CONFIG_EFI_STUB=y
                # Software defined radio USB devices
                CONFIG_FB_EFI=y
                CONFIG_RTC_DRV_EFI=m
                CONFIG_DMI_SCAN_MACHINE_NON_EFI_FALLBACK=y
                # EFI (Extensible Firmware Interface) Support
                CONFIG_EFI_VARS=m
                CONFIG_EFI_VARS_PSTORE=m
                # CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set
                CONFIG_UEFI_CPER=y
                CONFIG_CACHEFILES=m
                # CONFIG_CACHEFILES_DEBUG is not set
                # CONFIG_CACHEFILES_HISTOGRAM is not set
                CONFIG_EFIVAR_FS=m

IIUC it's required.

Is there an available kernel for openSUSE with that flag?


Also it looks like direct grub2 booting of xen.gz as ELF binary is deferred 
until Xen 4.6

        Xen as gz binary

                GRUB2 loader when built as an EFI binary can load various 
OS-es. The most common one is Linux where it uses the linuxefi GRUB module. 
However GRUB2 also has support for multiboot protocol which is what Xen uses. 
Sadly v1 of multiboot API does not have enough data to provide information to 
Xen under the EFI platform.

                As such a [[5]proposal] had been discussed to add a 
multibootv2+EFI API which would provide enough data such that GRUB2's multiboot 
module could pass that to Xen compiled as ELF binary (.gz).

                This would allow:

                EFI firmware => GRUB2.EFI -> multiboot2 -> [xen.gz, vmlinuz, 
ramdisk]

                And GRUB2 would be responsible for reading from the ESP the 
various files and loading them in the memory.

                That work has been deferred to Xen 4.6.

unless there's been more recent progress, either at opensuse or upstream.

Does opensuse's Xen 4.5 support the xen.gz booting *now*?

If not, the mentioned chainloading appears to be the alternative

The provided GRUB2 chainloader example @ Xen upstream is:

        menuentry "Xen EFI" {
            insmod part_gpt
            insmod search_fs_uuid
            insmod chain
            chainloader (hd0,gpt1)/EFI/XEN/xen.efi
        }

I didn't find any example or mention in the opensuse install. Yet.

You mentioned that direct 'normal' booting of the xen.gz might be possible with 
sufficient exposure of the acpi tables.

I'm not sure how to check.  The related dmesg output while booting the -default 
kernel is

        dmesg | grep -i acpi
                [    0.000000] Command line: 
BOOT_IMAGE=/vmlinuz-3.19.2-3.gd8856ce-default 
root=UUID=4753623b-a7c2-2cc6-a9de-72171b816057 ro splash=silent noresume 
showopts noquiet nomodeset vga=0x034c clocksource=acpi_pm divider=10 
pcie_aspm=off systemd.log_target=journal-or-kmsg systemd.log_level=info 
loglevel=info
                [    0.000000] BIOS-e820: [mem 
0x000000008daee000-0x000000008daf4fff] ACPI NVS
                [    0.000000] BIOS-e820: [mem 
0x000000009e8a1000-0x000000009e9cffff] ACPI NVS
                [    0.000000] reserve setup_data: [mem 
0x000000008daee000-0x000000008daf4fff] ACPI NVS
                [    0.000000] reserve setup_data: [mem 
0x000000009e8a1000-0x000000009e9cffff] ACPI NVS
                [    0.000000] efi:  ACPI 2.0=0x9e9a5000  ACPI=0x9e9a5000  
SMBIOS=0xf04c0  MPS=0xfd490 
                [    0.000000] efi: mem18: [ACPI Memory NVS    |   |  |  |  |   
|WB|WT|WC|UC] range=[0x000000008daee000-0x000000008daf5000) (0MB)
                [    0.000000] efi: mem89: [ACPI Memory NVS    |   |  |  |  |   
|WB|WT|WC|UC] range=[0x000000009e8a1000-0x000000009e9bd000) (1MB)
                [    0.000000] efi: mem90: [ACPI Memory NVS    |   |  |  |  |   
|WB|WT|WC|UC] range=[0x000000009e9bd000-0x000000009e9cc000) (0MB)
                [    0.000000] efi: mem91: [ACPI Memory NVS    |   |  |  |  |   
|WB|WT|WC|UC] range=[0x000000009e9cc000-0x000000009e9d0000) (0MB)
                [    0.000000] ACPI: Early table checksum verification disabled
                [    0.000000] ACPI: RSDP 0x000000009E9A5000 000024 (v02 SUPERM)
                [    0.000000] ACPI: XSDT 0x000000009E9A5098 0000B4 (v01 SUPERM 
SMCI--MB 01072009 AMI  00010013)
                [    0.000000] ACPI: FACP 0x000000009E9B0BB8 00010C (v05 SUPERM 
SMCI--MB 01072009 AMI  00010013)
                [    0.000000] ACPI: DSDT 0x000000009E9A51E8 00B9C9 (v02 SUPERM 
SMCI--MB 00000000 INTL 20120711)
                [    0.000000] ACPI: FACS 0x000000009E9CFF80 000040
                [    0.000000] ACPI: APIC 0x000000009E9B0CC8 000072 (v03 SUPERM 
SMCI--MB 01072009 AMI  00010013)
                [    0.000000] ACPI: FPDT 0x000000009E9B0D40 000044 (v01 SUPERM 
SMCI--MB 01072009 AMI  00010013)
                [    0.000000] ACPI: SSDT 0x000000009E9B0D88 000BEE (v01 Ther_R 
Ther_Rvp 00001000 INTL 20120711)
                [    0.000000] ACPI: SSDT 0x000000009E9B1978 000539 (v01 PmRef  
Cpu0Ist  00003000 INTL 20051117)
                [    0.000000] ACPI: SSDT 0x000000009E9B1EB8 000B74 (v01 CpuRef 
CpuSsdt  00003000 INTL 20051117)
                [    0.000000] ACPI: SSDT 0x000000009E9B2A30 0002DE (v01 PmRef  
Cpu0Tst  00003000 INTL 20051117)
                [    0.000000] ACPI: SSDT 0x000000009E9B2D10 000348 (v01 PmRef  
ApTst    00003000 INTL 20051117)
                [    0.000000] ACPI: MCFG 0x000000009E9B3058 00003C (v01 SUPERM 
SMCI--MB 01072009 MSFT 00000097)
                [    0.000000] ACPI: HPET 0x000000009E9B3098 000038 (v01 SUPERM 
SMCI--MB 01072009 AMI. 00000005)
                [    0.000000] ACPI: SSDT 0x000000009E9B30D0 000397 (v01 SataRe 
SataTabl 00001000 INTL 20120711)
                [    0.000000] ACPI: SSDT 0x000000009E9B3468 005B5E (v01 SaSsdt 
SaSsdt   00003000 INTL 20120711)
                [    0.000000] ACPI: ASF! 0x000000009E9B8FC8 0000A5 (v32 INTEL  
 HCG     00000001 TFSM 000F4240)
                [    0.000000] ACPI: DMAR 0x000000009E9B9070 000080 (v01 INTEL  
BDW      00000001 INTL 00000001)
                [    0.000000] ACPI: EINJ 0x000000009E9B90F0 000130 (v01 AMI    
AMI EINJ 00000000      00000000)
                [    0.000000] ACPI: ERST 0x000000009E9B9220 000230 (v01 AMIER  
AMI ERST 00000000      00000000)
                [    0.000000] ACPI: HEST 0x000000009E9B9450 0000A8 (v01 AMI    
AMI HEST 00000000      00000000)
                [    0.000000] ACPI: BERT 0x000000009E9B94F8 000030 (v01 AMI    
AMI BERT 00000000      00000000)
                [    0.000000] ACPI: Local APIC address 0xfee00000
                [    0.000000] ACPI: PM-Timer IO Port: 0x1808
                [    0.000000] ACPI: Local APIC address 0xfee00000
                [    0.000000] ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] 
enabled)
                [    0.000000] ACPI: LAPIC (acpi_id[0x02] lapic_id[0x02] 
enabled)
                [    0.000000] ACPI: LAPIC (acpi_id[0x03] lapic_id[0x04] 
enabled)
                [    0.000000] ACPI: LAPIC (acpi_id[0x04] lapic_id[0x06] 
enabled)
                [    0.000000] ACPI: LAPIC_NMI (acpi_id[0xff] high edge 
lint[0x1])
                [    0.000000] ACPI: IOAPIC (id[0x08] address[0xfec00000] 
gsi_base[0])
                [    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 
dfl dfl)
                [    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 
high level)
                [    0.000000] ACPI: IRQ0 used by override.
                [    0.000000] ACPI: IRQ9 used by override.
                [    0.000000] Using ACPI (MADT) for SMP configuration 
information
                [    0.000000] ACPI: HPET id: 0x8086a701 base: 0xfed00000
                [    0.000000] Kernel command line: 
BOOT_IMAGE=/vmlinuz-3.19.2-3.gd8856ce-default 
root=UUID=4753623b-a7c2-2cc6-a9de-72171b816057 ro splash=silent noresume 
showopts noquiet nomodeset vga=0x034c clocksource=acpi_pm divider=10 
pcie_aspm=off systemd.log_target=journal-or-kmsg systemd.log_level=info 
loglevel=info
                [    0.000030] ACPI: Core revision 20141107
                [    0.014758] ACPI: All ACPI Tables successfully acquired
                [    0.126607] PM: Registering ACPI NVS region [mem 
0x8daee000-0x8daf4fff] (28672 bytes)
                [    0.126610] PM: Registering ACPI NVS region [mem 
0x9e8a1000-0x9e9cffff] (1241088 bytes)
                [    0.135861] ACPI FADT declares the system doesn't support 
PCIe ASPM, so disable it
                [    0.135863] ACPI: bus type PCI registered
                [    0.135865] acpiphp: ACPI Hot Plug PCI Controller Driver 
version: 0.5
                [    0.139992] ACPI: Added _OSI(Module Device)
                [    0.139994] ACPI: Added _OSI(Processor Device)
                [    0.139995] ACPI: Added _OSI(3.0 _SCP Extensions)
                [    0.139996] ACPI: Added _OSI(Processor Aggregator Device)
                [    0.143181] ACPI: Executed 5 blocks of module-level 
executable AML code
                [    0.147105] ACPI: Dynamic OEM Table Load:
                [    0.147111] ACPI: SSDT 0xFFFF88083940B400 0003D3 (v01 PmRef  
Cpu0Cst  00003001 INTL 20051117)
                [    0.147741] ACPI: Dynamic OEM Table Load:
                [    0.147745] ACPI: SSDT 0xFFFF880839410000 0005AA (v01 PmRef  
ApIst    00003000 INTL 20051117)
                [    0.148419] ACPI: Dynamic OEM Table Load:
                [    0.148423] ACPI: SSDT 0xFFFF880839412400 000119 (v01 PmRef  
ApCst    00003000 INTL 20051117)
                [    0.149394] ACPI: Interpreter enabled
                [    0.149400] ACPI Exception: AE_NOT_FOUND, While evaluating 
Sleep State [\_S1_] (20141107/hwxface-580)
                [    0.149406] ACPI Exception: AE_NOT_FOUND, While evaluating 
Sleep State [\_S2_] (20141107/hwxface-580)
                [    0.149420] ACPI: (supports S0 S3 S4 S5)
                [    0.149422] ACPI: Using IOAPIC for interrupt routing
                [    0.149471] PCI: Using host bridge windows from ACPI; if 
necessary, use "pci=nocrs" and report a bug
                [    0.149843] ACPI: Power Resource [PG00] (on)
                [    0.150257] ACPI: Power Resource [PG01] (on)
                [    0.150738] ACPI: Power Resource [PG02] (on)
                [    0.157303] ACPI: Power Resource [FN00] (off)
                [    0.157372] ACPI: Power Resource [FN01] (off)
                [    0.157439] ACPI: Power Resource [FN02] (off)
                [    0.157505] ACPI: Power Resource [FN03] (off)
                [    0.157571] ACPI: Power Resource [FN04] (off)
                [    0.158366] ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 
00-7e])
                [    0.158371] acpi PNP0A08:00: _OSC: OS supports 
[ExtendedConfig Segments MSI]
                [    0.158538] acpi PNP0A08:00: _OSC: not requesting OS 
control; OS requires [ExtendedConfig ASPM ClockPM MSI]
                [    0.159465] pci 0000:00:01.0: System wakeup disabled by ACPI
                [    0.159575] pci 0000:00:01.1: System wakeup disabled by ACPI
                [    0.159684] pci 0000:00:01.2: System wakeup disabled by ACPI
                [    0.159862] pci 0000:00:14.0: System wakeup disabled by ACPI
                [    0.160348] pci 0000:00:19.0: System wakeup disabled by ACPI
                [    0.160548] pci 0000:00:1a.0: System wakeup disabled by ACPI
                [    0.160711] pci 0000:00:1b.0: System wakeup disabled by ACPI
                [    0.160858] pci 0000:00:1c.0: System wakeup disabled by ACPI
                [    0.161001] pci 0000:00:1c.1: System wakeup disabled by ACPI
                [    0.161145] pci 0000:00:1c.3: System wakeup disabled by ACPI
                [    0.161297] pci 0000:00:1c.4: System wakeup disabled by ACPI
                [    0.161500] pci 0000:00:1d.0: System wakeup disabled by ACPI
                [    0.162234] pci 0000:01:00.0: System wakeup disabled by ACPI
                [    0.162430] pci 0000:02:00.0: System wakeup disabled by ACPI
                [    0.162747] pci 0000:03:00.0: System wakeup disabled by ACPI
                [    0.163025] pci 0000:04:00.0: System wakeup disabled by ACPI
                [    0.163304] pci 0000:05:00.0: System wakeup disabled by ACPI
                [    0.168709] pci 0000:10:00.0: System wakeup disabled by ACPI
                [    0.168821] acpiphp: Slot [1] registered
                [    0.169619] ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 10 
*11 12 14 15)
                [    0.169687] ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 
*10 11 12 14 15)
                [    0.169752] ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 *5 6 
10 11 12 14 15)
                [    0.169818] ACPI: PCI Interrupt Link [LNKD] (IRQs *3 4 5 6 
10 11 12 14 15)
                [    0.169880] ACPI: PCI Interrupt Link [LNKE] (IRQs 3 4 5 6 10 
*11 12 14 15)
                [    0.169940] ACPI: PCI Interrupt Link [LNKF] (IRQs 3 4 5 6 10 
11 12 14 15) *0, disabled.
                [    0.170004] ACPI: PCI Interrupt Link [LNKG] (IRQs 3 4 5 6 
*10 11 12 14 15)
                [    0.170064] ACPI: PCI Interrupt Link [LNKH] (IRQs 3 4 *5 6 
10 11 12 14 15)
                [    0.170336] ACPI: Enabled 7 GPEs in block 00 to 3F
                [    0.170553] PCI: Using ACPI for IRQ routing
                [    0.179796] pnp: PnP ACPI init
                [    0.179901] system 00:00: Plug and Play ACPI device, IDs 
PNP0c01 (active)
                [    0.179984] system 00:01: Plug and Play ACPI device, IDs 
PNP0c02 (active)
                [    0.180012] pnp 00:02: Plug and Play ACPI device, IDs 
PNP0b00 (active)
                [    0.180050] system 00:03: Plug and Play ACPI device, IDs 
INT3f0d PNP0c02 (active)
                [    0.180162] system 00:04: Plug and Play ACPI device, IDs 
PNP0c02 (active)
                [    0.180415] pnp 00:05: Plug and Play ACPI device, IDs 
PNP0501 (active)
                [    0.180466] system 00:06: Plug and Play ACPI device, IDs 
PNP0c02 (active)
                [    0.180823] system 00:07: Plug and Play ACPI device, IDs 
PNP0c02 (active)
                [    0.181020] pnp: PnP ACPI: found 8 devices
                [    0.187340] Switched to clocksource acpi_pm
                [    2.131474] ata6.00: ACPI cmd ef/10:06:00:00:00:00 (SET 
FEATURES) succeeded
                [    2.131476] ata6.00: ACPI cmd f5/00:00:00:00:00:00 (SECURITY 
FREEZE LOCK) filtered out
                [    2.132612] ata6.00: ACPI cmd b1/c1:00:00:00:00:00 (DEVICE 
CONFIGURATION OVERLAY) filtered out
                [    2.133783] ata5.00: ACPI cmd ef/10:06:00:00:00:00 (SET 
FEATURES) succeeded
                [    2.133785] ata5.00: ACPI cmd f5/00:00:00:00:00:00 (SECURITY 
FREEZE LOCK) filtered out
                [    2.134981] ata5.00: ACPI cmd b1/c1:00:00:00:00:00 (DEVICE 
CONFIGURATION OVERLAY) filtered out
                [    2.589279] ata6.00: ACPI cmd ef/10:06:00:00:00:00 (SET 
FEATURES) succeeded
                [    2.589285] ata6.00: ACPI cmd f5/00:00:00:00:00:00 (SECURITY 
FREEZE LOCK) filtered out
                [    2.589289] ata6.00: ACPI cmd b1/c1:00:00:00:00:00 (DEVICE 
CONFIGURATION OVERLAY) filtered out
                [    2.590716] ata5.00: ACPI cmd ef/10:06:00:00:00:00 (SET 
FEATURES) succeeded
                [    2.590719] ata5.00: ACPI cmd f5/00:00:00:00:00:00 (SECURITY 
FREEZE LOCK) filtered out
                [    2.590722] ata5.00: ACPI cmd b1/c1:00:00:00:00:00 (DEVICE 
CONFIGURATION OVERLAY) filtered out
                [    3.760562] ACPI: Thermal Zone [TZ00] (28 C)
                [    3.763264] ACPI: bus type USB registered
                [    3.768341] ACPI: Thermal Zone [TZ01] (30 C)
                [   22.541598] ACPI: Sleep Button [SLPB]
                [   22.544369] ACPI: Power Button [PWRB]
                [   22.547275] ACPI: Power Button [PWRF]

The line

        ACPI: All ACPI Tables successfully acquired

suggests 'completeness' of some kind.  With this info is 'normal' booting of 
kernel-xen/Xen on this system possible?

LT
-- 
To unsubscribe, e-mail: [email protected]
To contact the owner, e-mail: [email protected]

Reply via email to