2020-04-14 13:54:42

by Stephen Rothwell

[permalink] [raw]
Subject: linux-next: Tree for Apr 14

Hi all,

Changes since 20200413:

New tree: mhi

My fixes tree contains:

6b038bdcd3d1 sh: mm: Fix build error

Non-merge commits (relative to Linus' tree): 1154
1160 files changed, 31764 insertions(+), 13498 deletions(-)

----------------------------------------------------------------------------

I have created today's linux-next tree at
git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
(patches at http://www.kernel.org/pub/linux/kernel/next/ ). If you
are tracking the linux-next tree using git, you should not use "git pull"
to do so as that will try to merge the new linux-next release with the
old one. You should use "git fetch" and checkout or reset to the new
master.

You can see which trees have been included by looking in the Next/Trees
file in the source. There are also quilt-import.log and merge.log
files in the Next directory. Between each merge, the tree was built
with a ppc64_defconfig for powerpc, an allmodconfig for x86_64, a
multi_v7_defconfig for arm and a native build of tools/perf. After
the final fixups (if any), I do an x86_64 modules_install followed by
builds for x86_64 allnoconfig, powerpc allnoconfig (32 and 64 bit),
ppc44x_defconfig, allyesconfig and pseries_le_defconfig and i386, sparc
and sparc64 defconfig and htmldocs. And finally, a simple boot test
of the powerpc pseries_le_defconfig kernel in qemu (with and without
kvm enabled).

Below is a summary of the state of the merge.

I am currently merging 317 trees (counting Linus' and 78 trees of bug
fix patches pending for the current merge release).

Stats about the size of the tree over time can be seen at
http://neuling.org/linux-next-size.html .

Status of my local build tests will be at
http://kisskb.ellerman.id.au/linux-next . If maintainers want to give
advice about cross compilers/configs that work, we are always open to add
more builds.

Thanks to Randy Dunlap for doing many randconfig builds. And to Paul
Gortmaker for triage and bug fixes.

--
Cheers,
Stephen Rothwell

$ git checkout master
$ git reset --hard stable
Merging origin/master (8f3d9f354286 Linux 5.7-rc1)
Merging fixes/master (6b038bdcd3d1 sh: mm: Fix build error)
Merging kbuild-current/fixes (d2f1606edabd scripts/config: allow colons in option strings for sed)
Merging arc-current/for-curr (49b41356f74b ARC: entry: comment)
Merging arm-current/fixes (89604523a76e ARM: 8961/2: Fix Kbuild issue caused by per-task stack protector GCC plugin)
Merging arm-soc-fixes/arm/fixes (c8042d1e5cb3 soc: samsung: chipid: Fix return value on non-Exynos platforms)
Merging arm64-fixes/for-next/fixes (6f5459da2b87 arm64: alternative: fix build with clang integrated assembler)
Merging m68k-current/for-linus (86cded5fc525 m68k: defconfig: Update defconfigs for v5.6-rc4)
Merging powerpc-fixes/fixes (1d0c32ec3b86 KVM: PPC: Fix kernel crash with PR KVM)
Merging s390-fixes/fixes (7111951b8d49 Linux 5.6)
Merging sparc/master (63bef48fd6c9 Merge branch 'akpm' (patches from Andrew))
Merging fscrypt-current/for-stable (2b4eae95c736 fscrypt: don't evict dirty inodes after removing key)
Merging net/master (e154659ba39a mptcp: fix double-unlock in mptcp_poll)
Merging bpf/master (40fc7ad2c886 Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf)
Merging ipsec/master (0452800f6db4 net: dsa: mt7530: fix null pointer dereferencing in port5 setup)
Merging netfilter/master (40fc7ad2c886 Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf)
Merging ipvs/master (0141317611ab Merge branch 'hns3-fixes')
Merging wireless-drivers/master (c9be1a642a7b ath11k: fix compiler warnings without CONFIG_THERMAL)
Merging mac80211/master (0452800f6db4 net: dsa: mt7530: fix null pointer dereferencing in port5 setup)
Merging rdma-fixes/for-rc (8f3d9f354286 Linux 5.7-rc1)
Merging sound-current/for-linus (f8e4ae10de43 ALSA: hda: Allow setting preallocation again for x86)
Merging sound-asoc-fixes/for-linus (33c385056aad Merge branch 'asoc-5.7' into asoc-linus)
Merging regmap-fixes/for-linus (87fc8230f7aa Merge branch 'regmap-5.6' into regmap-linus)
Merging regulator-fixes/for-linus (bae4cb90541a Merge branch 'regulator-5.6' into regulator-linus)
Merging spi-fixes/for-linus (5bdb4c95849d Merge branch 'spi-5.7' into spi-linus)
Merging pci-current/for-linus (8f3d9f354286 Linux 5.7-rc1)
Merging driver-core.current/driver-core-linus (8f3d9f354286 Linux 5.7-rc1)
Merging tty.current/tty-linus (8f3d9f354286 Linux 5.7-rc1)
Merging usb.current/usb-linus (8f3d9f354286 Linux 5.7-rc1)
Merging usb-gadget-fixes/fixes (42cd5ffe46c1 usb: dwc3: debug: fix string position formatting mixup with ret and len)
Merging usb-serial-fixes/usb-linus (16fbf79b0f83 Linux 5.6-rc7)
Merging usb-chipidea-fixes/ci-for-usb-stable (7cbf3dd3139a usb: chipidea: udc: fix sleeping function called from invalid context)
Merging phy/fixes (be4e3c737eeb phy: mapphone-mdm6600: Fix timeouts by adding wake-up handling)
Merging staging.current/staging-linus (ed87d33ddbcd staging: comedi: dt2815: fix writing hi byte of analog output)
Merging char-misc.current/char-misc-linus (8f3d9f354286 Linux 5.7-rc1)
Merging soundwire-fixes/fixes (8f3d9f354286 Linux 5.7-rc1)
Merging thunderbolt-fixes/fixes (7111951b8d49 Linux 5.6)
Merging input-current/for-linus (cd510679f4b5 Merge branch 'next' into for-linus)
Merging crypto-current/master (755bddd1e4ea crypto: marvell/octeontx - fix double free of ptr)
Merging ide/master (63bef48fd6c9 Merge branch 'akpm' (patches from Andrew))
Merging vfio-fixes/for-linus (95f89e090618 vfio/type1: Initialize resv_msi_base)
Merging kselftest-fixes/fixes (8f3d9f354286 Linux 5.7-rc1)
Merging modules-fixes/modules-linus (57baec7b1b04 scripts/nsdeps: make sure to pass all module source files to spatch)
Merging slave-dma-fixes/fixes (8f3d9f354286 Linux 5.7-rc1)
Merging backlight-fixes/for-backlight-fixes (219d54332a09 Linux 5.4)
Merging mtd-fixes/mtd/fixes (2098c564701c mtd: spi-nor: Compile files in controllers/ directory)
Merging mfd-fixes/for-mfd-fixes (603d9299da32 mfd: mt6397: Fix probe after changing mt6397-core)
Merging v4l-dvb-fixes/fixes (2632e7b618a7 media: venus: firmware: Ignore secure call error on first resume)
Merging reset-fixes/reset/fixes (b460e0a9e240 reset: intel: add unspecified HAS_IOMEM dependency)
Merging mips-fixes/mips-fixes (8f3d9f354286 Linux 5.7-rc1)
Merging at91-fixes/at91-fixes (54ecb8f7028c Linux 5.4-rc1)
Merging omap-fixes/fixes (07bdc492cff6 ARM: dts: OMAP3: disable RNG on N950/N9)
Merging kvm-fixes/master (dbef2808af6c KVM: VMX: fix crash cleanup when KVM wasn't used)
Merging kvms390-fixes/master (1493e0f944f3 KVM: s390: vsie: Fix possible race when shadowing region 3 tables)
Merging hwmon-fixes/hwmon (0e786f328b38 hwmon: (k10temp) make some symbols static)
Merging nvdimm-fixes/libnvdimm-fixes (f84afbdd3a9e libnvdimm: Out of bounds read in __nd_ioctl())
Merging btrfs-fixes/next-fixes (9dba7a236504 Merge branch 'misc-5.7' into next-fixes)
Merging vfs-fixes/fixes (5bd73286d50f fix a braino in legitimize_path())
Merging dma-mapping-fixes/for-linus (9c24eaf81cc4 iommu/vt-d: Return the correct dma mask when we are bypassing the IOMMU)
Merging i3c-fixes/master (6fbc7275c7a9 Linux 5.2-rc7)
Merging drivers-x86-fixes/fixes (8f3d9f354286 Linux 5.7-rc1)
Merging samsung-krzk-fixes/fixes (8f3d9f354286 Linux 5.7-rc1)
Merging pinctrl-samsung-fixes/pinctrl-fixes (8f3d9f354286 Linux 5.7-rc1)
Merging devicetree-fixes/dt/linus (49722d64c3f3 dt-bindings: interrupt-controller: Fix loongson,parent_int_map property schema)
Merging scsi-fixes/fixes (ea697a8bf5a4 scsi: sd: Fix optimal I/O size for devices that change reported values)
Merging drm-fixes/drm-fixes (8f3d9f354286 Linux 5.7-rc1)
Merging amdgpu-fixes/drm-fixes (2c409ba81be2 drm/radeon: fix si_enable_smc_cac() failed issue)
Merging drm-intel-fixes/for-linux-next-fixes (bcad588dea53 drm/i915/perf: Do not clear pollin for small user read buffers)
Merging mmc-fixes/fixes (2a7e3035f89d mmc: core: make mmc_interrupt_hpi() static)
Merging rtc-fixes/rtc-fixes (bb6d3fb354c5 Linux 5.6-rc1)
Merging gnss-fixes/gnss-linus (f8788d86ab28 Linux 5.6-rc3)
Merging hyperv-fixes/hyperv-fixes (f3a99e761efa x86/Hyper-V: Report crash data in die() when panic_on_oops is set)
Merging soc-fsl-fixes/fix (fe8fe7723a3a soc: fsl: dpio: register dpio irq handlers after dpio create)
Merging risc-v-fixes/fixes (2191b4f298fa RISC-V: Move all address space definition macros to one place)
Merging pidfd-fixes/fixes (3075afdf15b8 signal: use kill_proc_info instead of kill_pid_info in kill_something_info)
Merging fpga-fixes/fixes (3c2760b78f90 fpga: dfl: pci: fix return value of cci_pci_sriov_configure)
Merging spdx/spdx-linus (5b8b9d0c6d0e Merge branch 'akpm' (patches from Andrew))
Merging gpio-intel-fixes/fixes (8f3d9f354286 Linux 5.7-rc1)
Merging pinctrl-intel-fixes/fixes (ccd025eaddae pinctrl: baytrail: Enable pin configuration setting for GPIO chip)
Merging erofs-fixes/fixes (d1eef1c61974 Linux 5.5-rc2)
Merging drm-misc-fixes/for-linux-next-fixes (83a196773b8b drm/bridge: analogix_dp: Split bind() into probe() and real bind())
Merging kspp-gustavo/for-next/kspp (90e5d84c7b06 xattr.h: Replace zero-length array with flexible-array member)
Merging kbuild/for-next (b032227c6293 Merge tag 'nios2-v5.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/lftan/nios2)
Merging compiler-attributes/compiler-attributes (98d54f81e36b Linux 5.6-rc4)
Merging leaks/leaks-next (9e98c678c2d6 Linux 5.1-rc1)
Merging dma-mapping/for-next (9bb50ed74709 dma-debug: fix displaying of dma allocation type)
Merging asm-generic/master (060dc911501f nds32: fix build failure caused by page table folding updates)
Merging arc/for-next (def9d2780727 Linux 5.5-rc7)
Merging arm/for-next (52d3b2f98483 Merge branch 'devel-stable' into for-next)
Merging arm64/for-next/core (fc2266011acc arm64: armv8_deprecated: Fix undef_hook mask for thumb setend)
Merging arm-perf/for-next/perf (8673e02e5841 arm64: perf: Add support for ARMv8.5-PMU 64-bit counters)
Merging arm-soc/for-next (d9725e56e1d8 soc: document merges)
Merging amlogic/for-next (b40f5228c5f6 Merge branch 'v5.7/drivers' into tmp/aml-rebuild)
Merging aspeed/for-next (de285b938cf3 ARM: dts: aspeed: ast2600: Fix SCU IRQ controller nodes)
Merging at91/at91-next (ec539e70d882 Merge branches 'at91-soc', 'at91-dt' and 'at91-defconfig' into at91-next)
Merging imx-mxs/for-next (e506dba69a5e Merge branch 'imx/defconfig' into for-next)
Merging keystone/next (560b4d4691b0 Merge branch 'for_5.7/keystone-dts' into next)
Merging mediatek/for-next (23a161322658 Merge branch 'v5.7-next/soc' into for-next)
Merging mvebu/for-next (9d32706f8aa8 Merge branch 'mvebu/dt64' into mvebu/for-next)
Merging omap/for-next (e90f16cc1a48 Merge branch 'fixes' into for-next)
Merging qcom/for-next (8dc3769c8a68 Merge branches 'arm64-for-5.7', 'arm64-defconfig-for-5.7', 'defconfig-for-5.7', 'drivers-for-5.7' and 'dts-for-5.7' into for-next)
Merging raspberrypi/for-next (e7b7daeb48e0 ARM: dts: bcm283x: Use firmware PM driver for V3D)
CONFLICT (content): Merge conflict in arch/arm/configs/bcm2835_defconfig
Merging realtek/for-next (486f29df6941 Merge branch 'v5.8/dt' into next)
Merging renesas/next (bf4540d5148c Merge branch 'renesas-arm64-dt-for-v5.7' into renesas-next)
Merging reset/reset/next (2ebf89fd4ecf reset: hi6220: Add support for AO reset controller)
Merging rockchip/for-next (c018aff1a201 Merge branch 'v5.7-armsoc/dts64' into for-next)
Merging samsung-krzk/for-next (ff602fc2b39e Merge branch 'next/soc' into for-next)
Merging scmi/for-linux-next (7e63420847ae Merge tag 'acpi-5.7-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm)
Merging sunxi/sunxi/for-next (8f3d9f354286 Linux 5.7-rc1)
Merging tegra/for-next (df0a178cf2df Merge branch for-5.7/usb into for-next)
Merging clk/clk-next (2d3dfd15d2a5 clk: sprd: don't gate uart console clock)
Merging clk-samsung/for-next (54ecb8f7028c Linux 5.4-rc1)
Merging c6x/for-linux-next (8adcc59974b8 Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs)
Merging csky/linux-next (b8e9c96a8f70 csky: Fixup compile error for abiv1 entry.S)
Merging h8300/h8300-next (a5de8865cb3e h8300: move definition of __kernel_size_t etc. to posix_types.h)
Merging ia64/next (172e7890406d tty/serial: cleanup after ioc*_serial driver removal)
Merging m68k/for-next (86cded5fc525 m68k: defconfig: Update defconfigs for v5.6-rc4)
Merging m68knommu/for-next (ba000760eb0f m68k: Replace setup_irq() by request_irq())
Merging microblaze/next (9fd1a1c9b3f2 microblaze: Replace setup_irq() by request_irq())
Merging mips/mips-next (8f3d9f354286 Linux 5.7-rc1)
Merging nds32/next (d785c5a324cd nds32: configs: Cleanup CONFIG_CROSS_COMPILE)
Merging nios2/for-next (0ec8a5054d7f MAINTAINERS: Remove [email protected])
Merging openrisc/for-next (9737e2c5f0bc openrisc: Remove obsolete show_trace_task function)
Merging parisc-hd/for-next (7111951b8d49 Linux 5.6)
Merging powerpc/next (6ba4a2d35910 selftests/powerpc: Always build the tm-poison test 64-bit)
Merging fsl/next (a76bea0287ce powerpc/kmcent2: add ranges to the pci bridges)
Merging soc-fsl/next (461c3ac0dc46 soc: fsl: qe: fix sparse warnings for ucc_slow.c)
Merging risc-v/for-next (37809df4b1c8 riscv: create a loader.bin boot image for Kendryte SoC)
Merging sifive/for-next (467e050e9760 Merge branch 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux)
Merging s390/features (2bc55eaeb88d s390/cio: generate delayed uevent for vfio-ccw subchannels)
Merging sh/sh-next (a193018e5290 sh: add missing EXPORT_SYMBOL() for __delay)
Merging sparc-next/master (b71acb0e3721 Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6)
Merging uml/linux-next (4a7c46247f9c um: Remove some unnecessary NULL checks in vector_user.c)
Merging xtensa/xtensa-for-next (70cbddb97385 arch/xtensa: fix grammar in Kconfig help text)
Merging fscrypt/master (861261f2a9cc ubifs: wire up FS_IOC_GET_ENCRYPTION_NONCE)
Merging afs/afs-next (4fe171bb81b1 afs: Remove set but not used variable 'ret')
Merging btrfs/for-next (5a7ef5cb05dc Merge branch 'for-next-current-v5.6-20200331' into for-next-20200331)
Merging ceph/master (2a575f138d00 ceph: fix potential bad pointer deref in async dirops cb's)
Merging cifs/for-next (04c56e9e106c cifs: dump the session id and keys also for SMB2 sessions)
Merging configfs/for-next (e2f238f7d5a1 configfs: calculate the depth of parent item)
Merging ecryptfs/next (8b614cb8f1dc Merge tag '5.6-rc4-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6)
Merging erofs/dev (8f3d9f354286 Linux 5.7-rc1)
Merging ext3/for_next (a32f0ecd79b4 Merge fanotify fix from Nathan Chancellor.)
Merging ext4/dev (54d3adbc29f0 ext4: save all error info in save_error_info() and drop ext4_set_errno())
Merging f2fs/dev (9f0d5809eb7c f2fs: fix to handle error path of f2fs_ra_meta_pages())
Merging fsverity/fsverity (98d54f81e36b Linux 5.6-rc4)
Merging fuse/for-next (3e8cb8b2eaeb fuse: fix stack use after return)
Merging jfs/jfs-next (7aba5dcc2346 jfs: Replace zero-length array with flexible-array member)
Merging nfs/linux-next (8f3d9f354286 Linux 5.7-rc1)
Merging nfs-anna/linux-next (55dee1bc0d72 nfs: add minor version to nfs_server_key for fscache)
Merging nfsd/nfsd-next (2653de9f0398 fs: nfsd: fileache.c: Use built-in RCU list checking)
CONFLICT (content): Merge conflict in net/sunrpc/cache.c
Merging orangefs/for-next (aa317d3351de orangefs: clarify build steps for test server in orangefs.txt)
Merging overlayfs/overlayfs-next (2eda9eaa6d7e ovl: document xino expected behavior)
Merging ubifs/linux-next (3676f32a98cd ubi: ubi-media.h: Replace zero-length array with flexible-array member)
Merging v9fs/9p-next (c6f141412d24 9p: document short read behaviour with O_NONBLOCK)
Merging xfs/for-next (5833112df7e9 xfs: reflink should force the log out if mounted with wsync)
Merging zonefs/for-next (0dda2ddb7ded zonefs: select FS_IOMAP)
Merging iomap/iomap-for-next (457df33e035a iomap: Handle memory allocation failure in readahead)
Merging djw-vfs/vfs-for-next (56939e014a6c hibernate: Allow uswsusp to write to swap)
Merging file-locks/locks-next (dbdaf6a3250b locks: reinstate locks_delete_block optimization)
Merging vfs/for-next (ffca8b2a77f2 Merge branch 'work.exfat' into for-next)
Merging printk/for-next (d34f14ae521f Merge branch 'for-5.7-preferred-console' into for-next)
Merging pci/next (8f3d9f354286 Linux 5.7-rc1)
Merging pstore/for-next/pstore (8f3d9f354286 Linux 5.7-rc1)
Merging hid/for-next (04f6305f8071 Merge branch 'for-5.8/logitech' into for-next)
Merging i2c/i2c/for-next (a10c9c710f9e Merge tag 'for-v5.7' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply)
Merging i3c/i3c/next (c4b9de11d010 i3c: convert to use i2c_new_client_device())
Merging dmi/master (8cf87c744696 firmware/dmi: Report DMI Bios & EC firmware release)
Merging hwmon-staging/hwmon-next (635049d0e3a0 hwmon: (dell-smm) Use one DMI match for all XPS models)
Merging jc_docs/docs-next (befacdcf47d4 Documentation: android: binderfs: add 'stats' mount option)
Merging v4l-dvb/master (2632e7b618a7 media: venus: firmware: Ignore secure call error on first resume)
Merging v4l-dvb-next/master (54ecb8f7028c Linux 5.4-rc1)
Merging fbdev/fbdev-for-next (732146a3f1dc video: fbdev: imxfb: fix a typo in imxfb_probe())
Merging pm/linux-next (d3e5e977abe2 Merge tag 'acpi-5.7-rc1-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm)
Merging cpufreq-arm/cpufreq/arm/linux-next (a8811ec764f9 cpufreq: qcom: Add support for krait based socs)
Merging cpupower/cpupower (8f3d9f354286 Linux 5.7-rc1)
Merging opp/opp/linux-next (aca48b61f963 opp: Manage empty OPP tables with clk handle)
Merging thermal/thermal/linux-next (df1982294937 thermal: Delete an error message in four functions)
Merging thermal-rzhang/next (54ecb8f7028c Linux 5.4-rc1)
Merging thermal-soc/next (6c375eccded4 thermal: db8500: Rewrite to be a pure OF sensor)
Merging ieee1394/for-next (67f8e65e4fc1 firewire: net: remove set but not used variable 'guid')
Merging dlm/next (a48f9721e6db dlm: no need to check return value of debugfs_create functions)
Merging swiotlb/linux-next (4cdfb27ba80d xen/swiotlb: remember having called xen_create_contiguous_region())
Merging rdma/for-next (8f3d9f354286 Linux 5.7-rc1)
Merging net-next/master (63bef48fd6c9 Merge branch 'akpm' (patches from Andrew))
Merging bpf-next/master (1a323ea5356e x86: get rid of 'errret' argument to __get_user_xyz() macross)
Merging ipsec-next/master (308491755f36 xfrm: add prep for esp beet mode offload)
Merging mlx5-next/mlx5-next (826096d84f50 mlx5: Remove uninitialized use of key in mlx5_core_create_mkey)
Merging netfilter-next/master (1a323ea5356e x86: get rid of 'errret' argument to __get_user_xyz() macross)
Merging ipvs-next/master (d54725cd11a5 netfilter: nf_tables: support for multiple devices per netdev hook)
Merging wireless-drivers-next/master (5988b8ec7132 Merge tag 'iwlwifi-next-for-kalle-2020-03-27' of git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-next)
Merging bluetooth/master (04896832c94a Bluetooth: btrtl: Add support for RTL8761B)
Merging mac80211-next/master (1e8f471425f4 mac80211_hwsim: notify wmediumd of used MAC addresses)
Merging gfs2/for-next (75b46c437f6b gfs2: Fix oversight in gfs2_ail1_flush)
Merging mtd/mtd/next (025a06c1104c mtd: Convert fallthrough comments into statements)
Merging nand/nand/next (fca88925d769 mtd: rawnand: toshiba: Support reading the number of bitflips for BENAND (Built-in ECC NAND))
Merging spi-nor/spi-nor/next (f3f2b7eb2f1c mtd: spi-nor: Enable locking for n25q512ax3/n25q512a)
Merging crypto/master (fcb90d51c375 crypto: af_alg - bool type cosmetics)
Merging drm/drm-next (74bd4f0c921c Merge tag 'amd-drm-fixes-5.7-2020-04-08' of git://people.freedesktop.org/~agd5f/linux into drm-next)
Merging amdgpu/drm-next (54c46f9a8781 drm/amdgpu/gfx9: add gfxoff quirk)
CONFLICT (content): Merge conflict in drivers/gpu/drm/amd/powerplay/renoir_ppt.c
Merging drm-intel/for-linux-next (f30d3ced9faf agp/intel: Reinforce the barrier after GTT updates)
CONFLICT (content): Merge conflict in drivers/gpu/drm/i915/gt/selftest_rc6.c
CONFLICT (content): Merge conflict in drivers/gpu/drm/i915/display/intel_ddi.c
Merging drm-tegra/drm/tegra/for-next (e32c8c2a5fbe drm/tegra: hdmi: Silence deferred-probe error)
Merging drm-misc/for-linux-next (152cce0006ab drm/bridge: analogix_dp: Split bind() into probe() and real bind())
Merging drm-msm/msm-next (a5fb8b918920 drm/msm/a6xx: Use the DMA API for GMU memory objects)
Merging mali-dp/for-upstream/mali-dp (f634c6a80287 dt/bindings: display: Add optional property node define for Mali DP500)
Merging imx-drm/imx-drm/next (2c76b324c794 drm/imx: parallel-display: Adjust bus_flags handling)
Merging etnaviv/etnaviv/next (f232d9ec029c drm/etnaviv: fix TS cache flushing on GPUs with BLT engine)
Merging regmap/for-next (2060986f04ad Merge branch 'regmap-5.7' into regmap-next)
Merging sound/for-next (d94541fa8ae8 Merge branch 'topic/for-5.8' into for-next)
Merging sound-asoc/for-next (33c385056aad Merge branch 'asoc-5.7' into asoc-linus)
Merging modules/modules-next (0f74226649fb kernel: module: Replace zero-length array with flexible-array member)
Merging input/next (3a8579629665 Input: update SPDX tag for input-event-codes.h)
Merging block/for-next (8f3d9f354286 Linux 5.7-rc1)
Merging device-mapper/for-next (8267d8fb4819 dm integrity: fix logic bug in integrity tag testing)
Merging pcmcia/pcmcia-next (a8c122f72d94 pcmcia: remove some unused space characters)
Merging mmc/next (92075d98abf0 mmc: cavium-octeon: remove nonsense variable coercion)
Merging md/for-next (e820d55cb99d md: fix raid10 hang issue caused by barrier)
Merging mfd/for-mfd-next (d2923aa45356 mfd: intel-lpss: Fix Intel Elkhart Lake LPSS I2C input clock)
Merging backlight/for-backlight-next (ee0c8e494cc3 backlight: corgi: Convert to use GPIO descriptors)
Merging battery/for-next (164eaf6b435c power: supply: 88pm860x_battery: remove redundant dev_err message)
Merging regulator/for-next (24bd2afda8ce Merge branch 'regulator-5.7' into regulator-next)
Merging security/next-testing (3e27a33932df security: remove duplicated include from security.h)
Merging apparmor/apparmor-next (01df52d726b5 apparmor: remove duplicate check of xattrs on profile attachment.)
Merging integrity/next-integrity (9e2b4be377f0 ima: add a new CONFIG for loading arch-specific policies)
Merging keys/keys-next (43672cf93c6d Merge branch 'notifications-pipe-core' into keys-next)
CONFLICT (content): Merge conflict in include/linux/lsm_hooks.h
CONFLICT (content): Merge conflict in fs/pipe.c
Applying: io_uring: fix up for get_pipe_info() API change
Applying: security: keys: fixup for "security: Refactor declaration of LSM hooks"
Merging selinux/next (c753924b6285 selinux: clean up indentation issue with assignment statement)
Merging smack/for-next (92604e825304 smack: use GFP_NOFS while holding inode_smack::smk_lock)
Merging tomoyo/master (8f3d9f354286 Linux 5.7-rc1)
Merging tpmdd/next (872b0971d74b tpm: ibmvtpm: retry on H_CLOSED in tpm_ibmvtpm_send())
Merging watchdog/master (ea104a9e4d3e watchdog: sp805: fix restart handler)
Merging iommu/next (ff68eb23308e Merge branches 'iommu/fixes', 'arm/qcom', 'arm/omap', 'arm/smmu', 'x86/amd', 'x86/vt-d', 'virtio' and 'core' into next)
Merging vfio/next (f44efca0493d vfio: Ignore -ENODEV when getting MSI cookie)
Merging audit/next (1320a4052ea1 audit: trigger accompanying records when no rules present)
Merging devicetree/for-next (8967918e7cee MAINTAINERS: drop an old reference to stm32 pwm timers doc)
Merging mailbox/mailbox-for-next (0a67003b1985 mailbox: imx: add SCU MU support)
Merging spi/for-next (5bdb4c95849d Merge branch 'spi-5.7' into spi-linus)
Merging tip/auto-latest (93df12fe0d14 Merge branch 'locking/kcsan')
Merging clockevents/timers/drivers/next (c1ac28a4de6f Revert "clocksource: Avoid creating dead devices")
Merging edac/edac-for-next (ad49d9a8228e Merge branch 'edac-misc' into edac-for-next)
Merging irqchip/irq/irqchip-next (4cea749d56be Revert "irqchip/xilinx: Enable generic irq multi handler")
Merging ftrace/for-next (8e99cf91b99b tracing: Do not allocate buffer in trace_find_next_entry() in atomic)
Merging rcu/rcu/next (aa93ec620be3 Merge branches 'doc.2020.02.27a', 'fixes.2020.03.21a', 'kfree_rcu.2020.02.20a', 'locktorture.2020.02.20a', 'ovld.2020.02.20a', 'rcu-tasks.2020.02.20a', 'srcu.2020.02.20a' and 'torture.2020.02.20a' into HEAD)
Merging kvm/linux-next (dbef2808af6c KVM: VMX: fix crash cleanup when KVM wasn't used)
Merging kvm-arm/next (463050599742 Merge tag 'kvm-arm-removal' into kvmarm-master/next)
Merging kvm-ppc/kvm-ppc-next (9a5788c615f5 KVM: PPC: Book3S HV: Add a capability for enabling secure guests)
Merging kvms390/next (7a2653612bb6 s390/gmap: return proper error code on ksm unsharing)
Merging xen-tip/linux-next (0e1b42710787 x86/xen: make xen_pvmmu_arch_setup() static)
Merging percpu/for-next (dedac37ea96b Merge branch 'for-5.7' into for-next)
Merging workqueues/for-next (4acf8a423cd3 Merge branch 'for-5.7' into for-next)
Merging drivers-x86/for-next (8f3d9f354286 Linux 5.7-rc1)
Merging chrome-platform/for-next (a46387712da1 platform/chrome: cros_ec_spi: Wait for USECS, not NSECS)
Merging hsi/for-next (bb6d3fb354c5 Linux 5.6-rc1)
Merging leds/for-next (10a6cce3c1a1 Group LED functions according to functionality, and add some explaining comments.)
CONFLICT (content): Merge conflict in drivers/leds/Makefile
Merging ipmi/for-next (ab032f08dc45 ipmi:bt-bmc: Avoid unnecessary check)
Merging driver-core/driver-core-next (8f3d9f354286 Linux 5.7-rc1)
Merging usb/usb-next (8f3d9f354286 Linux 5.7-rc1)
Merging usb-gadget/next (4a5dbd900957 dt-bindings: usb: add documentation for aspeed usb-vhub)
Merging usb-serial/usb-next (57aa9f294b09 USB: serial: io_edgeport: fix slab-out-of-bounds read in edge_interrupt_callback)
Merging usb-chipidea-next/ci-for-usb-next (95caa2ae70fd usb: chipidea: allow disabling glue drivers if EMBEDDED)
Merging phy-next/next (89d715371a05 phy: qcom-qusb2: Add new overriding tuning parameters in QUSB2 V2 PHY)
Merging tty/tty-next (8f3d9f354286 Linux 5.7-rc1)
Merging char-misc/char-misc-next (8f3d9f354286 Linux 5.7-rc1)
Merging extcon/extcon-next (9c94553099ef extcon: axp288: Add wakeup support)
Merging soundwire/next (8f3d9f354286 Linux 5.7-rc1)
Merging thunderbolt/next (3010518964dc thunderbolt: Use scnprintf() for avoiding potential buffer overflow)
Merging staging/staging-next (73a6e90041ce staging: rtl8723bs: hal: Correct misspelled symbolic name)
Merging mux/for-next (f356d58c3a04 Merge branch 'i2c-mux/for-next' into for-next)
Merging icc/icc-next (03c4e6186bbb interconnect: qcom: Add OSM L3 support on SC7180)
Merging slave-dma/next (8f3d9f354286 Linux 5.7-rc1)
Merging cgroup/for-next (eec8fd0277e3 device_cgroup: Cleanup cgroup eBPF device filter code)
Merging scsi/for-next (c128052e6991 Merge branch 'misc' into for-next)
Merging scsi-mkp/for-next (1b55940b9bcc scsi: core: Add DID_ALLOC_FAILURE and DID_MEDIUM_ERROR to hostbyte_table)
Merging vhost/linux-next (d4a85c2ace89 vdpa: fix comment of vdpa_register_device())
Merging rpmsg/for-next (45c2824de341 Merge branches 'hwspinlock-next', 'rpmsg-next' and 'rproc-next' into for-next)
Merging gpio/for-next (4ed7d7dd4890 Revert "gpio: eic-sprd: Use devm_platform_ioremap_resource()")
Merging gpio-brgl/gpio/for-next (03434e049439 gpio: Extend TODO to cover code duplication avoidance)
Merging gpio-intel/for-next (8f3d9f354286 Linux 5.7-rc1)
Merging pinctrl/for-next (c42f69b4207e pinctrl: qcom: fix compilation error)
Merging pinctrl-intel/for-next (ccd025eaddae pinctrl: baytrail: Enable pin configuration setting for GPIO chip)
Merging pinctrl-samsung/for-next (b577a2799140 pinctrl: samsung: Correct setting of eint wakeup mask on s5pv210)
Merging pwm/for-next (9cc5f232a4b6 pwm: pca9685: Fix PWM/GPIO inter-operation)
Merging userns/for-next (63f818f46af9 proc: Use a dedicated lock in struct pid)
Merging ktest/for-next (1091c8fce8aa ktest: Fix typos in ktest.pl)
Merging random/dev (ab9a7e27044b random: avoid warnings for !CONFIG_NUMA builds)
Merging kselftest/next (ffa773e1011d selftests: Fix memfd test run-time regression)
Merging y2038/y2038 (c4e71212a245 Revert "drm/etnaviv: reject timeouts with tv_nsec >= NSEC_PER_SEC")
Merging livepatching/for-next (d28b4c1b2b3d Merge branch 'for-5.6/selftests' into for-next)
Merging coresight/next (50f3e61d96bd coresight: etb10: Make coresight_etb_groups static)
Merging rtc/rtc-next (8f3d9f354286 Linux 5.7-rc1)
Merging nvdimm/libnvdimm-for-next (f6d2b802f80d Merge branch 'for-5.7/libnvdimm' into libnvdimm-for-next)
Merging at24/at24/for-next (4837621cd61e eeprom: at24: add TPF0001 ACPI ID for 24c1024 device)
Merging ntb/ntb-next (5cc3de3c7435 NTB: ntb_test: Fix bug when counting remote files)
Merging kspp/for-next/kspp (c7527373fe28 gcc-common.h: Update for GCC 10)
Merging cisco/for-next (9e98c678c2d6 Linux 5.1-rc1)
Merging gnss/gnss-next (f8788d86ab28 Linux 5.6-rc3)
Merging fsi/next (2c01397b71c5 fsi: aspeed: Fix OPB0 byte order register values)
CONFLICT (content): Merge conflict in drivers/fsi/Kconfig
Merging slimbus/for-next (ba1589ff458e slimbus: ngd: add v2.1.0 compatible)
Merging nvmem/for-next (990df6402752 nvmem: mxs-ocotp: Use devm_add_action_or_reset() for cleanup)
CONFLICT (modify/delete): drivers/nvmem/nvmem-sysfs.c deleted in HEAD and modified in nvmem/for-next. Version nvmem/for-next of drivers/nvmem/nvmem-sysfs.c left in tree.
$ git rm -f drivers/nvmem/nvmem-sysfs.c
Merging xarray/xarray (27586ca786a7 XArray: Handle retry entries within xas_find_marked)
Merging hyperv/hyperv-next (dbf7071bdc3a scsi: storvsc: Re-init stor_chns when a channel interrupt is re-assigned)
Merging auxdisplay/auxdisplay (2f920c0f0e29 auxdisplay: charlcd: replace zero-length array with flexible-array member)
Merging kgdb/kgdb/for-next (5ea771abd5a3 kdb: Censor attempts to set PROMPT without ENABLE_MEM_READ)
Merging pidfd/for-next (6952a4f64644 selftests: add pid namespace ENOMEM regression test)
Merging devfreq/devfreq-next (19b5622d849b PM / devfreq: tegra30: Delete an error message in tegra_devfreq_probe())
Merging hmm/hmm (8f3d9f354286 Linux 5.7-rc1)
Merging fpga/for-next (cef0ca6417de fpga: dfl: afu: support debug access to memory-mapped afu regions)
Merging kunit/test (8f3d9f354286 Linux 5.7-rc1)
Merging cel/cel-next (36b6e409294a svcrdma: Fix leak of svc_rdma_recv_ctxt objects)
Merging generic-ioremap/for-next (4bdc0d676a64 remove ioremap_nocache and devm_ioremap_nocache)
Merging cfi/cfi/next (b6fe8bc67d2d mtd: hyperbus: move direct mapping setup to AM654 HBMC driver)
Merging kunit-next/kunit (8f3d9f354286 Linux 5.7-rc1)
Merging trivial/for-next (fad7c9020948 err.h: remove deprecated PTR_RET for good)
Merging zx2c4/for-next (16fbf79b0f83 Linux 5.6-rc7)
Merging mhi/mhi-next (8f3d9f354286 Linux 5.7-rc1)
Merging akpm-current/current (547e35135ac5 usb: core: kcov: collect coverage from usb complete callback)
$ git checkout -b akpm remotes/origin/akpm/master
Applying: mm/kmemleak: silence KCSAN splats in checksum
Applying: mm/frontswap: mark various intentional data races
Applying: mm/page_io: mark various intentional data races
Applying: mm-page_io-mark-various-intentional-data-races-v2
Applying: mm/swap_state: mark various intentional data races
Applying: mm/filemap.c: fix a data race in filemap_fault()
Applying: mm/swapfile: fix and annotate various data races
Applying: mm-swapfile-fix-and-annotate-various-data-races-v2
Applying: mm/page_counter: fix various data races at memsw
Applying: mm/memcontrol: fix a data race in scan count
Applying: mm/list_lru: fix a data race in list_lru_count_one
Applying: mm/mempool: fix a data race in mempool_free()
Applying: mm/util.c: annotate an data race at vm_committed_as
Applying: mm/rmap: annotate a data race at tlb_flush_batched
Applying: mm: annotate a data race in page_zonenum()
Applying: mm/swap.c: annotate data races for lru_rotate_pvecs
Applying: net-zerocopy: use vm_insert_pages() for tcp rcv zerocopy
Applying: net-zerocopy-use-vm_insert_pages-for-tcp-rcv-zerocopy-fix
Applying: mm/debug: add tests validating architecture page table helpers
Applying: mm/madvise: pass task and mm to do_madvise
Applying: mm/madvise: introduce process_madvise() syscall: an external memory hinting API
Applying: fix process_madvise build break for arm64
Applying: mm/madvise: check fatal signal pending of target process
Applying: pid: move pidfd_get_pid() to pid.c
Applying: mm/madvise: support both pid and pidfd for process_madvise
Applying: mm/madvise: employ mmget_still_valid() for write lock
Applying: mm/madvise: allow KSM hints for remote API
Applying: kexec: prevent removal of memory in use by a loaded kexec image
Applying: mm/memory_hotplug: allow arch override of non boot memory resource names
Applying: arm64: memory: give hotplug memory a different resource name
Applying: drivers/media/platform/sti/delta/delta-ipc.c: fix read buffer overflow
Merging akpm/master (cd91ba3aceb7 drivers/media/platform/sti/delta/delta-ipc.c: fix read buffer overflow)


Attachments:
(No filename) (499.00 B)
OpenPGP digital signature

2020-04-15 12:28:20

by Randy Dunlap

[permalink] [raw]
Subject: Re: linux-next: Tree for Apr 14 (mm/shmem.c)

On 4/13/20 7:39 PM, Stephen Rothwell wrote:
> Hi all,
>
> Changes since 20200413:
>
> New tree: mhi
>
> My fixes tree contains:
>
> 6b038bdcd3d1 sh: mm: Fix build error
>
> Non-merge commits (relative to Linus' tree): 1154
> 1160 files changed, 31764 insertions(+), 13498 deletions(-)
>
> ----------------------------------------------------------------------------

on x86_64:
# CONFIG_TRANSPARENT_HUGEPAGE is not set

In file included from ../include/linux/export.h:43:0,
from ../include/linux/linkage.h:7,
from ../include/linux/fs.h:5,
from ../mm/shmem.c:24:
../mm/shmem.c: In function ?shmem_undo_range?:
../include/linux/compiler.h:394:38: error: call to ?__compiletime_assert_110? declared with attribute error: BUILD_BUG failed
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^
../include/linux/compiler.h:69:3: note: in definition of macro ?__trace_if_value?
(cond) ? \
^~~~
../include/linux/compiler.h:56:28: note: in expansion of macro ?__trace_if_var?
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^~~~~~~~~~~~~~
../mm/shmem.c:960:6: note: in expansion of macro ?if?
if (index <
^~
../include/linux/kernel.h:71:36: note: in expansion of macro ?__round_mask?
#define round_up(x, y) ((((x)-1) | __round_mask(x, y))+1)
^~~~~~~~~~~~
../mm/shmem.c:961:10: note: in expansion of macro ?round_up?
round_up(start, HPAGE_PMD_NR))
^~~~~~~~
../include/linux/compiler.h:382:2: note: in expansion of macro ?__compiletime_assert?
__compiletime_assert(condition, msg, prefix, suffix)
^~~~~~~~~~~~~~~~~~~~
../include/linux/compiler.h:394:2: note: in expansion of macro ?_compiletime_assert?
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~~~~~~~~~~~
../include/linux/build_bug.h:39:37: note: in expansion of macro ?compiletime_assert?
#define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
^~~~~~~~~~~~~~~~~~
../include/linux/build_bug.h:59:21: note: in expansion of macro ?BUILD_BUG_ON_MSG?
#define BUILD_BUG() BUILD_BUG_ON_MSG(1, "BUILD_BUG failed")
^~~~~~~~~~~~~~~~
../include/linux/huge_mm.h:319:28: note: in expansion of macro ?BUILD_BUG?
#define HPAGE_PMD_SHIFT ({ BUILD_BUG(); 0; })
^~~~~~~~~
../include/linux/huge_mm.h:115:26: note: in expansion of macro ?HPAGE_PMD_SHIFT?
#define HPAGE_PMD_ORDER (HPAGE_PMD_SHIFT-PAGE_SHIFT)
^~~~~~~~~~~~~~~
../include/linux/huge_mm.h:116:26: note: in expansion of macro ?HPAGE_PMD_ORDER?
#define HPAGE_PMD_NR (1<<HPAGE_PMD_ORDER)
^~~~~~~~~~~~~~~
../mm/shmem.c:961:26: note: in expansion of macro ?HPAGE_PMD_NR?
round_up(start, HPAGE_PMD_NR))
^~~~~~~~~~~~


Full randconfig file is attached.


--
~Randy
Reported-by: Randy Dunlap <[email protected]>


Attachments:
config-r2090 (101.24 kB)

2020-04-15 14:48:37

by Andrew Morton

[permalink] [raw]
Subject: Re: linux-next: Tree for Apr 14 (mm/shmem.c)

On Tue, 14 Apr 2020 07:18:01 -0700 Randy Dunlap <[email protected]> wrote:

> On 4/13/20 7:39 PM, Stephen Rothwell wrote:
> > Hi all,
> >
> > Changes since 20200413:
> >
> > New tree: mhi
> >
> > My fixes tree contains:
> >
> > 6b038bdcd3d1 sh: mm: Fix build error
> >
> > Non-merge commits (relative to Linus' tree): 1154
> > 1160 files changed, 31764 insertions(+), 13498 deletions(-)
> >
> > ----------------------------------------------------------------------------
>
> on x86_64:
> # CONFIG_TRANSPARENT_HUGEPAGE is not set

Thanks. hm, this took a long time to be discovered.

> In file included from ../include/linux/export.h:43:0,
> from ../include/linux/linkage.h:7,
> from ../include/linux/fs.h:5,
> from ../mm/shmem.c:24:
> ../mm/shmem.c: In function ‘shmem_undo_range’:
> ../include/linux/compiler.h:394:38: error: call to ‘__compiletime_assert_110’ declared with attribute error: BUILD_BUG failed
> _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
> ^
> ../include/linux/compiler.h:69:3: note: in definition of macro ‘__trace_if_value’
> (cond) ? \
> ^~~~
> ../include/linux/compiler.h:56:28: note: in expansion of macro ‘__trace_if_var’
> #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
> ^~~~~~~~~~~~~~
> ../mm/shmem.c:960:6: note: in expansion of macro ‘if’
> if (index <
> ^~
> ../include/linux/kernel.h:71:36: note: in expansion of macro ‘__round_mask’
> #define round_up(x, y) ((((x)-1) | __round_mask(x, y))+1)
> ^~~~~~~~~~~~
> ../mm/shmem.c:961:10: note: in expansion of macro ‘round_up’
> round_up(start, HPAGE_PMD_NR))
> ^~~~~~~~
> ../include/linux/compiler.h:382:2: note: in expansion of macro ‘__compiletime_assert’
> __compiletime_assert(condition, msg, prefix, suffix)
> ^~~~~~~~~~~~~~~~~~~~
> ../include/linux/compiler.h:394:2: note: in expansion of macro ‘_compiletime_assert’
> _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
> ^~~~~~~~~~~~~~~~~~~
> ../include/linux/build_bug.h:39:37: note: in expansion of macro ‘compiletime_assert’
> #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
> ^~~~~~~~~~~~~~~~~~
> ../include/linux/build_bug.h:59:21: note: in expansion of macro ‘BUILD_BUG_ON_MSG’
> #define BUILD_BUG() BUILD_BUG_ON_MSG(1, "BUILD_BUG failed")
> ^~~~~~~~~~~~~~~~
> ../include/linux/huge_mm.h:319:28: note: in expansion of macro ‘BUILD_BUG’
> #define HPAGE_PMD_SHIFT ({ BUILD_BUG(); 0; })
> ^~~~~~~~~
> ../include/linux/huge_mm.h:115:26: note: in expansion of macro ‘HPAGE_PMD_SHIFT’
> #define HPAGE_PMD_ORDER (HPAGE_PMD_SHIFT-PAGE_SHIFT)
> ^~~~~~~~~~~~~~~
> ../include/linux/huge_mm.h:116:26: note: in expansion of macro ‘HPAGE_PMD_ORDER’
> #define HPAGE_PMD_NR (1<<HPAGE_PMD_ORDER)
> ^~~~~~~~~~~~~~~
> ../mm/shmem.c:961:26: note: in expansion of macro ‘HPAGE_PMD_NR’
> round_up(start, HPAGE_PMD_NR))
> ^~~~~~~~~~~~
>

That's

if (index <
round_up(start, HPAGE_PMD_NR))
start = index + 1;

from Hugh's 71725ed10c40696 ("mm: huge tmpfs: try to split_huge_page()
when punching hole").

2020-04-15 21:36:43

by Randy Dunlap

[permalink] [raw]
Subject: Re: linux-next: Tree for Apr 14 (objtool crazy)

On 4/13/20 7:39 PM, Stephen Rothwell wrote:
> Hi all,
>
> Changes since 20200413:
>


I killed objtool after 49 minutes of CPU time:

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
6159 rdunlap 30 10 42756 8028 0 R 100.0 0.099 49:19.02 objtool


/bin/sh: line 1: 6159 Terminated ./tools/objtool/objtool orc generate --no-fp --no-unreachable --uaccess drivers/i2c/busses/i2c-parport.o



Full randconfig file is attached.

--
~Randy
Reported-by: Randy Dunlap <[email protected]>


Attachments:
config-r2092 (103.43 kB)

2020-04-15 21:59:28

by Josh Poimboeuf

[permalink] [raw]
Subject: Re: linux-next: Tree for Apr 14 (objtool crazy)

On Tue, Apr 14, 2020 at 06:50:15AM -0700, Randy Dunlap wrote:
> On 4/13/20 7:39 PM, Stephen Rothwell wrote:
> > Hi all,
> >
> > Changes since 20200413:
> >
>
>
> I killed objtool after 49 minutes of CPU time:
>
> PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
> 6159 rdunlap 30 10 42756 8028 0 R 100.0 0.099 49:19.02 objtool
>
>
> /bin/sh: line 1: 6159 Terminated ./tools/objtool/objtool orc generate --no-fp --no-unreachable --uaccess drivers/i2c/busses/i2c-parport.o

I took an initial look at this one. I can dig more tomorrow unless
Peter beats me to it.

(gdb) bt
#0 0x000000000040df55 in sec_offset_hash (sec=0xc30930, offset=4334561216) at elf.h:104
#1 0x000000000040e907 in find_rela_by_dest_range (elf=0x7ffff64a4010, sec=0xc30930, offset=18446744073709551608, len=1) at elf.c:227
#2 0x000000000040ea67 in find_rela_by_dest (elf=0x7ffff64a4010, sec=0xc30710, offset=18446744073709551608) at elf.c:246
#3 0x0000000000408038 in find_jump_table (file=0x427620 <file>, func=0xc32bf0, insn=0xc4f840) at check.c:1118
#4 0x0000000000408242 in mark_func_jump_tables (file=0x427620 <file>, func=0xc32bf0) at check.c:1170
#5 0x00000000004083b6 in add_jump_table_alts (file=0x427620 <file>) at check.c:1215
#6 0x0000000000408b95 in decode_sections (file=0x427620 <file>) at check.c:1413
#7 0x000000000040bf44 in check (_objname=0x7fffffffceff "drivers/i2c/busses/i2c-parport.o", orc=true) at check.c:2508
#8 0x0000000000405580 in cmd_orc (argc=1, argv=0x7fffffffc9d8) at builtin-orc.c:41
#9 0x0000000000411297 in handle_internal_command (argc=6, argv=0x7fffffffc9d0) at objtool.c:96
#10 0x0000000000411349 in main (argc=6, argv=0x7fffffffc9d0) at objtool.c:119

It's an infinite loop in find_rela_by_dest_range() because offset is -8.
That comes from find_jump_table():

table_offset = text_rela->addend;
table_sec = text_rela->sym->sec;
...
table_rela = find_rela_by_dest(file->elf, table_sec, table_offset);

which comes from this gem:

00000000000001fd <line_set>:
1fd: 48 b8 00 00 00 00 00 movabs $0x0,%rax
204: 00 00 00
1ff: R_X86_64_64 .rodata-0x8

So objtool is getting confused by that -0x8 rela addend.

--
Josh

2020-04-15 22:14:21

by Hugh Dickins

[permalink] [raw]
Subject: Re: linux-next: Tree for Apr 14 (mm/shmem.c)

On Tue, 14 Apr 2020, Andrew Morton wrote:
> On Tue, 14 Apr 2020 07:18:01 -0700 Randy Dunlap <[email protected]> wrote:
> > On 4/13/20 7:39 PM, Stephen Rothwell wrote:
> > > Hi all,
> > >
> > > Changes since 20200413:
> > >
> > > New tree: mhi
> > >
> > > My fixes tree contains:
> > >
> > > 6b038bdcd3d1 sh: mm: Fix build error
> > >
> > > Non-merge commits (relative to Linus' tree): 1154
> > > 1160 files changed, 31764 insertions(+), 13498 deletions(-)
> > >
> > > ----------------------------------------------------------------------------
> >
> > on x86_64:
> > # CONFIG_TRANSPARENT_HUGEPAGE is not set
>
> Thanks. hm, this took a long time to be discovered.
>
> > In file included from ../include/linux/export.h:43:0,
> > from ../include/linux/linkage.h:7,
> > from ../include/linux/fs.h:5,
> > from ../mm/shmem.c:24:
> > ../mm/shmem.c: In function ‘shmem_undo_range’:
...
> > ../mm/shmem.c:961:26: note: in expansion of macro ‘HPAGE_PMD_NR’
> > round_up(start, HPAGE_PMD_NR))
> > ^~~~~~~~~~~~
>
> That's
> if (index <
> round_up(start, HPAGE_PMD_NR))
> start = index + 1;
>
> from Hugh's 71725ed10c40696 ("mm: huge tmpfs: try to split_huge_page()
> when punching hole").

Sorry about that. Yes, odd that it should only hit now: the false
PageTransCompound in shmem_punch_compound() has always been good
enough to handle it for me, but maybe Randy is trying a less able
compiler, or maybe unrelated changes in linux-next have just made
it harder for the compiler to see the optimization.

I hope the patch below fixes it?

[PATCH] mm/shmem: fix build without THP

Some optimizers don't notice that shmem_punch_compound() is always true
(PageTransCompound() being false) without CONFIG_TRANSPARENT_HUGEPAGE=y:
use IS_ENABLED to help them to avoid the BUILD_BUG inside HPAGE_PMD_NR.

Fixes: 71725ed10c40 ("mm: huge tmpfs: try to split_huge_page() when punching hole")
Reported-by: Randy Dunlap <[email protected]>
Signed-off-by: Hugh Dickins <[email protected]>
---

mm/shmem.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- 5.7-rc1/mm/shmem.c 2020-04-11 12:58:26.415524805 -0700
+++ linux/mm/shmem.c 2020-04-14 23:20:25.517656174 -0700
@@ -952,7 +952,7 @@ static void shmem_undo_range(struct inod
VM_BUG_ON_PAGE(PageWriteback(page), page);
if (shmem_punch_compound(page, start, end))
truncate_inode_page(mapping, page);
- else {
+ else if (IS_ENABLED(CONFIG_TRANSPARENT_HUGEPAGE)) {
/* Wipe the page and don't get stuck */
clear_highpage(page);
flush_dcache_page(page);

2020-04-16 00:17:17

by Randy Dunlap

[permalink] [raw]
Subject: Re: linux-next: Tree for Apr 14 (mm/shmem.c)

On 4/14/20 11:54 PM, Hugh Dickins wrote:
> On Tue, 14 Apr 2020, Andrew Morton wrote:
>> On Tue, 14 Apr 2020 07:18:01 -0700 Randy Dunlap <[email protected]> wrote:
>>> On 4/13/20 7:39 PM, Stephen Rothwell wrote:
>>>> Hi all,
>>>>
>>>> Changes since 20200413:
>>>>
>>>> New tree: mhi
>>>>
>>>> My fixes tree contains:
>>>>
>>>> 6b038bdcd3d1 sh: mm: Fix build error
>>>>
>>>> Non-merge commits (relative to Linus' tree): 1154
>>>> 1160 files changed, 31764 insertions(+), 13498 deletions(-)
>>>>
>>>> ----------------------------------------------------------------------------
>>>
>>> on x86_64:
>>> # CONFIG_TRANSPARENT_HUGEPAGE is not set
>>
>> Thanks. hm, this took a long time to be discovered.
>>
>>> In file included from ../include/linux/export.h:43:0,
>>> from ../include/linux/linkage.h:7,
>>> from ../include/linux/fs.h:5,
>>> from ../mm/shmem.c:24:
>>> ../mm/shmem.c: In function ‘shmem_undo_range’:
> ...
>>> ../mm/shmem.c:961:26: note: in expansion of macro ‘HPAGE_PMD_NR’
>>> round_up(start, HPAGE_PMD_NR))
>>> ^~~~~~~~~~~~
>>
>> That's
>> if (index <
>> round_up(start, HPAGE_PMD_NR))
>> start = index + 1;
>>
>> from Hugh's 71725ed10c40696 ("mm: huge tmpfs: try to split_huge_page()
>> when punching hole").
>
> Sorry about that. Yes, odd that it should only hit now: the false
> PageTransCompound in shmem_punch_compound() has always been good
> enough to handle it for me, but maybe Randy is trying a less able
> compiler, or maybe unrelated changes in linux-next have just made
> it harder for the compiler to see the optimization.
>
> I hope the patch below fixes it?
>
> [PATCH] mm/shmem: fix build without THP
>
> Some optimizers don't notice that shmem_punch_compound() is always true
> (PageTransCompound() being false) without CONFIG_TRANSPARENT_HUGEPAGE=y:
> use IS_ENABLED to help them to avoid the BUILD_BUG inside HPAGE_PMD_NR.
>
> Fixes: 71725ed10c40 ("mm: huge tmpfs: try to split_huge_page() when punching hole")
> Reported-by: Randy Dunlap <[email protected]>
> Signed-off-by: Hugh Dickins <[email protected]>

Works for me, using gcc 7.5.0.

Acked-by: Randy Dunlap <[email protected]> # build-tested

Thanks.

> ---
>
> mm/shmem.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> --- 5.7-rc1/mm/shmem.c 2020-04-11 12:58:26.415524805 -0700
> +++ linux/mm/shmem.c 2020-04-14 23:20:25.517656174 -0700
> @@ -952,7 +952,7 @@ static void shmem_undo_range(struct inod
> VM_BUG_ON_PAGE(PageWriteback(page), page);
> if (shmem_punch_compound(page, start, end))
> truncate_inode_page(mapping, page);
> - else {
> + else if (IS_ENABLED(CONFIG_TRANSPARENT_HUGEPAGE)) {
> /* Wipe the page and don't get stuck */
> clear_highpage(page);
> flush_dcache_page(page);
>


--
~Randy

2020-05-06 22:54:25

by Stephen Rothwell

[permalink] [raw]
Subject: Re: linux-next: Tree for Apr 14 (objtool crazy)

Hi all,

On Tue, 14 Apr 2020 17:19:14 -0500 Josh Poimboeuf <[email protected]> wrote:
>
> On Tue, Apr 14, 2020 at 06:50:15AM -0700, Randy Dunlap wrote:
> > On 4/13/20 7:39 PM, Stephen Rothwell wrote:
> > > Hi all,
> > >
> > > Changes since 20200413:
> > >
> >
> >
> > I killed objtool after 49 minutes of CPU time:
> >
> > PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
> > 6159 rdunlap 30 10 42756 8028 0 R 100.0 0.099 49:19.02 objtool
> >
> >
> > /bin/sh: line 1: 6159 Terminated ./tools/objtool/objtool orc generate --no-fp --no-unreachable --uaccess drivers/i2c/busses/i2c-parport.o
>
> I took an initial look at this one. I can dig more tomorrow unless
> Peter beats me to it.
>
> (gdb) bt
> #0 0x000000000040df55 in sec_offset_hash (sec=0xc30930, offset=4334561216) at elf.h:104
> #1 0x000000000040e907 in find_rela_by_dest_range (elf=0x7ffff64a4010, sec=0xc30930, offset=18446744073709551608, len=1) at elf.c:227
> #2 0x000000000040ea67 in find_rela_by_dest (elf=0x7ffff64a4010, sec=0xc30710, offset=18446744073709551608) at elf.c:246
> #3 0x0000000000408038 in find_jump_table (file=0x427620 <file>, func=0xc32bf0, insn=0xc4f840) at check.c:1118
> #4 0x0000000000408242 in mark_func_jump_tables (file=0x427620 <file>, func=0xc32bf0) at check.c:1170
> #5 0x00000000004083b6 in add_jump_table_alts (file=0x427620 <file>) at check.c:1215
> #6 0x0000000000408b95 in decode_sections (file=0x427620 <file>) at check.c:1413
> #7 0x000000000040bf44 in check (_objname=0x7fffffffceff "drivers/i2c/busses/i2c-parport.o", orc=true) at check.c:2508
> #8 0x0000000000405580 in cmd_orc (argc=1, argv=0x7fffffffc9d8) at builtin-orc.c:41
> #9 0x0000000000411297 in handle_internal_command (argc=6, argv=0x7fffffffc9d0) at objtool.c:96
> #10 0x0000000000411349 in main (argc=6, argv=0x7fffffffc9d0) at objtool.c:119
>
> It's an infinite loop in find_rela_by_dest_range() because offset is -8.
> That comes from find_jump_table():
>
> table_offset = text_rela->addend;
> table_sec = text_rela->sym->sec;
> ...
> table_rela = find_rela_by_dest(file->elf, table_sec, table_offset);
>
> which comes from this gem:
>
> 00000000000001fd <line_set>:
> 1fd: 48 b8 00 00 00 00 00 movabs $0x0,%rax
> 204: 00 00 00
> 1ff: R_X86_64_64 .rodata-0x8
>
> So objtool is getting confused by that -0x8 rela addend.

Did this get fixed?

--
Cheers,
Stephen Rothwell


Attachments:
(No filename) (499.00 B)
OpenPGP digital signature

2020-05-07 00:25:12

by Randy Dunlap

[permalink] [raw]
Subject: Re: linux-next: Tree for Apr 14 (objtool crazy)

On 5/6/20 3:50 PM, Stephen Rothwell wrote:
> Hi all,
>
> On Tue, 14 Apr 2020 17:19:14 -0500 Josh Poimboeuf <[email protected]> wrote:
>>
>> On Tue, Apr 14, 2020 at 06:50:15AM -0700, Randy Dunlap wrote:
>>> On 4/13/20 7:39 PM, Stephen Rothwell wrote:
>>>> Hi all,
>>>>
>>>> Changes since 20200413:
>>>>
>>>
>>>
>>> I killed objtool after 49 minutes of CPU time:
>>>
>>> PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
>>> 6159 rdunlap 30 10 42756 8028 0 R 100.0 0.099 49:19.02 objtool
>>>
>>>
>>> /bin/sh: line 1: 6159 Terminated ./tools/objtool/objtool orc generate --no-fp --no-unreachable --uaccess drivers/i2c/busses/i2c-parport.o
>>
>> I took an initial look at this one. I can dig more tomorrow unless
>> Peter beats me to it.
>>
>> (gdb) bt
>> #0 0x000000000040df55 in sec_offset_hash (sec=0xc30930, offset=4334561216) at elf.h:104
>> #1 0x000000000040e907 in find_rela_by_dest_range (elf=0x7ffff64a4010, sec=0xc30930, offset=18446744073709551608, len=1) at elf.c:227
>> #2 0x000000000040ea67 in find_rela_by_dest (elf=0x7ffff64a4010, sec=0xc30710, offset=18446744073709551608) at elf.c:246
>> #3 0x0000000000408038 in find_jump_table (file=0x427620 <file>, func=0xc32bf0, insn=0xc4f840) at check.c:1118
>> #4 0x0000000000408242 in mark_func_jump_tables (file=0x427620 <file>, func=0xc32bf0) at check.c:1170
>> #5 0x00000000004083b6 in add_jump_table_alts (file=0x427620 <file>) at check.c:1215
>> #6 0x0000000000408b95 in decode_sections (file=0x427620 <file>) at check.c:1413
>> #7 0x000000000040bf44 in check (_objname=0x7fffffffceff "drivers/i2c/busses/i2c-parport.o", orc=true) at check.c:2508
>> #8 0x0000000000405580 in cmd_orc (argc=1, argv=0x7fffffffc9d8) at builtin-orc.c:41
>> #9 0x0000000000411297 in handle_internal_command (argc=6, argv=0x7fffffffc9d0) at objtool.c:96
>> #10 0x0000000000411349 in main (argc=6, argv=0x7fffffffc9d0) at objtool.c:119
>>
>> It's an infinite loop in find_rela_by_dest_range() because offset is -8.
>> That comes from find_jump_table():
>>
>> table_offset = text_rela->addend;
>> table_sec = text_rela->sym->sec;
>> ...
>> table_rela = find_rela_by_dest(file->elf, table_sec, table_offset);
>>
>> which comes from this gem:
>>
>> 00000000000001fd <line_set>:
>> 1fd: 48 b8 00 00 00 00 00 movabs $0x0,%rax
>> 204: 00 00 00
>> 1ff: R_X86_64_64 .rodata-0x8
>>
>> So objtool is getting confused by that -0x8 rela addend.
>
> Did this get fixed?
>

Yes. It's here:
https://lore.kernel.org/lkml/02b719674b031800b61e33c30b2e823183627c19.1587842122.git.jpoimboe@redhat.com/


--
~Randy