# git rev-parse -q --verify 78e7b15e17ac175e7eed9e21c6f92d03d3b0a6fa^{commit} 78e7b15e17ac175e7eed9e21c6f92d03d3b0a6fa already have revision, skipping fetch # git checkout -q -f -B kisskb 78e7b15e17ac175e7eed9e21c6f92d03d3b0a6fa # git clean -qxdf # < git log -1 # commit 78e7b15e17ac175e7eed9e21c6f92d03d3b0a6fa # Author: Radu Rendec # Date: Tue Nov 27 22:20:48 2018 -0500 # # powerpc/msi: Fix NULL pointer access in teardown code # # The arch_teardown_msi_irqs() function assumes that controller ops # pointers were already checked in arch_setup_msi_irqs(), but this # assumption is wrong: arch_teardown_msi_irqs() can be called even when # arch_setup_msi_irqs() returns an error (-ENOSYS). # # This can happen in the following scenario: # - msi_capability_init() calls pci_msi_setup_msi_irqs() # - pci_msi_setup_msi_irqs() returns -ENOSYS # - msi_capability_init() notices the error and calls free_msi_irqs() # - free_msi_irqs() calls pci_msi_teardown_msi_irqs() # # This is easier to see when CONFIG_PCI_MSI_IRQ_DOMAIN is not set and # pci_msi_setup_msi_irqs() and pci_msi_teardown_msi_irqs() are just # aliases to arch_setup_msi_irqs() and arch_teardown_msi_irqs(). # # The call to free_msi_irqs() upon pci_msi_setup_msi_irqs() failure # seems legit, as it does additional cleanup; e.g. # list_del(&entry->list) and kfree(entry) inside free_msi_irqs() do # happen (MSI descriptors are allocated before pci_msi_setup_msi_irqs() # is called and need to be cleaned up if that fails). # # Fixes: 6b2fd7efeb88 ("PCI/MSI/PPC: Remove arch_msi_check_device()") # Cc: stable@vger.kernel.org # v3.18+ # Signed-off-by: Radu Rendec # Signed-off-by: Michael Ellerman # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-gcc --version # < git log --format=%s --max-count=1 78e7b15e17ac175e7eed9e21c6f92d03d3b0a6fa # < make -s -j 48 ARCH=powerpc O=/kisskb/build/powerpc-fixes_ppc6xx_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- ppc6xx_defconfig # make -s -j 48 ARCH=powerpc O=/kisskb/build/powerpc-fixes_ppc6xx_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- In file included from /kisskb/src/sound/ppc/pmac.h:25:0, from /kisskb/src/sound/ppc/awacs.c:29: /kisskb/src/sound/ppc/awacs.c: In function 'snd_pmac_awacs_init': /kisskb/src/include/sound/control.h:223:9: warning: 'speaker_vol' may be used uninitialized in this function [-Wmaybe-uninitialized] return _snd_ctl_add_slave(master, slave, 0); ^ /kisskb/src/sound/ppc/awacs.c:886:36: note: 'speaker_vol' was declared here struct snd_kcontrol *master_vol, *speaker_vol; ^ /kisskb/src/scripts/unifdef.c: In function 'Mpass': /kisskb/src/scripts/unifdef.c:453:28: warning: 'strncpy' output truncated before terminating nul copying 4 bytes from a string of the same length [-Wstringop-truncation] static void Mpass (void) { strncpy(keyword, "if ", 4); Pelif(); } ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ./usr/include/linux/v4l2-controls.h:1105: found __[us]{8,16,32,64} type without #include arch/powerpc/boot/dts/mpc832x_rdb.dtb: Warning (interrupts_property): /qe@e0100000/mdio@3120/ethernet-phy@0:#interrupt-cells: size is (4), expected multiple of 8 arch/powerpc/boot/dts/mpc832x_rdb.dtb: Warning (interrupts_property): /qe@e0100000/mdio@3120/ethernet-phy@4:#interrupt-cells: size is (4), expected multiple of 8 INFO: Uncompressed kernel (size 0xa9b864) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xb00000) INFO: Uncompressed kernel (size 0xa9b864) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xb00000) INFO: Uncompressed kernel (size 0xa9b864) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xb00000) INFO: Uncompressed kernel (size 0xa9b864) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xb00000) INFO: Uncompressed kernel (size 0xa9b864) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xb00000) INFO: Uncompressed kernel (size 0xa9b864) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xb00000) INFO: Uncompressed kernel (size 0xa9b864) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xb00000) INFO: Uncompressed kernel (size 0xa9b864) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xb00000) INFO: Uncompressed kernel (size 0xa9b864) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xb00000) INFO: Uncompressed kernel (size 0xa9b864) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xb00000) INFO: Uncompressed kernel (size 0xa8b14c) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xb00000) INFO: Uncompressed kernel (size 0xa8b14c) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xb00000) Image Name: Linux-4.20.0-rc1+ Created: Fri Nov 30 01:03:43 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5074637 Bytes = 4955.70 KiB = 4.84 MiB Load Address: 00000000 Entry Point: 00000000 Image Name: Linux-4.20.0-rc1+ Created: Fri Nov 30 01:03:44 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5105176 Bytes = 4985.52 KiB = 4.87 MiB Load Address: 00b00000 Entry Point: 00b00294 Image Name: Linux-4.20.0-rc1+ Created: Fri Nov 30 01:03:44 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5105216 Bytes = 4985.56 KiB = 4.87 MiB Load Address: 00b00000 Entry Point: 00b00294 Image Name: Linux-4.20.0-rc1+ Created: Fri Nov 30 01:03:44 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5105334 Bytes = 4985.68 KiB = 4.87 MiB Load Address: 00b00000 Entry Point: 00b00894 Image Name: Linux-4.20.0-rc1+ Created: Fri Nov 30 01:03:44 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5104636 Bytes = 4985.00 KiB = 4.87 MiB Load Address: 00b00000 Entry Point: 00b00294 Image Name: Linux-4.20.0-rc1+ Created: Fri Nov 30 01:03:44 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5105324 Bytes = 4985.67 KiB = 4.87 MiB Load Address: 00b00000 Entry Point: 00b00894 Image Name: Linux-4.20.0-rc1+ Created: Fri Nov 30 01:03:44 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5105283 Bytes = 4985.63 KiB = 4.87 MiB Load Address: 00b00000 Entry Point: 00b00294 Image Name: Linux-4.20.0-rc1+ Created: Fri Nov 30 01:03:45 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5105342 Bytes = 4985.69 KiB = 4.87 MiB Load Address: 00b00000 Entry Point: 00b00294 Image Name: Linux-4.20.0-rc1+ Created: Fri Nov 30 01:03:45 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5105340 Bytes = 4985.68 KiB = 4.87 MiB Load Address: 00b00000 Entry Point: 00b00294 Completed OK # rm -rf /kisskb/build/powerpc-fixes_ppc6xx_defconfig_powerpc-gcc5 # Build took: 0:03:42.766257