# git rev-parse -q --verify b87b9cf4935325c98522823caeddd333022a1c62^{commit} b87b9cf4935325c98522823caeddd333022a1c62 already have revision, skipping fetch # git checkout -q -f -B kisskb b87b9cf4935325c98522823caeddd333022a1c62 # git clean -qxdf # < git log -1 # commit b87b9cf4935325c98522823caeddd333022a1c62 # Author: Sam Bobroff # Date: Mon Jul 30 11:59:14 2018 +1000 # # powerpc/pseries: fix EEH recovery of some IOV devices # # EEH recovery currently fails on pSeries for some IOV capable PCI # devices, if CONFIG_PCI_IOV is on and the hypervisor doesn't provide # certain device tree properties for the device. (Found on an IOV # capable device using the ipr driver.) # # Recovery fails in pci_enable_resources() at the check on r->parent, # because r->flags is set and r->parent is not. This state is due to # sriov_init() setting the start, end and flags members of the IOV BARs # but the parent not being set later in # pseries_pci_fixup_iov_resources(), because the # "ibm,open-sriov-vf-bar-info" property is missing. # # Correct this by zeroing the resource flags for IOV BARs when they # can't be configured (this is the same method used by sriov_init() and # __pci_read_base()). # # VFs cleared this way can't be enabled later, because that requires # another device tree property, "ibm,number-of-configurable-vfs" as well # as support for the RTAS function "ibm_map_pes". These are all part of # hypervisor support for IOV and it seems unlikely that a hypervisor # would ever partially, but not fully, support it. (None are currently # provided by QEMU/KVM.) # # Signed-off-by: Sam Bobroff # Reviewed-by: Bryant G. Ly # Signed-off-by: Michael Ellerman # < /opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux-gcc --version # < git log --format=%s --max-count=1 b87b9cf4935325c98522823caeddd333022a1c62 # < make -s -j 48 ARCH=powerpc O=/kisskb/build/mpe-quick_holly_defconfig_powerpc CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- holly_defconfig # make -s -j 48 ARCH=powerpc O=/kisskb/build/mpe-quick_holly_defconfig_powerpc CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- /kisskb/src/net/Makefile:24: CC cannot link executables. Skipping bpfilter. /kisskb/src/kernel/printk/printk.c: In function 'devkmsg_sysctl_set_loglvl': /kisskb/src/kernel/printk/printk.c:183:16: warning: 'old' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/net/Makefile:24: CC cannot link executables. Skipping bpfilter. /kisskb/src/fs/proc/inode.c: In function 'proc_reg_open': /kisskb/src/include/linux/list.h:65:12: warning: 'pdeo' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/fs/proc/inode.c:339:21: note: 'pdeo' was declared here /kisskb/src/drivers/tty/serial/8250/8250_core.c: In function 'univ8250_release_irq': /kisskb/src/drivers/tty/serial/8250/8250_core.c:251:18: warning: 'i' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/tty/serial/8250/8250_core.c:231:19: note: 'i' was declared here INFO: Uncompressed kernel (size 0x522d6c) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0x600000) Completed OK # rm -rf /kisskb/build/mpe-quick_holly_defconfig_powerpc # Build took: 0:00:33.478096