2020-05-01 14:00:35

by Greg Kroah-Hartman

[permalink] [raw]
Subject: [PATCH 4.14 000/117] 4.14.178-rc1 review

This is the start of the stable review cycle for the 4.14.178 release.
There are 117 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 Sun, 03 May 2020 13:12:02 +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/v4.x/stable-review/patch-4.14.178-rc1.gz
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.14.y
and the diffstat can be found below.

thanks,

greg k-h

-------------
Pseudo-Shortlog of commits:

Greg Kroah-Hartman <[email protected]>
Linux 4.14.178-rc1

Ritesh Harjani <[email protected]>
ext4: check for non-zero journal inum in ext4_calculate_overhead

Yuval Basson <[email protected]>
qed: Fix use after free in qed_chain_free

Colin Ian King <[email protected]>
ext4: unsigned int compared against zero

Theodore Ts'o <[email protected]>
ext4: fix block validity checks for journal inodes using indirect blocks

Theodore Ts'o <[email protected]>
ext4: don't perform block validity checks on the journal inode

Theodore Ts'o <[email protected]>
ext4: protect journal inode's blocks using block_validity

Theodore Ts'o <[email protected]>
ext4: avoid declaring fs inconsistent due to invalid file handles

Sascha Hauer <[email protected]>
hwmon: (jc42) Fix name to have no illegal characters

Frank Rowand <[email protected]>
of: unittest: kmemleak on changeset destroy

Theodore Ts'o <[email protected]>
ext4: convert BUG_ON's to WARN_ON's in mballoc.c

Theodore Ts'o <[email protected]>
ext4: increase wait time needed before reuse of deleted inode numbers

yangerkun <[email protected]>
ext4: use matching invalidatepage in ext4_writepage

Fangrui Song <[email protected]>
arm64: Delete the space separator in __emit_inst

Juergen Gross <[email protected]>
xen/xenbus: ensure xenbus_map_ring_valloc() returns proper grant status

Josh Poimboeuf <[email protected]>
objtool: Support Clang non-section symbols in ORC dump

Josh Poimboeuf <[email protected]>
objtool: Fix CONFIG_UBSAN_TRAP unreachable warnings

Bodo Stroesser <[email protected]>
scsi: target: fix PR IN / READ FULL STATUS for FC

Darrick J. Wong <[email protected]>
xfs: fix partially uninitialized structure in xfs_reflink_remap_extent

Olaf Hering <[email protected]>
x86: hyperv: report value of misc_features

Luke Nelson <[email protected]>
bpf, x86: Fix encoding for lower 8-bit registers in BPF_STX BPF_B

Yang Shi <[email protected]>
mm: shmem: disable interrupt when acquiring info->lock in userfaultfd_copy path

Ian Rogers <[email protected]>
perf/core: fix parent pid/tid in task exit events

Nicolas Saenz Julienne <[email protected]>
ARM: dts: bcm283x: Disable dsi0 node

Jason Gunthorpe <[email protected]>
net/cxgb4: Check the return from t4_query_params properly

Wolfram Sang <[email protected]>
i2c: altera: use proper variable to hold errno

Vasily Averin <[email protected]>
nfsd: memory corruption in nfsd4_lock()

YueHaibing <[email protected]>
iio:ad7797: Use correct attribute_group

Nathan Chancellor <[email protected]>
usb: gadget: udc: bdc: Remove unnecessary NULL checks in bdc_req_complete

Thinh Nguyen <[email protected]>
usb: dwc3: gadget: Do link recovery for SS and SSP

Tyler Hicks <[email protected]>
binder: take read mode of mmap_sem in binder_alloc_free_page()

Christian Borntraeger <[email protected]>
include/uapi/linux/swab.h: fix userspace breakage, use __BITS_PER_LONG for swap

Liu Jian <[email protected]>
mtd: cfi: fix deadloop in cfi_cmdset_0002.c do_write_buffer

Clement Leger <[email protected]>
remoteproc: Fix wrong rvring index computation

kaixuxia <[email protected]>
xfs: Fix deadlock between AGI and AGF with RENAME_WHITEOUT

Darrick J. Wong <[email protected]>
xfs: validate sb_logsunit is a multiple of the fs blocksize

Kazuhiro Fujita <[email protected]>
serial: sh-sci: Make sure status register SCxSR is read in correct sequence

Udipto Goswami <[email protected]>
usb: f_fs: Clear OS Extended descriptor counts to zero in ffs_data_reset()

Oliver Neukum <[email protected]>
UAS: fix deadlock in error handling and PM flushing work

Oliver Neukum <[email protected]>
UAS: no use logging any details in case of ENODEV

Oliver Neukum <[email protected]>
cdc-acm: introduce a cool down

Oliver Neukum <[email protected]>
cdc-acm: close race betrween suspend() and acm_softint

Malcolm Priestley <[email protected]>
staging: vt6656: Power save stop wake_up_count wrap around.

Malcolm Priestley <[email protected]>
staging: vt6656: Fix pairwise key entry save.

Malcolm Priestley <[email protected]>
staging: vt6656: Fix drivers TBTT timing counter.

Malcolm Priestley <[email protected]>
staging: vt6656: Fix calling conditions of vnt_set_bss_mode

Malcolm Priestley <[email protected]>
staging: vt6656: Don't set RCR_MULTICAST or RCR_BROADCAST by default.

Nicolas Pitre <[email protected]>
vt: don't hardcode the mem allocation upper bound

Xiyu Yang <[email protected]>
staging: comedi: Fix comedi_device refcnt leak in comedi_open

Ian Abbott <[email protected]>
staging: comedi: dt2815: fix writing hi byte of analog output

Chris Packham <[email protected]>
powerpc/setup_64: Set cache-line-size based on cache-block-size

Ahmad Fatoum <[email protected]>
ARM: imx: provide v7_cpu_resume() only on ARM_CPU_SUSPEND=y

Johannes Berg <[email protected]>
iwlwifi: pcie: actually release queue memory in TVQM

Gyeongtaek Lee <[email protected]>
ASoC: dapm: fixup dapm kcontrol widget

Paul Moore <[email protected]>
audit: check the length of userspace generated audit records

Alan Stern <[email protected]>
usb-storage: Add unusual_devs entry for JMicron JMS566

Jiri Slaby <[email protected]>
tty: rocket, avoid OOB access

Andrew Melnychenko <[email protected]>
tty: hvc: fix buffer overflow during hvc_alloc().

Uros Bizjak <[email protected]>
KVM: VMX: Enable machine check support for 32bit targets

Sean Christopherson <[email protected]>
KVM: Check validity of resolved slot when searching memslots

George Wilson <[email protected]>
tpm: ibmvtpm: retry on H_CLOSED in tpm_ibmvtpm_send()

Jarkko Sakkinen <[email protected]>
tpm/tpm_tis: Free IRQ if probing fails

Alexander Tsoy <[email protected]>
ALSA: usb-audio: Filter out unsupported sample rates on Focusrite devices

Xiyu Yang <[email protected]>
ALSA: usb-audio: Fix usb audio refcnt leak when getting spdif

Kailang Yang <[email protected]>
ALSA: hda/realtek - Add new codec supported for ALC245

Takashi Iwai <[email protected]>
ALSA: usx2y: Fix potential NULL dereference

Lucas Stach <[email protected]>
tools/vm: fix cross-compile build

Muchun Song <[email protected]>
mm/ksm: fix NULL pointer dereference when KSM zero page is enabled

Longpeng <[email protected]>
mm/hugetlb: fix a addressing exception caused by huge_pte_offset

Jann Horn <[email protected]>
vmalloc: fix remap_vmalloc_range() bounds checks

Jason Gunthorpe <[email protected]>
overflow.h: Add arithmetic shift helper

Alan Stern <[email protected]>
USB: hub: Fix handling of connect changes during sleep

Alan Stern <[email protected]>
USB: core: Fix free-while-in-use bug in the USB S-Glibrary

Jann Horn <[email protected]>
USB: early: Handle AMD's spec-compliant identifiers, too

Jonathan Cox <[email protected]>
USB: Add USB_QUIRK_DELAY_CTRL_MSG and USB_QUIRK_DELAY_INIT for Corsair K70 RGB RAPIDFIRE

Changming Liu <[email protected]>
USB: sisusbvga: Change port variable from signed to unsigned

Piotr Krysiuk <[email protected]>
fs/namespace.c: fix mountpoint reference counter race

Lars-Peter Clausen <[email protected]>
iio: xilinx-xadc: Fix sequencer configuration for aux channels in simultaneous mode

Lars-Peter Clausen <[email protected]>
iio: xilinx-xadc: Fix clearing interrupt when enabling trigger

Lars-Peter Clausen <[email protected]>
iio: xilinx-xadc: Fix ADC-B powerdown

Olivier Moysan <[email protected]>
iio: adc: stm32-adc: fix sleep in atomic context

Takashi Iwai <[email protected]>
ALSA: hda: Remove ASUS ROG Zenith from the blacklist

Waiman Long <[email protected]>
KEYS: Avoid false positive ENOMEM error on key read

David Ahern <[email protected]>
vrf: Check skb for XFRM_TRANSFORMED flag

David Ahern <[email protected]>
xfrm: Always set XFRM_TRANSFORMED in xfrm{4,6}_output_finish

Florian Fainelli <[email protected]>
net: dsa: b53: Fix ARL register definitions

Taehee Yoo <[email protected]>
team: fix hang in team_mode_get()

Eric Dumazet <[email protected]>
tcp: cache line align MAX_TCP_HEADER

Xiyu Yang <[email protected]>
net/x25: Fix x25_neigh refcnt leak when receiving frame

Xiyu Yang <[email protected]>
net: netrom: Fix potential nr_neigh refcnt leak in nr_add_node

Doug Berger <[email protected]>
net: bcmgenet: correct per TX/RX ring statistics

Taehee Yoo <[email protected]>
macvlan: fix null dereference in macvlan_device_event()

Taehee Yoo <[email protected]>
macsec: avoid to set wrong mtu

John Haxby <[email protected]>
ipv6: fix restrict IPV6_ADDRFORM operation

Rahul Lakkireddy <[email protected]>
cxgb4: fix large delays in PTP synchronization

Vlastimil Babka <[email protected]>
mm, slub: restore the original intention of prefetch_freepointer()

Heiner Kallweit <[email protected]>
PCI/ASPM: Allow re-enabling Clock PM

Jiri Olsa <[email protected]>
perf/core: Disable page faults when getting phys address

Florian Fainelli <[email protected]>
pwm: bcm2835: Dynamically allocate base

Geert Uytterhoeven <[email protected]>
pwm: renesas-tpu: Fix late Runtime PM enablement

Cornelia Huck <[email protected]>
s390/cio: avoid duplicated 'ADD' uevents

Vasily Averin <[email protected]>
ipc/util.c: sysvipc_find_ipc() should increase position index

Eric Biggers <[email protected]>
selftests: kmod: fix handling test numbers above 9

Vasily Averin <[email protected]>
kernel/gcov/fs.c: gcov_seq_next() should increase position index

Hans de Goede <[email protected]>
ASoC: Intel: atom: Take the drv->lock mutex before calling sst_send_slot_map()

Wu Bo <[email protected]>
scsi: iscsi: Report unbind session event when the target has been removed

Geert Uytterhoeven <[email protected]>
pwm: rcar: Fix late Runtime PM enablement

Yan, Zheng <[email protected]>
ceph: don't skip updating wanted caps when cap is stale

Qiujun Huang <[email protected]>
ceph: return ceph_mdsc_do_request() errors from __get_parent()

James Smart <[email protected]>
scsi: lpfc: Fix kasan slab-out-of-bounds error in lpfc_unreg_login

Tero Kristo <[email protected]>
watchdog: reset last_hw_keepalive time at start

Jeremy Sowden <[email protected]>
vti4: removed duplicate log message.

Wei Yongjun <[email protected]>
crypto: mxs-dcp - make symbols 'sha1_null_hash' and 'sha256_null_hash' static

Rob Clark <[email protected]>
drm/msm: Use the correct dma_sync calls harder

David Howells <[email protected]>
keys: Fix the use of the C++ keyword "private" in uapi/linux/keyctl.h

Arnd Bergmann <[email protected]>
net: ipv4: avoid unused variable warning for sysctl

Nicolai Stange <[email protected]>
net: ipv4: emulate READ_ONCE() on ->hdrincl bit-field in raw_sendmsg()

Dmitry Monakhov <[email protected]>
ext4: fix extent_status fragmentation for plain files


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

Diffstat:

Makefile | 4 +-
arch/arm/boot/dts/bcm283x.dtsi | 1 +
arch/arm/mach-imx/Makefile | 2 +
arch/arm64/include/asm/sysreg.h | 4 +-
arch/powerpc/kernel/setup_64.c | 2 +
arch/x86/kernel/cpu/mshyperv.c | 4 +-
arch/x86/kvm/vmx.c | 2 +-
arch/x86/net/bpf_jit_comp.c | 18 ++-
drivers/android/binder_alloc.c | 8 +-
drivers/char/tpm/tpm_ibmvtpm.c | 136 ++++++++++++----------
drivers/char/tpm/tpm_tis_core.c | 8 +-
drivers/crypto/mxs-dcp.c | 4 +-
drivers/gpu/drm/msm/msm_gem.c | 4 +-
drivers/hwmon/jc42.c | 2 +-
drivers/i2c/busses/i2c-altera.c | 9 +-
drivers/iio/adc/ad7793.c | 2 +-
drivers/iio/adc/stm32-adc.c | 31 ++++-
drivers/iio/adc/xilinx-xadc-core.c | 17 ++-
drivers/mtd/chips/cfi_cmdset_0002.c | 6 +-
drivers/net/dsa/b53/b53_regs.h | 4 +-
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 3 +
drivers/net/ethernet/chelsio/cxgb4/cxgb4_ptp.c | 27 +----
drivers/net/ethernet/chelsio/cxgb4/t4_hw.c | 2 +-
drivers/net/ethernet/chelsio/cxgb4/t4_regs.h | 3 +
drivers/net/ethernet/qlogic/qed/qed_dev.c | 38 +++---
drivers/net/macsec.c | 12 +-
drivers/net/macvlan.c | 2 +-
drivers/net/team/team.c | 4 +
drivers/net/vrf.c | 6 +-
drivers/net/wireless/intel/iwlwifi/pcie/tx-gen2.c | 3 +
drivers/of/unittest.c | 4 +
drivers/pci/pcie/aspm.c | 18 +--
drivers/pwm/pwm-bcm2835.c | 1 +
drivers/pwm/pwm-rcar.c | 10 +-
drivers/pwm/pwm-renesas-tpu.c | 9 +-
drivers/remoteproc/remoteproc_core.c | 2 +-
drivers/s390/cio/device.c | 13 ++-
drivers/scsi/lpfc/lpfc_sli.c | 2 +
drivers/scsi/scsi_transport_iscsi.c | 4 +-
drivers/staging/comedi/comedi_fops.c | 4 +-
drivers/staging/comedi/drivers/dt2815.c | 3 +
drivers/staging/vt6656/int.c | 3 +-
drivers/staging/vt6656/key.c | 14 +--
drivers/staging/vt6656/main_usb.c | 31 ++---
drivers/target/target_core_fabric_lib.c | 2 +-
drivers/tty/hvc/hvc_console.c | 23 ++--
drivers/tty/rocket.c | 25 ++--
drivers/tty/serial/sh-sci.c | 13 ++-
drivers/tty/vt/vt.c | 2 +-
drivers/usb/class/cdc-acm.c | 36 +++++-
drivers/usb/class/cdc-acm.h | 5 +-
drivers/usb/core/hub.c | 14 +++
drivers/usb/core/message.c | 9 +-
drivers/usb/core/quirks.c | 4 +
drivers/usb/dwc3/gadget.c | 8 +-
drivers/usb/early/xhci-dbc.c | 8 +-
drivers/usb/early/xhci-dbc.h | 18 ++-
drivers/usb/gadget/function/f_fs.c | 4 +
drivers/usb/gadget/udc/bdc/bdc_ep.c | 2 +-
drivers/usb/misc/sisusbvga/sisusb.c | 20 ++--
drivers/usb/misc/sisusbvga/sisusb_init.h | 14 +--
drivers/usb/storage/uas.c | 46 +++++++-
drivers/usb/storage/unusual_devs.h | 7 ++
drivers/watchdog/watchdog_dev.c | 1 +
drivers/xen/xenbus/xenbus_client.c | 9 +-
fs/ceph/caps.c | 8 +-
fs/ceph/export.c | 5 +
fs/ext4/block_validity.c | 54 +++++++++
fs/ext4/ext4.h | 15 ++-
fs/ext4/extents.c | 59 ++++++----
fs/ext4/ialloc.c | 4 +-
fs/ext4/inode.c | 55 ++++++---
fs/ext4/ioctl.c | 2 +-
fs/ext4/mballoc.c | 6 +-
fs/ext4/namei.c | 4 +-
fs/ext4/resize.c | 5 +-
fs/ext4/super.c | 22 ++--
fs/ext4/xattr.c | 5 +-
fs/namespace.c | 2 +-
fs/nfsd/nfs4state.c | 2 +
fs/proc/vmcore.c | 2 +-
fs/xfs/xfs_inode.c | 85 +++++++-------
fs/xfs/xfs_log.c | 14 ++-
fs/xfs/xfs_reflink.c | 1 +
include/linux/kvm_host.h | 2 +-
include/linux/overflow.h | 31 +++++
include/linux/qed/qed_chain.h | 24 ++--
include/linux/vmalloc.h | 2 +-
include/net/tcp.h | 2 +-
include/uapi/linux/keyctl.h | 7 +-
include/uapi/linux/swab.h | 4 +-
ipc/util.c | 2 +-
kernel/audit.c | 3 +
kernel/events/core.c | 22 +++-
kernel/gcov/fs.c | 2 +-
mm/hugetlb.c | 14 ++-
mm/ksm.c | 12 +-
mm/shmem.c | 4 +-
mm/slub.c | 3 +-
mm/vmalloc.c | 16 ++-
net/ipv4/ip_vti.c | 4 +-
net/ipv4/raw.c | 4 +-
net/ipv4/route.c | 3 +-
net/ipv4/xfrm4_output.c | 2 -
net/ipv6/ipv6_sockglue.c | 13 +--
net/ipv6/xfrm6_output.c | 2 -
net/netrom/nr_route.c | 1 +
net/x25/x25_dev.c | 4 +-
security/keys/internal.h | 12 ++
security/keys/keyctl.c | 58 ++++++---
sound/pci/hda/hda_intel.c | 1 -
sound/pci/hda/patch_realtek.c | 3 +
sound/soc/intel/atom/sst-atom-controls.c | 2 +
sound/soc/soc-dapm.c | 20 +++-
sound/usb/format.c | 52 +++++++++
sound/usb/mixer_quirks.c | 12 +-
sound/usb/usx2y/usbusx2yaudio.c | 2 +
tools/objtool/check.c | 17 ++-
tools/objtool/orc_dump.c | 44 ++++---
tools/testing/selftests/kmod/kmod.sh | 13 ++-
tools/vm/Makefile | 2 +
121 files changed, 1047 insertions(+), 480 deletions(-)



2020-05-01 14:00:44

by Greg Kroah-Hartman

[permalink] [raw]
Subject: [PATCH 4.14 019/117] pwm: renesas-tpu: Fix late Runtime PM enablement

From: Geert Uytterhoeven <[email protected]>

[ Upstream commit d5a3c7a4536e1329a758e14340efd0e65252bd3d ]

Runtime PM should be enabled before calling pwmchip_add(), as PWM users
can appear immediately after the PWM chip has been added.
Likewise, Runtime PM should always be disabled after the removal of the
PWM chip, even if the latter failed.

Fixes: 99b82abb0a35b073 ("pwm: Add Renesas TPU PWM driver")
Signed-off-by: Geert Uytterhoeven <[email protected]>
Signed-off-by: Thierry Reding <[email protected]>
Signed-off-by: Sasha Levin <[email protected]>
---
drivers/pwm/pwm-renesas-tpu.c | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/drivers/pwm/pwm-renesas-tpu.c b/drivers/pwm/pwm-renesas-tpu.c
index 29267d12fb4c9..9c7962f2f0aa4 100644
--- a/drivers/pwm/pwm-renesas-tpu.c
+++ b/drivers/pwm/pwm-renesas-tpu.c
@@ -423,16 +423,17 @@ static int tpu_probe(struct platform_device *pdev)
tpu->chip.base = -1;
tpu->chip.npwm = TPU_CHANNEL_MAX;

+ pm_runtime_enable(&pdev->dev);
+
ret = pwmchip_add(&tpu->chip);
if (ret < 0) {
dev_err(&pdev->dev, "failed to register PWM chip\n");
+ pm_runtime_disable(&pdev->dev);
return ret;
}

dev_info(&pdev->dev, "TPU PWM %d registered\n", tpu->pdev->id);

- pm_runtime_enable(&pdev->dev);
-
return 0;
}

@@ -442,12 +443,10 @@ static int tpu_remove(struct platform_device *pdev)
int ret;

ret = pwmchip_remove(&tpu->chip);
- if (ret)
- return ret;

pm_runtime_disable(&pdev->dev);

- return 0;
+ return ret;
}

#ifdef CONFIG_OF
--
2.20.1



2020-05-01 14:00:44

by Greg Kroah-Hartman

[permalink] [raw]
Subject: [PATCH 4.14 031/117] tcp: cache line align MAX_TCP_HEADER

From: Eric Dumazet <[email protected]>

[ Upstream commit 9bacd256f1354883d3c1402655153367982bba49 ]

TCP stack is dumb in how it cooks its output packets.

Depending on MAX_HEADER value, we might chose a bad ending point
for the headers.

If we align the end of TCP headers to cache line boundary, we
make sure to always use the smallest number of cache lines,
which always help.

Signed-off-by: Eric Dumazet <[email protected]>
Cc: Soheil Hassas Yeganeh <[email protected]>
Acked-by: Soheil Hassas Yeganeh <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
include/net/tcp.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- a/include/net/tcp.h
+++ b/include/net/tcp.h
@@ -55,7 +55,7 @@ extern struct inet_hashinfo tcp_hashinfo
extern struct percpu_counter tcp_orphan_count;
void tcp_time_wait(struct sock *sk, int state, int timeo);

-#define MAX_TCP_HEADER (128 + MAX_HEADER)
+#define MAX_TCP_HEADER L1_CACHE_ALIGN(128 + MAX_HEADER)
#define MAX_TCP_OPTION_SPACE 40
#define TCP_MIN_SND_MSS 48
#define TCP_MIN_GSO_SIZE (TCP_MIN_SND_MSS - MAX_TCP_OPTION_SPACE)


2020-05-01 14:00:46

by Greg Kroah-Hartman

[permalink] [raw]
Subject: [PATCH 4.14 040/117] iio: xilinx-xadc: Fix clearing interrupt when enabling trigger

From: Lars-Peter Clausen <[email protected]>

commit f954b098fbac4d183219ce5b42d76d6df2aed50a upstream.

When enabling the trigger and unmasking the end-of-sequence (EOS) interrupt
the EOS interrupt should be cleared from the status register. Otherwise it
is possible that it was still set from a previous capture. If that is the
case the interrupt would fire immediately even though no conversion has
been done yet and stale data is being read from the device.

The old code only clears the interrupt if the interrupt was previously
unmasked. Which does not make much sense since the interrupt is always
masked at this point and in addition masking the interrupt does not clear
the interrupt from the status register. So the clearing needs to be done
unconditionally.

Signed-off-by: Lars-Peter Clausen <[email protected]>
Fixes: bdc8cda1d010 ("iio:adc: Add Xilinx XADC driver")
Cc: <[email protected]>
Signed-off-by: Jonathan Cameron <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>

---
drivers/iio/adc/xilinx-xadc-core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- a/drivers/iio/adc/xilinx-xadc-core.c
+++ b/drivers/iio/adc/xilinx-xadc-core.c
@@ -660,7 +660,7 @@ static int xadc_trigger_set_state(struct

spin_lock_irqsave(&xadc->lock, flags);
xadc_read_reg(xadc, XADC_AXI_REG_IPIER, &val);
- xadc_write_reg(xadc, XADC_AXI_REG_IPISR, val & XADC_AXI_INT_EOS);
+ xadc_write_reg(xadc, XADC_AXI_REG_IPISR, XADC_AXI_INT_EOS);
if (state)
val |= XADC_AXI_INT_EOS;
else


2020-05-01 14:01:29

by Greg Kroah-Hartman

[permalink] [raw]
Subject: [PATCH 4.14 025/117] ipv6: fix restrict IPV6_ADDRFORM operation

From: John Haxby <[email protected]>

[ Upstream commit 82c9ae440857840c56e05d4fb1427ee032531346 ]

Commit b6f6118901d1 ("ipv6: restrict IPV6_ADDRFORM operation") fixed a
problem found by syzbot an unfortunate logic error meant that it
also broke IPV6_ADDRFORM.

Rearrange the checks so that the earlier test is just one of the series
of checks made before moving the socket from IPv6 to IPv4.

Fixes: b6f6118901d1 ("ipv6: restrict IPV6_ADDRFORM operation")
Signed-off-by: John Haxby <[email protected]>
Cc: [email protected]
Signed-off-by: David S. Miller <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
net/ipv6/ipv6_sockglue.c | 13 ++++++-------
1 file changed, 6 insertions(+), 7 deletions(-)

--- a/net/ipv6/ipv6_sockglue.c
+++ b/net/ipv6/ipv6_sockglue.c
@@ -185,15 +185,14 @@ static int do_ipv6_setsockopt(struct soc
retv = -EBUSY;
break;
}
- } else if (sk->sk_protocol == IPPROTO_TCP) {
- if (sk->sk_prot != &tcpv6_prot) {
- retv = -EBUSY;
- break;
- }
- break;
- } else {
+ }
+ if (sk->sk_protocol == IPPROTO_TCP &&
+ sk->sk_prot != &tcpv6_prot) {
+ retv = -EBUSY;
break;
}
+ if (sk->sk_protocol != IPPROTO_TCP)
+ break;
if (sk->sk_state != TCP_ESTABLISHED) {
retv = -ENOTCONN;
break;


2020-05-01 14:01:33

by Greg Kroah-Hartman

[permalink] [raw]
Subject: [PATCH 4.14 024/117] cxgb4: fix large delays in PTP synchronization

From: Rahul Lakkireddy <[email protected]>

[ Upstream commit bd019427bf3623ee3c7d2845cf921bbf4c14846c ]

Fetching PTP sync information from mailbox is slow and can take
up to 10 milliseconds. Reduce this unnecessary delay by directly
reading the information from the corresponding registers.

Fixes: 9c33e4208bce ("cxgb4: Add PTP Hardware Clock (PHC) support")
Signed-off-by: Manoj Malviya <[email protected]>
Signed-off-by: Rahul Lakkireddy <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
drivers/net/ethernet/chelsio/cxgb4/cxgb4_ptp.c | 27 +++++--------------------
drivers/net/ethernet/chelsio/cxgb4/t4_regs.h | 3 ++
2 files changed, 9 insertions(+), 21 deletions(-)

--- a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_ptp.c
+++ b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_ptp.c
@@ -311,32 +311,17 @@ static int cxgb4_ptp_adjtime(struct ptp_
*/
static int cxgb4_ptp_gettime(struct ptp_clock_info *ptp, struct timespec64 *ts)
{
- struct adapter *adapter = (struct adapter *)container_of(ptp,
- struct adapter, ptp_clock_info);
- struct fw_ptp_cmd c;
+ struct adapter *adapter = container_of(ptp, struct adapter,
+ ptp_clock_info);
u64 ns;
- int err;

- memset(&c, 0, sizeof(c));
- c.op_to_portid = cpu_to_be32(FW_CMD_OP_V(FW_PTP_CMD) |
- FW_CMD_REQUEST_F |
- FW_CMD_READ_F |
- FW_PTP_CMD_PORTID_V(0));
- c.retval_len16 = cpu_to_be32(FW_CMD_LEN16_V(sizeof(c) / 16));
- c.u.ts.sc = FW_PTP_SC_GET_TIME;
-
- err = t4_wr_mbox(adapter, adapter->mbox, &c, sizeof(c), &c);
- if (err < 0) {
- dev_err(adapter->pdev_dev,
- "PTP: %s error %d\n", __func__, -err);
- return err;
- }
+ ns = t4_read_reg(adapter, T5_PORT_REG(0, MAC_PORT_PTP_SUM_LO_A));
+ ns |= (u64)t4_read_reg(adapter,
+ T5_PORT_REG(0, MAC_PORT_PTP_SUM_HI_A)) << 32;

/* convert to timespec*/
- ns = be64_to_cpu(c.u.ts.tm);
*ts = ns_to_timespec64(ns);
-
- return err;
+ return 0;
}

/**
--- a/drivers/net/ethernet/chelsio/cxgb4/t4_regs.h
+++ b/drivers/net/ethernet/chelsio/cxgb4/t4_regs.h
@@ -1810,6 +1810,9 @@

#define MAC_PORT_CFG2_A 0x818

+#define MAC_PORT_PTP_SUM_LO_A 0x990
+#define MAC_PORT_PTP_SUM_HI_A 0x994
+
#define MPS_CMN_CTL_A 0x9000

#define COUNTPAUSEMCRX_S 5


2020-05-01 14:01:57

by Greg Kroah-Hartman

[permalink] [raw]
Subject: [PATCH 4.14 028/117] net: bcmgenet: correct per TX/RX ring statistics

From: Doug Berger <[email protected]>

[ Upstream commit a6d0b83f25073bdf08b8547aeff961a62c6ab229 ]

The change to track net_device_stats per ring to better support SMP
missed updating the rx_dropped member.

The ndo_get_stats method is also needed to combine the results for
ethtool statistics (-S) before filling in the ethtool structure.

Fixes: 37a30b435b92 ("net: bcmgenet: Track per TX/RX rings statistics")
Signed-off-by: Doug Berger <[email protected]>
Acked-by: Florian Fainelli <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 3 +++
1 file changed, 3 insertions(+)

--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
@@ -973,6 +973,8 @@ static void bcmgenet_get_ethtool_stats(s
if (netif_running(dev))
bcmgenet_update_mib_counters(priv);

+ dev->netdev_ops->ndo_get_stats(dev);
+
for (i = 0; i < BCMGENET_STATS_LEN; i++) {
const struct bcmgenet_stats *s;
char *p;
@@ -3215,6 +3217,7 @@ static struct net_device_stats *bcmgenet
dev->stats.rx_packets = rx_packets;
dev->stats.rx_errors = rx_errors;
dev->stats.rx_missed_errors = rx_errors;
+ dev->stats.rx_dropped = rx_dropped;
return &dev->stats;
}



2020-05-01 14:02:02

by Greg Kroah-Hartman

[permalink] [raw]
Subject: [PATCH 4.14 009/117] scsi: lpfc: Fix kasan slab-out-of-bounds error in lpfc_unreg_login

From: James Smart <[email protected]>

[ Upstream commit 38503943c89f0bafd9e3742f63f872301d44cbea ]

The following kasan bug was called out:

BUG: KASAN: slab-out-of-bounds in lpfc_unreg_login+0x7c/0xc0 [lpfc]
Read of size 2 at addr ffff889fc7c50a22 by task lpfc_worker_3/6676
...
Call Trace:
dump_stack+0x96/0xe0
? lpfc_unreg_login+0x7c/0xc0 [lpfc]
print_address_description.constprop.6+0x1b/0x220
? lpfc_unreg_login+0x7c/0xc0 [lpfc]
? lpfc_unreg_login+0x7c/0xc0 [lpfc]
__kasan_report.cold.9+0x37/0x7c
? lpfc_unreg_login+0x7c/0xc0 [lpfc]
kasan_report+0xe/0x20
lpfc_unreg_login+0x7c/0xc0 [lpfc]
lpfc_sli_def_mbox_cmpl+0x334/0x430 [lpfc]
...

When processing the completion of a "Reg Rpi" login mailbox command in
lpfc_sli_def_mbox_cmpl, a call may be made to lpfc_unreg_login. The vpi is
extracted from the completing mailbox context and passed as an input for
the next. However, the vpi stored in the mailbox command context is an
absolute vpi, which for SLI4 represents both base + offset. When used with
a non-zero base component, (function id > 0) this results in an
out-of-range access beyond the allocated phba->vpi_ids array.

Fix by subtracting the function's base value to get an accurate vpi number.

Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: James Smart <[email protected]>
Signed-off-by: Dick Kennedy <[email protected]>
Signed-off-by: Martin K. Petersen <[email protected]>
Signed-off-by: Sasha Levin <[email protected]>
---
drivers/scsi/lpfc/lpfc_sli.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/drivers/scsi/lpfc/lpfc_sli.c b/drivers/scsi/lpfc/lpfc_sli.c
index d8e0ba68879c3..480d2d467f7a6 100644
--- a/drivers/scsi/lpfc/lpfc_sli.c
+++ b/drivers/scsi/lpfc/lpfc_sli.c
@@ -2271,6 +2271,8 @@ lpfc_sli_def_mbox_cmpl(struct lpfc_hba *phba, LPFC_MBOXQ_t *pmb)
!pmb->u.mb.mbxStatus) {
rpi = pmb->u.mb.un.varWords[0];
vpi = pmb->u.mb.un.varRegLogin.vpi;
+ if (phba->sli_rev == LPFC_SLI_REV4)
+ vpi -= phba->sli4_hba.max_cfg_param.vpi_base;
lpfc_unreg_login(phba, vpi, rpi, pmb);
pmb->vport = vport;
pmb->mbox_cmpl = lpfc_sli_def_mbox_cmpl;
--
2.20.1



2020-05-01 14:02:16

by Greg Kroah-Hartman

[permalink] [raw]
Subject: [PATCH 4.14 008/117] watchdog: reset last_hw_keepalive time at start

From: Tero Kristo <[email protected]>

[ Upstream commit 982bb70517aef2225bad1d802887b733db492cc0 ]

Currently the watchdog core does not initialize the last_hw_keepalive
time during watchdog startup. This will cause the watchdog to be pinged
immediately if enough time has passed from the system boot-up time, and
some types of watchdogs like K3 RTI does not like this.

To avoid the issue, setup the last_hw_keepalive time during watchdog
startup.

Signed-off-by: Tero Kristo <[email protected]>
Reviewed-by: Guenter Roeck <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Guenter Roeck <[email protected]>
Signed-off-by: Wim Van Sebroeck <[email protected]>
Signed-off-by: Sasha Levin <[email protected]>
---
drivers/watchdog/watchdog_dev.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/watchdog/watchdog_dev.c b/drivers/watchdog/watchdog_dev.c
index b30fb637ae947..52e03f1c76e38 100644
--- a/drivers/watchdog/watchdog_dev.c
+++ b/drivers/watchdog/watchdog_dev.c
@@ -245,6 +245,7 @@ static int watchdog_start(struct watchdog_device *wdd)
if (err == 0) {
set_bit(WDOG_ACTIVE, &wdd->status);
wd_data->last_keepalive = started_at;
+ wd_data->last_hw_keepalive = started_at;
watchdog_update_worker(wdd);
}

--
2.20.1



2020-05-01 14:02:21

by Greg Kroah-Hartman

[permalink] [raw]
Subject: [PATCH 4.14 005/117] drm/msm: Use the correct dma_sync calls harder

From: Rob Clark <[email protected]>

commit 9f614197c744002f9968e82c649fdf7fe778e1e7 upstream.

Looks like the dma_sync calls don't do what we want on armv7 either.
Fixes:

Unable to handle kernel paging request at virtual address 50001000
pgd = (ptrval)
[50001000] *pgd=00000000
Internal error: Oops: 805 [#1] SMP ARM
Modules linked in:
CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.3.0-rc6-00271-g9f159ae07f07 #4
Hardware name: Freescale i.MX53 (Device Tree Support)
PC is at v7_dma_clean_range+0x20/0x38
LR is at __dma_page_cpu_to_dev+0x28/0x90
pc : [<c011c76c>] lr : [<c01181c4>] psr: 20000013
sp : d80b5a88 ip : de96c000 fp : d840ce6c
r10: 00000000 r9 : 00000001 r8 : d843e010
r7 : 00000000 r6 : 00008000 r5 : ddb6c000 r4 : 00000000
r3 : 0000003f r2 : 00000040 r1 : 50008000 r0 : 50001000
Flags: nzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment none
Control: 10c5387d Table: 70004019 DAC: 00000051
Process swapper/0 (pid: 1, stack limit = 0x(ptrval))

Signed-off-by: Rob Clark <[email protected]>
Fixes: 3de433c5b38a ("drm/msm: Use the correct dma_sync calls in msm_gem")
Tested-by: Fabio Estevam <[email protected]>
Cc: Guenter Roeck <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>

---
drivers/gpu/drm/msm/msm_gem.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

--- a/drivers/gpu/drm/msm/msm_gem.c
+++ b/drivers/gpu/drm/msm/msm_gem.c
@@ -61,7 +61,7 @@ static void sync_for_device(struct msm_g
{
struct device *dev = msm_obj->base.dev->dev;

- if (get_dma_ops(dev)) {
+ if (get_dma_ops(dev) && IS_ENABLED(CONFIG_ARM64)) {
dma_sync_sg_for_device(dev, msm_obj->sgt->sgl,
msm_obj->sgt->nents, DMA_BIDIRECTIONAL);
} else {
@@ -74,7 +74,7 @@ static void sync_for_cpu(struct msm_gem_
{
struct device *dev = msm_obj->base.dev->dev;

- if (get_dma_ops(dev)) {
+ if (get_dma_ops(dev) && IS_ENABLED(CONFIG_ARM64)) {
dma_sync_sg_for_cpu(dev, msm_obj->sgt->sgl,
msm_obj->sgt->nents, DMA_BIDIRECTIONAL);
} else {


2020-05-01 15:18:15

by Jon Hunter

[permalink] [raw]
Subject: Re: [PATCH 4.14 000/117] 4.14.178-rc1 review


On 01/05/2020 14:20, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 4.14.178 release.
> There are 117 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 Sun, 03 May 2020 13:12:02 +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/v4.x/stable-review/patch-4.14.178-rc1.gz
> or in the git tree and branch at:
> git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.14.y
> and the diffstat can be found below.
>
> thanks,
>
> greg k-h

All tests are passing for Tegra ...

Test results for stable-v4.14:
8 builds: 8 pass, 0 fail
16 boots: 16 pass, 0 fail
24 tests: 24 pass, 0 fail

Linux version: 4.14.178-rc1-gb24d32661fe1
Boards tested: tegra124-jetson-tk1, tegra20-ventana,
tegra210-p2371-2180, tegra30-cardhu-a04

Cheers
Jon

--
nvpublic

2020-05-01 22:03:40

by Guenter Roeck

[permalink] [raw]
Subject: Re: [PATCH 4.14 000/117] 4.14.178-rc1 review

On Fri, May 01, 2020 at 03:20:36PM +0200, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 4.14.178 release.
> There are 117 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 Sun, 03 May 2020 13:12:02 +0000.
> Anything received after that time might be too late.
>
Build results:
total: 171 pass: 171 fail: 0
Qemu test results:
total: 405 pass: 394 fail: 11
Failed tests:
ppc64:mac99:ppc64_book3s_defconfig:smp:initrd
ppc64:mac99:ppc64_book3s_defconfig:smp:ide:rootfs
ppc64:mac99:ppc64_book3s_defconfig:smp:sdhci:mmc:rootfs
ppc64:mac99:ppc64_book3s_defconfig:smp:nvme:rootfs
ppc64:mac99:ppc64_book3s_defconfig:smp:scsi[DC395]:rootfs
ppc64:pseries:pseries_defconfig:initrd
ppc64:pseries:pseries_defconfig:scsi:rootfs
ppc64:pseries:pseries_defconfig:usb:rootfs
ppc64:pseries:pseries_defconfig:sdhci:mmc:rootfs
ppc64:pseries:pseries_defconfig:nvme:rootfs
ppc64:pseries:pseries_defconfig:sata-sii3112:rootfs

Again, please drop "of: unittest: kmemleak on changeset destroy".

Guenter

2020-05-01 22:30:04

by Naresh Kamboju

[permalink] [raw]
Subject: Re: [PATCH 4.14 000/117] 4.14.178-rc1 review

On Fri, 1 May 2020 at 19:01, Greg Kroah-Hartman
<[email protected]> wrote:
>
> This is the start of the stable review cycle for the 4.14.178 release.
> There are 117 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 Sun, 03 May 2020 13:12:02 +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/v4.x/stable-review/patch-4.14.178-rc1.gz
> or in the git tree and branch at:
> git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.14.y
> and the diffstat can be found below.
>
> thanks,
>
> greg k-h

Results from Linaro’s test farm.
No regressions on arm64, arm, x86_64, and i386.

Summary
------------------------------------------------------------------------

kernel: 4.14.178-rc1
git repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
git branch: linux-4.14.y
git commit: b24d32661fe15b71ca1f5f6913749d2c8be9e0ae
git describe: v4.14.177-118-gb24d32661fe1
Test details: https://qa-reports.linaro.org/lkft/linux-stable-rc-4.14-oe/build/v4.14.177-118-gb24d32661fe1

No regressions (compared to build v4.14.177)

No fixes (compared to build v4.14.177)


Ran 26220 total tests in the following environments and test suites.

Environments
--------------
- dragonboard-410c - arm64
- hi6220-hikey - arm64
- i386
- juno-r2 - arm64
- juno-r2-compat
- juno-r2-kasan
- qemu_arm
- qemu_arm64
- qemu_i386
- qemu_x86_64
- x15 - arm
- x86_64
- x86-kasan

Test Suites
-----------
* build
* install-android-platform-tools-r2600
* install-android-platform-tools-r2800
* kselftest
* kselftest/drivers
* kselftest/filesystems
* kselftest/net
* kselftest/networking
* linux-log-parser
* ltp-cap_bounds-tests
* ltp-commands-tests
* ltp-containers-tests
* ltp-cpuhotplug-tests
* ltp-crypto-tests
* ltp-dio-tests
* ltp-fcntl-locktests-tests
* ltp-filecaps-tests
* ltp-fs-tests
* ltp-fs_bind-tests
* ltp-fs_perms_simple-tests
* ltp-fsx-tests
* ltp-hugetlb-tests
* ltp-io-tests
* ltp-ipc-tests
* ltp-math-tests
* ltp-mm-tests
* ltp-sched-tests
* perf
* v4l2-compliance
* libhugetlbfs
* ltp-nptl-tests
* ltp-pty-tests
* ltp-securebits-tests
* ltp-syscalls-tests
* network-basic-tests
* ltp-cve-tests
* ltp-open-posix-tests
* kvm-unit-tests
* kselftest-vsyscall-mode-native
* kselftest-vsyscall-mode-native/drivers
* kselftest-vsyscall-mode-native/filesystems
* kselftest-vsyscall-mode-native/net
* kselftest-vsyscall-mode-native/networking
* kselftest-vsyscall-mode-none
* kselftest-vsyscall-mode-none/drivers
* kselftest-vsyscall-mode-none/filesystems
* kselftest-vsyscall-mode-none/net
* kselftest-vsyscall-mode-none/networking

--
Linaro LKFT
https://lkft.linaro.org

2020-05-02 05:57:38

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH 4.14 000/117] 4.14.178-rc1 review

On Fri, May 01, 2020 at 02:59:36PM -0700, Guenter Roeck wrote:
> On Fri, May 01, 2020 at 03:20:36PM +0200, Greg Kroah-Hartman wrote:
> > This is the start of the stable review cycle for the 4.14.178 release.
> > There are 117 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 Sun, 03 May 2020 13:12:02 +0000.
> > Anything received after that time might be too late.
> >
> Build results:
> total: 171 pass: 171 fail: 0
> Qemu test results:
> total: 405 pass: 394 fail: 11
> Failed tests:
> ppc64:mac99:ppc64_book3s_defconfig:smp:initrd
> ppc64:mac99:ppc64_book3s_defconfig:smp:ide:rootfs
> ppc64:mac99:ppc64_book3s_defconfig:smp:sdhci:mmc:rootfs
> ppc64:mac99:ppc64_book3s_defconfig:smp:nvme:rootfs
> ppc64:mac99:ppc64_book3s_defconfig:smp:scsi[DC395]:rootfs
> ppc64:pseries:pseries_defconfig:initrd
> ppc64:pseries:pseries_defconfig:scsi:rootfs
> ppc64:pseries:pseries_defconfig:usb:rootfs
> ppc64:pseries:pseries_defconfig:sdhci:mmc:rootfs
> ppc64:pseries:pseries_defconfig:nvme:rootfs
> ppc64:pseries:pseries_defconfig:sata-sii3112:rootfs
>
> Again, please drop "of: unittest: kmemleak on changeset destroy".

Now dropped from all trees, thanks.

greg k-h

2020-05-02 23:19:47

by Shuah Khan

[permalink] [raw]
Subject: Re: [PATCH 4.14 000/117] 4.14.178-rc1 review

On 5/1/20 7:20 AM, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 4.14.178 release.
> There are 117 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 Sun, 03 May 2020 13:12:02 +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/v4.x/stable-review/patch-4.14.178-rc1.gz
> or in the git tree and branch at:
> git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.14.y
> and the diffstat can be found below.
>
> thanks,
>
> greg k-h
>

Compiled and booted on my test system. No dmesg regressions.

thanks,
-- Shuah