Hi Zubin, On Thu, Nov 08, 2018 at 09:11:15AM -0800, Zubin Mithra wrote: > pci_root_ops is only written to from within intel_mid_pci_init. This > is linked in only when CONFIG_X86_INTEL_MID is set. If not for this, > pci_root_ops could be marked as const. > > Fix this by replacing pci_root_ops usage with pci_root_ops_ptr. If > CONFIG_X86_INTEL_MID is set, pci_root_ops_ptr will be set to > intel_mid_pci_ops inside intel_mid_pci_init. > > Introduce pci_acpi_set_ops for intel_mid_pci_init to set > acpi_pci_root_ops.pci_ops. > > This also means that intel_mid_pci_ops cannot be freed after init, hence > remove __initconst. > > Signed-off-by: Zubin Mithra <zsm@xxxxxxxxxxxx> > --- > arch/x86/include/asm/pci_x86.h | 4 +++- > arch/x86/pci/acpi.c | 5 +++++ > arch/x86/pci/common.c | 5 +++-- > arch/x86/pci/intel_mid_pci.c | 5 +++-- > drivers/pci/access.c | 4 ++-- > drivers/pci/probe.c | 4 ++-- > include/linux/pci-acpi.h | 2 +- > include/linux/pci.h | 11 ++++++----- > 8 files changed, 25 insertions(+), 15 deletions(-) Can you: - Split this into an x86 patch and a PCI core patch (if possible)? - Make the same fixes for other arches? Bjorn