Konrad Rzeszutek Wilk wrote: >>> +config XEN_ACPI_PAD_STUB >>> + bool >>> + depends on XEN_DOM0 && X86_64 && ACPI >>> + default n >>> + >> >> This Kconfig is pointless, if CONFIG_XEN_ACPI_PAD_STUB = n, native >> pad would successfully registerred, and then mwait #UD (we would >> revert df88b2d96e36d9a9e325bfcd12eb45671cbbc937, right?). So xen >> stub logic should unconditionally built-in kernel. > > > Potentially. Keep in mind that there is no need to built this if the > kernel is not built with ACPI.
Sure, 'obj-$(CONFIG_XEN_DOM0) +=' is enough. (XEN_DOM0 depends on ACPI). >>> +subsys_initcall(xen_acpi_pad_stub_init); >> >> I'm still confused. In this way there are xen-acpi-pad-stub.c and >> xen-acpi-pad.c, and you want to let xen-acpi-pad loaded as module, >> right? how can xen-acpi-pad logic work when it was insmoded? > > Via the register/unregister calls that this provides? Or does ACPI bus > drivers get immediately called once the call acpi_bus_register_driver? But when xen stub driver registerred, real xen pad ops has not been hooked to stub ops. > > Or can one 'poke' the 'add' and 'remove' calls so that once the "true" > PAD driver is loaded it will restart the ops->add call? I think we'd better not to use xen pad stub approach. Technically it's complicated, say, how to match xen_acpi_pad driver w/ pad device? when and how to invoke .add method? how to avoid native pad loading risk? etc. I didn't find its obivous advantages, so how about keep simpler approach? Thanks, Jinsong -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/