This is the start of the stable review cycle for the 5.7.13 release. There are 120 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Wed, 05 Aug 2020 12:18:33 +0000. Anything received after that time might be too late.
The whole patch series can be found in one patch at: https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.7.13-rc1.... or in the git tree and branch at: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.7.y and the diffstat can be found below.
thanks,
greg k-h
------------- Pseudo-Shortlog of commits:
Greg Kroah-Hartman gregkh@linuxfoundation.org Linux 5.7.13-rc1
Thomas Gleixner tglx@linutronix.de x86/i8259: Use printk_deferred() to prevent deadlock
Wanpeng Li wanpengli@tencent.com KVM: SVM: Fix disable pause loop exit/pause filtering capability on SVM
Wanpeng Li wanpengli@tencent.com KVM: LAPIC: Prevent setting the tscdeadline timer if the lapic is hw disabled
Will Deacon will@kernel.org KVM: arm64: Don't inherit exec permission across page-table levels
Atish Patra atish.patra@wdc.com riscv: Parse all memory blocks to remove unusable memory
Xie He xie.he.0141@gmail.com drivers/net/wan: lapb: Corrected the usage of skb_cow
Atish Patra atish.patra@wdc.com RISC-V: Set maximum number of mapped pages correctly
Andrea Righi andrea.righi@canonical.com xen-netfront: fix potential deadlock in xennet_remove()
Navid Emamdoost navid.emamdoost@gmail.com cxgb4: add missing release on skb in uld_send()
Josh Poimboeuf jpoimboe@redhat.com x86/stacktrace: Fix reliable check for empty user task stacks
Josh Poimboeuf jpoimboe@redhat.com x86/unwind/orc: Fix ORC for newly forked tasks
Raviteja Narayanam raviteja.narayanam@xilinx.com i2c: cadence: Clear HOLD bit at correct time in Rx path
Raviteja Narayanam raviteja.narayanam@xilinx.com Revert "i2c: cadence: Fix the hold bit setting"
Paolo Pisati paolo.pisati@canonical.com selftest: txtimestamp: fix net ns entry logic
Yoshihiro Shimoda yoshihiro.shimoda.uh@renesas.com net: ethernet: ravb: exit if re-initialization fails in tx timeout
Liam Beguin liambeguin@gmail.com parisc: add support for cmpxchg on u8 pointers
Vincent Chen vincent.chen@sifive.com riscv: kasan: use local_tlb_flush_all() to avoid uninitialized __sbi_rfence
Ming Lei ming.lei@redhat.com scsi: core: Run queue in case of I/O resource contention failure
Navid Emamdoost navid.emamdoost@gmail.com nfc: s3fwrn5: add missing release on skb in s3fwrn5_recv_frame
Oded Gabbay oded.gabbay@gmail.com habanalabs: prevent possible out-of-bounds array access
Daniele Albano d.albano@gmail.com io_uring: always allow drain/link/hardlink/async sqe flags
Paolo Pisati paolo.pisati@canonical.com selftests: net: ip_defrag: modprobe missing nf_defrag_ipv6 support
Laurence Oberman loberman@redhat.com qed: Disable "MFW indication via attention" SPAM every 5 minutes
Paolo Pisati paolo.pisati@canonical.com selftests: fib_nexthop_multiprefix: fix cleanup() netns deletion
Geert Uytterhoeven geert@linux-m68k.org usb: hso: Fix debug compile warning on sparc32
Jiri Slaby jslaby@suse.cz iwlwifi: fix crash in iwl_dbg_tlv_alloc_trigger
Lorenzo Bianconi lorenzo@kernel.org mt76: mt7615: fix lmac queue debugsfs entry
Taehee Yoo ap420073@gmail.com vxlan: fix memleak of fdb
Wei Li liwei391@huawei.com perf tools: Fix record failure when mixed with ARM SPE event
Xin Xiong xiongx18@fudan.edu.cn net/mlx5e: fix bpf_prog reference count leaks in mlx5e_alloc_rq
Jianbo Liu jianbol@mellanox.com net/mlx5e: E-Switch, Add misc bit when misc fields changed for mirroring
Wang Hai wanghai38@huawei.com net: gemini: Fix missing clk_disable_unprepare() in error path of gemini_ethernet_port_probe()
Shannon Nelson snelson@pensando.io ionic: unlock queue mutex in error path
Landen Chao landen.chao@mediatek.com net: ethernet: mtk_eth_soc: fix MTU warnings
Lu Wei luwei32@huawei.com net: nixge: fix potential memory leak in nixge_probe()
Hangbin Liu liuhangbin@gmail.com selftests/bpf: fix netdevsim trap_flow_action_cookie read
Alain Michaud alainm@chromium.org Bluetooth: fix kernel oops in store_pending_adv_report
Robin Murphy robin.murphy@arm.com arm64: csum: Fix handling of bad packets
Sami Tolvanen samitolvanen@google.com arm64/alternatives: move length validation inside the subsection
Leon Romanovsky leon@kernel.org RDMA/core: Free DIM memory in error unwind
Leon Romanovsky leon@kernel.org RDMA/core: Stop DIM before destroying CQ
Remi Pommarel repk@triplefau.lt mac80211: mesh: Free pending skb when destroying a mpath
Remi Pommarel repk@triplefau.lt mac80211: mesh: Free ie data when leaving mesh
Sabrina Dubroca sd@queasysnail.net espintcp: handle short messages instead of breaking the encap socket
Andrii Nakryiko andriin@fb.com bpf: Fix map leak in HASH_OF_MAPS map
Thomas Falcon tlfalcon@linux.ibm.com ibmvnic: Fix IRQ mapping disposal in error path
Amit Cohen amitc@mellanox.com selftests: ethtool: Fix test when only two speeds are supported
Ido Schimmel idosch@mellanox.com mlxsw: spectrum_router: Fix use-after-free in router init / de-init
Ido Schimmel idosch@mellanox.com mlxsw: core: Free EMAD transactions using kfree_rcu()
Ido Schimmel idosch@mellanox.com mlxsw: core: Increase scope of RCU read-side critical section
Christoph Hellwig hch@lst.de nvme: add a Identify Namespace Identification Descriptor list quirk
Guillaume Nault gnault@redhat.com bareudp: forbid mixing IP and MPLS in multiproto mode
Subbaraya Sundeep sbhatta@marvell.com octeontx2-pf: Unregister netdev at driver remove
Subbaraya Sundeep sbhatta@marvell.com octeontx2-pf: cancel reset_task work
Subbaraya Sundeep sbhatta@marvell.com octeontx2-pf: Fix reset_task bugs
Jakub Kicinski kuba@kernel.org mlx4: disable device on shutdown
Herbert Xu herbert@gondor.apana.org.au rhashtable: Fix unprotected RCU dereference in __rht_ptr
Johan Hovold johan@kernel.org net: lan78xx: fix transfer-buffer memory leak
Johan Hovold johan@kernel.org net: lan78xx: add missing endpoint sanity check
Alaa Hleihel alaa@mellanox.com net/mlx5e: Fix kernel crash when setting vf VLANID on a VF dev
Ron Diskin rondi@mellanox.com net/mlx5e: Modify uplink state on interface up/down
Eran Ben Elisha eranbe@mellanox.com net/mlx5: Query PPS pin operational status before registering it
Eran Ben Elisha eranbe@mellanox.com net/mlx5: Verify Hardware supports requested ptp function on a given pin
Eran Ben Elisha eranbe@mellanox.com net/mlx5: Fix a bug of using ptp channel index as pin index
Aya Levin ayal@mellanox.com net/mlx5e: Fix error path of device attach
Parav Pandit parav@mellanox.com net/mlx5: E-switch, Destroy TSAR after reload interface
Parav Pandit parav@mellanox.com net/mlx5: E-switch, Destroy TSAR when fail to enable the mode
Guojia Liao liaoguojia@huawei.com net: hns3: fix for VLAN config when reset failed
Guojia Liao liaoguojia@huawei.com net: hns3: fix aRFS FD rules leftover after add a user FD rule
Jian Shen shenjian15@huawei.com net: hns3: add reset check for VF updating port based VLAN
Yonglong Liu liuyonglong@huawei.com net: hns3: fix a TX timeout issue
Yunsheng Lin linyunsheng@huawei.com net: hns3: fix desc filling bug when skb is expanded or lineared
Michael Karcher kernel@mkarcher.dialup.fu-berlin.de sh: Fix validation of system call number
Peter Zijlstra peterz@infradead.org sh/tlb: Fix PGTABLE_LEVELS > 2
Tanner Love tannerlove@google.com selftests/net: tcp_mmap: fix clang warning for target arch PowerPC
Tanner Love tannerlove@google.com selftests/net: so_txtime: fix clang issues for target arch PowerPC
Tanner Love tannerlove@google.com selftests/net: psock_fanout: fix clang issues for target arch PowerPC
Tanner Love tannerlove@google.com selftests/net: rxtimestamp: fix clang issues for target arch PowerPC
Sagi Grimberg sagi@grimberg.me nvme-tcp: fix possible hang waiting for icresp response
Russell King rmk+kernel@armlinux.org.uk ARM: dts: armada-38x: fix NETA lockup when repeatedly switching speeds
Steffen Klassert steffen.klassert@secunet.com xfrm: Fix crash when the hold queue is used.
Sabrina Dubroca sd@queasysnail.net espintcp: recv() should return 0 when the peer socket is closed
Douglas Anderson dianders@chromium.org pinctrl: qcom: Handle broken/missing PDC dual edge IRQs on sc7180
Maxime Ripard maxime@cerno.tech ARM: dts sunxi: Relax a bit the CMA pool allocation range
Xin Long lucien.xin@gmail.com xfrm: policy: match with both mark and mask on user interfaces
YueHaibing yuehaibing@huawei.com net/x25: Fix null-ptr-deref in x25_disconnect
Xiyu Yang xiyuyang19@fudan.edu.cn net/x25: Fix x25_neigh refcnt leak when x25 disconnect
Ben Hutchings ben@decadent.org.uk libtraceevent: Fix build with binutils 2.35
Peilin Ye yepeilin.cs@gmail.com rds: Prevent kernel-infoleak in rds_notify_queue_get()
Linus Torvalds torvalds@linux-foundation.org random32: remove net_rand_state from the latent entropy gcc plugin
Willy Tarreau w@1wt.eu random: fix circular include dependency on arm64 after addition of percpu.h
Biju Das biju.das.jz@bp.renesas.com drm: of: Fix double-free bug
Steve Cohen cohens@codeaurora.org drm: hold gem reference until object is no longer accessed
Linus Walleij linus.walleij@linaro.org drm/mcde: Fix stability issue
Paul Cercueil paul@crapouillou.net drm/dbi: Fix SPI Type 1 (9-bit) transfer
Peilin Ye yepeilin.cs@gmail.com drm/amdgpu: Prevent kernel-infoleak in amdgpu_info_ioctl()
Mazin Rezk mnrzk@protonmail.com drm/amd/display: Clear dm_state for fast updates
Alex Deucher alexander.deucher@amd.com Revert "drm/amdgpu: Fix NULL dereference in dpm sysfs handlers"
Grygorii Strashko grygorii.strashko@ti.com ARM: percpu.h: fix build error
Willy Tarreau w@1wt.eu random32: update the net random state on interrupt and activity
Michael S. Tsirkin mst@redhat.com virtio_balloon: fix up endian-ness for free cmd id
Michael Trimarchi michael@amarulasolutions.com ARM: dts: imx6qdl-icore: Fix OTG_ID pin and sdcard detect
Fabio Estevam festevam@gmail.com ARM: dts: imx6sx-sdb: Fix the phy-mode on fec2
Fabio Estevam festevam@gmail.com ARM: dts: imx6sx-sabreauto: Fix the phy-mode on fec2
Jaedon Shin jaedon.shin@gmail.com ARM: 8987/1: VDSO: Fix incorrect clock_gettime64
Will Deacon will@kernel.org ARM: 8986/1: hw_breakpoint: Don't invoke overflow handler on uaccess watchpoints
Paul Moore paul@paul-moore.com revert: 1320a4052ea1 ("audit: trigger accompanying records when no rules present")
Wang Hai wanghai38@huawei.com 9p/trans_fd: Fix concurrency del of req_list in p9_fd_cancelled/p9_read_work
Michael S. Tsirkin mst@redhat.com vhost/scsi: fix up req type endian-ness
Mike Marciniszyn mike.marciniszyn@intel.com IB/rdmavt: Fix RQ counting issues causing use of an invalid RWQE
Jason Gunthorpe jgg@nvidia.com RDMA/mlx5: Fix prefetch memory leak if get_prefetchable_mr fails
Takashi Iwai tiwai@suse.de ALSA: hda/hdmi: Fix keep_power assignment for non-component devices
Takashi Iwai tiwai@suse.de ALSA: hda: Workaround for spurious wakeups on some Intel platforms
Kailang Yang kailang@realtek.com ALSA: hda/realtek - Fixed HP right speaker no sound
PeiSen Hou pshou@realtek.com ALSA: hda/realtek: Fix add a "ultra_low_power" function for intel reference board (alc256)
Armas Spann zappel@retarded.farm ALSA: hda/realtek: typo_fix: enable headset mic of ASUS ROG Zephyrus G14(GA401) series with ALC289
Armas Spann zappel@retarded.farm ALSA: hda/realtek: enable headset mic of ASUS ROG Zephyrus G15(GA502) series with ALC289
Laurence Tratt laurie@tratt.net ALSA: usb-audio: Add implicit feedback quirk for SSL2
Robert Hancock hancockrwd@gmail.com PCI/ASPM: Disable ASPM on ASMedia ASM1083/1085 PCIe-to-PCI bridge
NeilBrown neilb@suse.de sunrpc: check that domain table is empty at module unload.
-------------
Diffstat:
Makefile | 4 +- arch/arm/boot/dts/armada-38x.dtsi | 3 +- arch/arm/boot/dts/imx6qdl-icore.dtsi | 3 +- arch/arm/boot/dts/imx6sx-sabreauto.dts | 2 +- arch/arm/boot/dts/imx6sx-sdb.dtsi | 2 +- arch/arm/boot/dts/sun4i-a10.dtsi | 2 +- arch/arm/boot/dts/sun5i.dtsi | 2 +- arch/arm/boot/dts/sun7i-a20.dtsi | 2 +- arch/arm/include/asm/percpu.h | 2 + arch/arm/kernel/hw_breakpoint.c | 27 ++++++-- arch/arm/kernel/vdso.c | 1 + arch/arm64/include/asm/alternative.h | 4 +- arch/arm64/include/asm/checksum.h | 5 +- arch/parisc/include/asm/cmpxchg.h | 2 + arch/parisc/lib/bitops.c | 12 ++++ arch/riscv/mm/init.c | 33 ++++----- arch/riscv/mm/kasan_init.c | 4 +- arch/sh/include/asm/pgalloc.h | 10 +-- arch/sh/kernel/entry-common.S | 6 +- arch/x86/kernel/i8259.c | 2 +- arch/x86/kernel/stacktrace.c | 5 -- arch/x86/kernel/unwind_orc.c | 8 ++- arch/x86/kvm/lapic.c | 2 +- arch/x86/kvm/svm/svm.c | 9 ++- drivers/char/random.c | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | 9 ++- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 36 +++++++--- drivers/gpu/drm/drm_gem.c | 10 ++- drivers/gpu/drm/drm_mipi_dbi.c | 2 +- drivers/gpu/drm/drm_of.c | 4 +- drivers/gpu/drm/mcde/mcde_display.c | 11 ++- drivers/i2c/busses/i2c-cadence.c | 28 ++++---- drivers/infiniband/core/cq.c | 14 +++- drivers/infiniband/hw/mlx5/odp.c | 5 +- drivers/infiniband/sw/rdmavt/qp.c | 33 ++------- drivers/infiniband/sw/rdmavt/rc.c | 4 +- drivers/misc/habanalabs/command_submission.c | 14 +++- drivers/net/bareudp.c | 29 ++++++-- drivers/net/ethernet/chelsio/cxgb4/sge.c | 1 + drivers/net/ethernet/cortina/gemini.c | 5 +- drivers/net/ethernet/hisilicon/hns3/hns3_enet.c | 18 ++--- .../ethernet/hisilicon/hns3/hns3pf/hclge_main.c | 35 +++++----- .../ethernet/hisilicon/hns3/hns3vf/hclgevf_main.c | 38 +++++++---- drivers/net/ethernet/ibm/ibmvnic.c | 2 +- .../net/ethernet/marvell/octeontx2/nic/otx2_pf.c | 3 + .../net/ethernet/marvell/octeontx2/nic/otx2_vf.c | 2 + drivers/net/ethernet/mediatek/mtk_eth_soc.c | 2 + drivers/net/ethernet/mellanox/mlx4/main.c | 2 + .../ethernet/mellanox/mlx5/core/en/tc_tun_geneve.c | 2 + .../ethernet/mellanox/mlx5/core/en/tc_tun_gre.c | 2 + .../ethernet/mellanox/mlx5/core/en/tc_tun_vxlan.c | 2 + drivers/net/ethernet/mellanox/mlx5/core/en_main.c | 31 +++++++-- drivers/net/ethernet/mellanox/mlx5/core/en_rep.c | 2 + drivers/net/ethernet/mellanox/mlx5/core/en_tc.c | 1 + drivers/net/ethernet/mellanox/mlx5/core/eswitch.c | 27 +++++--- drivers/net/ethernet/mellanox/mlx5/core/eswitch.h | 2 + .../ethernet/mellanox/mlx5/core/eswitch_offloads.c | 6 +- .../net/ethernet/mellanox/mlx5/core/lib/clock.c | 78 ++++++++++++++++++---- drivers/net/ethernet/mellanox/mlxsw/core.c | 8 ++- .../net/ethernet/mellanox/mlxsw/spectrum_router.c | 50 +++++++------- drivers/net/ethernet/ni/nixge.c | 8 ++- drivers/net/ethernet/pensando/ionic/ionic_lif.c | 4 +- drivers/net/ethernet/qlogic/qed/qed_int.c | 3 +- drivers/net/ethernet/renesas/ravb_main.c | 26 +++++++- drivers/net/usb/hso.c | 5 +- drivers/net/usb/lan78xx.c | 6 ++ drivers/net/vxlan.c | 6 +- drivers/net/wan/hdlc_x25.c | 4 +- drivers/net/wan/lapbether.c | 8 ++- drivers/net/wireless/intel/iwlwifi/iwl-dbg-tlv.c | 16 ++++- .../net/wireless/mediatek/mt76/mt7615/debugfs.c | 9 +-- drivers/net/xen-netfront.c | 64 ++++++++++++------ drivers/nfc/s3fwrn5/core.c | 1 + drivers/nvme/host/core.c | 15 +---- drivers/nvme/host/nvme.h | 7 ++ drivers/nvme/host/pci.c | 2 + drivers/nvme/host/tcp.c | 3 + drivers/pci/quirks.c | 13 ++++ drivers/pinctrl/qcom/Kconfig | 2 + drivers/pinctrl/qcom/pinctrl-msm.c | 74 +++++++++++++++++++- drivers/pinctrl/qcom/pinctrl-msm.h | 4 ++ drivers/pinctrl/qcom/pinctrl-sc7180.c | 1 + drivers/scsi/scsi_lib.c | 16 +++-- drivers/vhost/scsi.c | 2 +- drivers/virtio/virtio_balloon.c | 6 +- fs/io_uring.c | 13 ++-- include/linux/mlx5/mlx5_ifc.h | 1 + include/linux/random.h | 3 + include/linux/rhashtable.h | 25 +++---- include/net/xfrm.h | 15 +++-- include/rdma/rdmavt_qp.h | 19 ++++++ kernel/audit.c | 1 - kernel/audit.h | 8 --- kernel/auditsc.c | 3 + kernel/bpf/hashtab.c | 12 +++- kernel/time/timer.c | 8 +++ lib/random32.c | 2 +- net/9p/trans_fd.c | 15 ++++- net/bluetooth/hci_event.c | 26 ++++++-- net/key/af_key.c | 4 +- net/mac80211/cfg.c | 1 + net/mac80211/mesh_pathtbl.c | 1 + net/rds/recv.c | 3 +- net/sunrpc/sunrpc.h | 1 + net/sunrpc/sunrpc_syms.c | 2 + net/sunrpc/svcauth.c | 25 +++++++ net/x25/x25_subr.c | 6 ++ net/xfrm/espintcp.c | 30 ++++++++- net/xfrm/xfrm_policy.c | 39 +++++------ net/xfrm/xfrm_user.c | 18 +++-- sound/pci/hda/hda_controller.h | 2 +- sound/pci/hda/hda_intel.c | 17 ++++- sound/pci/hda/patch_hdmi.c | 2 +- sound/pci/hda/patch_realtek.c | 36 ++++++++-- sound/usb/pcm.c | 1 + tools/lib/traceevent/plugins/Makefile | 2 +- tools/perf/arch/arm/util/auxtrace.c | 8 +-- tools/testing/selftests/bpf/test_offload.py | 3 + .../selftests/net/fib_nexthop_multiprefix.sh | 2 +- tools/testing/selftests/net/forwarding/ethtool.sh | 2 - tools/testing/selftests/net/ip_defrag.sh | 2 + tools/testing/selftests/net/psock_fanout.c | 3 +- tools/testing/selftests/net/rxtimestamp.c | 3 +- tools/testing/selftests/net/so_txtime.c | 2 +- tools/testing/selftests/net/tcp_mmap.c | 6 +- tools/testing/selftests/net/txtimestamp.sh | 2 +- virt/kvm/arm/mmu.c | 11 +-- 128 files changed, 942 insertions(+), 422 deletions(-)
On Mon, Aug 03, 2020 at 02:17:38PM +0200, Greg Kroah-Hartman wrote:
This is the start of the stable review cycle for the 5.7.13 release. There are 120 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Wed, 05 Aug 2020 12:18:33 +0000. Anything received after that time might be too late.
Building sparc64:allmodconfig ... failed -------------- Error log: <stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp] In file included from arch/sparc/include/asm/percpu_64.h:11, from arch/sparc/include/asm/percpu.h:5, from include/linux/random.h:14, from fs/crypto/policy.c:13: arch/sparc/include/asm/trap_block.h:54:39: error: 'NR_CPUS' undeclared here (not in a function) 54 | extern struct trap_per_cpu trap_block[NR_CPUS];
Inherited from mainline. Builds are not complete yet; we may see a few more failures (powerpc:ppc64e_defconfig fails to build in mainline as well).
Guenter
On Mon, Aug 03, 2020 at 08:58:20AM -0700, Guenter Roeck wrote:
On Mon, Aug 03, 2020 at 02:17:38PM +0200, Greg Kroah-Hartman wrote:
This is the start of the stable review cycle for the 5.7.13 release. There are 120 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Wed, 05 Aug 2020 12:18:33 +0000. Anything received after that time might be too late.
Building sparc64:allmodconfig ... failed
Error log: <stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp] In file included from arch/sparc/include/asm/percpu_64.h:11, from arch/sparc/include/asm/percpu.h:5, from include/linux/random.h:14, from fs/crypto/policy.c:13: arch/sparc/include/asm/trap_block.h:54:39: error: 'NR_CPUS' undeclared here (not in a function) 54 | extern struct trap_per_cpu trap_block[NR_CPUS];
Inherited from mainline. Builds are not complete yet; we may see a few more failures (powerpc:ppc64e_defconfig fails to build in mainline as well).
If it gets fixed upstream, I'll fix it here :)
thanks,
greg k-h
Hi Greg,
On Mon, Aug 3, 2020 at 7:35 PM Greg Kroah-Hartman gregkh@linuxfoundation.org wrote:
On Mon, Aug 03, 2020 at 08:58:20AM -0700, Guenter Roeck wrote:
On Mon, Aug 03, 2020 at 02:17:38PM +0200, Greg Kroah-Hartman wrote:
This is the start of the stable review cycle for the 5.7.13 release. There are 120 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Wed, 05 Aug 2020 12:18:33 +0000. Anything received after that time might be too late.
Building sparc64:allmodconfig ... failed
Error log: <stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp] In file included from arch/sparc/include/asm/percpu_64.h:11, from arch/sparc/include/asm/percpu.h:5, from include/linux/random.h:14, from fs/crypto/policy.c:13: arch/sparc/include/asm/trap_block.h:54:39: error: 'NR_CPUS' undeclared here (not in a function) 54 | extern struct trap_per_cpu trap_block[NR_CPUS];
Inherited from mainline. Builds are not complete yet; we may see a few more failures (powerpc:ppc64e_defconfig fails to build in mainline as well).
If it gets fixed upstream, I'll fix it here :)
And else you'll release a known-broken v5.7.13?
Perhaps backporting should be a bit less aggressive? This breakage was introduced in between v5.8-rc7 and v5.8, and backported before people had the time to properly look into the v5.8 build bot logs.
Gr{oetje,eeting}s,
Geert
-- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds
On Mon, Aug 03, 2020 at 10:33:59PM +0200, Geert Uytterhoeven wrote:
Hi Greg,
On Mon, Aug 3, 2020 at 7:35 PM Greg Kroah-Hartman gregkh@linuxfoundation.org wrote:
On Mon, Aug 03, 2020 at 08:58:20AM -0700, Guenter Roeck wrote:
On Mon, Aug 03, 2020 at 02:17:38PM +0200, Greg Kroah-Hartman wrote:
This is the start of the stable review cycle for the 5.7.13 release. There are 120 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Wed, 05 Aug 2020 12:18:33 +0000. Anything received after that time might be too late.
Building sparc64:allmodconfig ... failed
Error log: <stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp] In file included from arch/sparc/include/asm/percpu_64.h:11, from arch/sparc/include/asm/percpu.h:5, from include/linux/random.h:14, from fs/crypto/policy.c:13: arch/sparc/include/asm/trap_block.h:54:39: error: 'NR_CPUS' undeclared here (not in a function) 54 | extern struct trap_per_cpu trap_block[NR_CPUS];
Inherited from mainline. Builds are not complete yet; we may see a few more failures (powerpc:ppc64e_defconfig fails to build in mainline as well).
If it gets fixed upstream, I'll fix it here :)
And else you'll release a known-broken v5.7.13?
Perhaps backporting should be a bit less aggressive? This breakage was introduced in between v5.8-rc7 and v5.8, and backported before people had the time to properly look into the v5.8 build bot logs.
The bisect log below applies to both the sparc and the powerpc build failures.
I should have guessed. Bisect points to the random changes. Those are really causing an endless amount of trouble. I hope the problem they are solving is worth all that trouble.
Guenter
--- # bad: [333e573a423b816b8b28000d6106fa52bd98e198] Linux 4.14.192-rc1 # good: [7f2c5eb458b8855655a19c44cd0043f7f83c595f] Linux 4.14.191 git bisect start 'HEAD' 'v4.14.191' # bad: [88918f1a1f18dad31154103fa5218e714f10679e] net/x25: Fix x25_neigh refcnt leak when x25 disconnect git bisect bad 88918f1a1f18dad31154103fa5218e714f10679e # good: [1f9d268fd05887ecb6225a9452309efc3535492d] ARM: percpu.h: fix build error git bisect good 1f9d268fd05887ecb6225a9452309efc3535492d # bad: [f496bedf603212e6dbef88425680f8e137a51e27] random32: remove net_rand_state from the latent entropy gcc plugin git bisect bad f496bedf603212e6dbef88425680f8e137a51e27 # good: [1e69d85c7e40051b57414953410bcee858285081] f2fs: check memory boundary by insane namelen git bisect good 1e69d85c7e40051b57414953410bcee858285081 # bad: [0ea865dc4e3d93320e7103958ff041f5d7032ed5] random: fix circular include dependency on arm64 after addition of percpu.h git bisect bad 0ea865dc4e3d93320e7103958ff041f5d7032ed5 # good: [e2bd43f819d770de686a904b7139bf444e96543c] f2fs: check if file namelen exceeds max value git bisect good e2bd43f819d770de686a904b7139bf444e96543c # first bad commit: [0ea865dc4e3d93320e7103958ff041f5d7032ed5] random: fix circular include dependency on arm64 after addition of percpu.h
Hi Guenter,
On Mon, Aug 03, 2020 at 08:01:07PM -0700, Guenter Roeck wrote:
I should have guessed. Bisect points to the random changes. Those are really causing an endless amount of trouble. I hope the problem they are solving is worth all that trouble.
I was exactly suggesting that we postpone them. I don't think the problem is worth the trouble, and fixes are currently being proposed so it might just be a matter of days.
Regards, Willy
On Mon, Aug 3, 2020 at 8:01 PM Guenter Roeck linux@roeck-us.net wrote:
The bisect log below applies to both the sparc and the powerpc build failures.
Does the attached fix it?
Linus
On 8/3/20 8:12 PM, Linus Torvalds wrote:
On Mon, Aug 3, 2020 at 8:01 PM Guenter Roeck linux@roeck-us.net wrote:
The bisect log below applies to both the sparc and the powerpc build failures.
Does the attached fix it?
Yes, for the failing file with both ppc64 and sparc64. I started a full test for all architectures with the patch applied on top of v5.8. It should take about 1-2 hours to finish. I'll let you know when I have a complete set of results.
Guenter
On Mon, Aug 03, 2020 at 08:12:51PM -0700, Linus Torvalds wrote:
On Mon, Aug 3, 2020 at 8:01 PM Guenter Roeck linux@roeck-us.net wrote:
The bisect log below applies to both the sparc and the powerpc build failures.
Does the attached fix it?
Linus
From 780c8591bce09bbdd2908b7c07b3baba883a1ce6 Mon Sep 17 00:00:00 2001 From: Linus Torvalds torvalds@linux-foundation.org Date: Fri, 31 Jul 2020 07:51:14 +0200 Subject: [PATCH] random32: move the pseudo-random 32-bit definitions to prandom.h
The addition of percpu.h to the list of includes in random.h revealed some circular dependencies on arm64 and possibly other platforms. This include was added solely for the pseudo-random definitions, which have nothing to do with the rest of the definitions in this file but are still there for legacy reasons.
This patch moves the pseudo-random parts to linux/prandom.h and the percpu.h include with it, which is now guarded by _LINUX_PRANDOM_H and protected against recursive inclusion.
A further cleanup step would be to remove this from <linux/random.h> entirely, and make people who use the prandom infrastructure include just the new header file. That's a bit of a churn patch, but grepping for "prandom_" and "next_pseudo_random32" should catch most users.
Acked-by: Willy Tarreau w@1wt.eu Signed-off-by: Linus Torvalds torvalds@linux-foundation.org
With this patch applied on top of v5.8:
Build results: total: 151 pass: 151 fail: 0 Qemu test results: total: 430 pass: 430 fail: 0
Tested-by: Guenter Roeck linux@roeck-us.net
Thanks, Guenter
include/linux/prandom.h | 78 +++++++++++++++++++++++++++++++++++++++++ include/linux/random.h | 66 +++------------------------------- 2 files changed, 82 insertions(+), 62 deletions(-) create mode 100644 include/linux/prandom.h
diff --git a/include/linux/prandom.h b/include/linux/prandom.h new file mode 100644 index 000000000000..968c4287a277 --- /dev/null +++ b/include/linux/prandom.h @@ -0,0 +1,78 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/*
- include/linux/prandom.h
- Include file for the fast pseudo-random 32-bit
- generation.
- */
+#ifndef _LINUX_PRANDOM_H +#define _LINUX_PRANDOM_H
+#include <linux/types.h> +#include <linux/percpu.h>
+u32 prandom_u32(void); +void prandom_bytes(void *buf, size_t nbytes); +void prandom_seed(u32 seed); +void prandom_reseed_late(void);
+struct rnd_state {
- __u32 s1, s2, s3, s4;
+};
+DECLARE_PER_CPU(struct rnd_state, net_rand_state);
+u32 prandom_u32_state(struct rnd_state *state); +void prandom_bytes_state(struct rnd_state *state, void *buf, size_t nbytes); +void prandom_seed_full_state(struct rnd_state __percpu *pcpu_state);
+#define prandom_init_once(pcpu_state) \
- DO_ONCE(prandom_seed_full_state, (pcpu_state))
+/**
- prandom_u32_max - returns a pseudo-random number in interval [0, ep_ro)
- @ep_ro: right open interval endpoint
- Returns a pseudo-random number that is in interval [0, ep_ro). Note
- that the result depends on PRNG being well distributed in [0, ~0U]
- u32 space. Here we use maximally equidistributed combined Tausworthe
- generator, that is, prandom_u32(). This is useful when requesting a
- random index of an array containing ep_ro elements, for example.
- Returns: pseudo-random number in interval [0, ep_ro)
- */
+static inline u32 prandom_u32_max(u32 ep_ro) +{
- return (u32)(((u64) prandom_u32() * ep_ro) >> 32);
+}
+/*
- Handle minimum values for seeds
- */
+static inline u32 __seed(u32 x, u32 m) +{
- return (x < m) ? x + m : x;
+}
+/**
- prandom_seed_state - set seed for prandom_u32_state().
- @state: pointer to state structure to receive the seed.
- @seed: arbitrary 64-bit value to use as a seed.
- */
+static inline void prandom_seed_state(struct rnd_state *state, u64 seed) +{
- u32 i = (seed >> 32) ^ (seed << 10) ^ seed;
- state->s1 = __seed(i, 2U);
- state->s2 = __seed(i, 8U);
- state->s3 = __seed(i, 16U);
- state->s4 = __seed(i, 128U);
+}
+/* Pseudo random number generator from numerical recipes. */ +static inline u32 next_pseudo_random32(u32 seed) +{
- return seed * 1664525 + 1013904223;
+}
+#endif diff --git a/include/linux/random.h b/include/linux/random.h index 9ab7443bd91b..f45b8be3e3c4 100644 --- a/include/linux/random.h +++ b/include/linux/random.h @@ -11,7 +11,6 @@ #include <linux/kernel.h> #include <linux/list.h> #include <linux/once.h> -#include <asm/percpu.h> #include <uapi/linux/random.h> @@ -111,63 +110,12 @@ declare_get_random_var_wait(long) unsigned long randomize_page(unsigned long start, unsigned long range); -u32 prandom_u32(void); -void prandom_bytes(void *buf, size_t nbytes); -void prandom_seed(u32 seed); -void prandom_reseed_late(void);
-struct rnd_state {
- __u32 s1, s2, s3, s4;
-};
-DECLARE_PER_CPU(struct rnd_state, net_rand_state);
-u32 prandom_u32_state(struct rnd_state *state); -void prandom_bytes_state(struct rnd_state *state, void *buf, size_t nbytes); -void prandom_seed_full_state(struct rnd_state __percpu *pcpu_state);
-#define prandom_init_once(pcpu_state) \
- DO_ONCE(prandom_seed_full_state, (pcpu_state))
-/**
- prandom_u32_max - returns a pseudo-random number in interval [0, ep_ro)
- @ep_ro: right open interval endpoint
- Returns a pseudo-random number that is in interval [0, ep_ro). Note
- that the result depends on PRNG being well distributed in [0, ~0U]
- u32 space. Here we use maximally equidistributed combined Tausworthe
- generator, that is, prandom_u32(). This is useful when requesting a
- random index of an array containing ep_ro elements, for example.
- Returns: pseudo-random number in interval [0, ep_ro)
- */
-static inline u32 prandom_u32_max(u32 ep_ro) -{
- return (u32)(((u64) prandom_u32() * ep_ro) >> 32);
-}
/*
- Handle minimum values for seeds
- */
-static inline u32 __seed(u32 x, u32 m) -{
- return (x < m) ? x + m : x;
-}
-/**
- prandom_seed_state - set seed for prandom_u32_state().
- @state: pointer to state structure to receive the seed.
- @seed: arbitrary 64-bit value to use as a seed.
- This is designed to be standalone for just prandom
- users, but for now we include it from <linux/random.h>
*/
- for legacy reasons.
-static inline void prandom_seed_state(struct rnd_state *state, u64 seed) -{
- u32 i = (seed >> 32) ^ (seed << 10) ^ seed;
- state->s1 = __seed(i, 2U);
- state->s2 = __seed(i, 8U);
- state->s3 = __seed(i, 16U);
- state->s4 = __seed(i, 128U);
-} +#include <linux/prandom.h> #ifdef CONFIG_ARCH_RANDOM # include <asm/archrandom.h> @@ -210,10 +158,4 @@ static inline bool __init arch_get_random_long_early(unsigned long *v) } #endif -/* Pseudo random number generator from numerical recipes. */ -static inline u32 next_pseudo_random32(u32 seed) -{
- return seed * 1664525 + 1013904223;
-}
#endif /* _LINUX_RANDOM_H */
2.28.0.4.g1bac1770cd
On Mon, Aug 03, 2020 at 10:58:55PM -0700, Guenter Roeck wrote:
On Mon, Aug 03, 2020 at 08:12:51PM -0700, Linus Torvalds wrote:
On Mon, Aug 3, 2020 at 8:01 PM Guenter Roeck linux@roeck-us.net wrote:
The bisect log below applies to both the sparc and the powerpc build failures.
Does the attached fix it?
Linus
From 780c8591bce09bbdd2908b7c07b3baba883a1ce6 Mon Sep 17 00:00:00 2001 From: Linus Torvalds torvalds@linux-foundation.org Date: Fri, 31 Jul 2020 07:51:14 +0200 Subject: [PATCH] random32: move the pseudo-random 32-bit definitions to prandom.h
The addition of percpu.h to the list of includes in random.h revealed some circular dependencies on arm64 and possibly other platforms. This include was added solely for the pseudo-random definitions, which have nothing to do with the rest of the definitions in this file but are still there for legacy reasons.
This patch moves the pseudo-random parts to linux/prandom.h and the percpu.h include with it, which is now guarded by _LINUX_PRANDOM_H and protected against recursive inclusion.
A further cleanup step would be to remove this from <linux/random.h> entirely, and make people who use the prandom infrastructure include just the new header file. That's a bit of a churn patch, but grepping for "prandom_" and "next_pseudo_random32" should catch most users.
Acked-by: Willy Tarreau w@1wt.eu Signed-off-by: Linus Torvalds torvalds@linux-foundation.org
With this patch applied on top of v5.8:
Build results: total: 151 pass: 151 fail: 0 Qemu test results: total: 430 pass: 430 fail: 0
Tested-by: Guenter Roeck linux@roeck-us.net
Thanks for this, I'll go queue it up in a bit and push out some new -rc2 releases.
greg k-h
On Mon, Aug 3, 2020 at 10:59 PM Guenter Roeck linux@roeck-us.net wrote:
Tested-by: Guenter Roeck linux@roeck-us.net
Thanks.
Greg, I updated my internal commit with Guenter's tested-by and some more commentary (I had tried to break out that file entirely, it gets ugly).
So it's now commit c0842fbc1b18 ("random32: move the pseudo-random 32-bit definitions to prandom.h") in my tree, and I've pushed it out.
Linus
On Mon, Aug 03, 2020 at 11:33:39PM -0700, Linus Torvalds wrote:
On Mon, Aug 3, 2020 at 10:59 PM Guenter Roeck linux@roeck-us.net wrote:
Tested-by: Guenter Roeck linux@roeck-us.net
Thanks.
Greg, I updated my internal commit with Guenter's tested-by and some more commentary (I had tried to break out that file entirely, it gets ugly).
So it's now commit c0842fbc1b18 ("random32: move the pseudo-random 32-bit definitions to prandom.h") in my tree, and I've pushed it out.
Great, I see it now and will grab it from there, thanks!
greg k-h
On Mon, Aug 03, 2020 at 07:33:30PM +0200, Greg Kroah-Hartman wrote:
On Mon, Aug 03, 2020 at 08:58:20AM -0700, Guenter Roeck wrote:
On Mon, Aug 03, 2020 at 02:17:38PM +0200, Greg Kroah-Hartman wrote:
This is the start of the stable review cycle for the 5.7.13 release. There are 120 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Wed, 05 Aug 2020 12:18:33 +0000. Anything received after that time might be too late.
Building sparc64:allmodconfig ... failed
Error log: <stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp] In file included from arch/sparc/include/asm/percpu_64.h:11, from arch/sparc/include/asm/percpu.h:5, from include/linux/random.h:14, from fs/crypto/policy.c:13: arch/sparc/include/asm/trap_block.h:54:39: error: 'NR_CPUS' undeclared here (not in a function) 54 | extern struct trap_per_cpu trap_block[NR_CPUS];
Inherited from mainline. Builds are not complete yet; we may see a few more failures (powerpc:ppc64e_defconfig fails to build in mainline as well).
If it gets fixed upstream, I'll fix it here :)
Are you serious ? This problem literally affects all branches, starting with v4.4.y. And, yes, the powerpc builds fail as well for all branches. Just like mainline. I guess that means it doesn't matter either ?
Building powerpc:ppc64e_defconfig ... failed -------------- Error log: In file included from arch/powerpc/include/asm/paca.h:22, from arch/powerpc/include/asm/percpu.h:13, from include/linux/random.h:12, from lib/uuid.c:22: arch/powerpc/include/asm/mmu.h:131:22: error: unknown type name 'next_tlbcam_idx'
Congratulations, looks like all stable releases are "bug for bug compatible" with mainline.
Does it even make sense to provide full reports for this set of releases ?
Guenter