Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1721352 > unrolled thread

[PATCH 4.9 00/84] 4.9.46-stable review

Started byGreg Kroah-Hartman <gregkh@linuxfoundation.org>
First post2017-08-28 11:00 +0200
Last post2017-08-29 17:20 +0200
Articles 10 — 4 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH 4.9 00/84] 4.9.46-stable review Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-28 11:00 +0200
    [PATCH 4.9 34/84] ALSA: core: Fix unexpected error at replacing user TLV Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-28 11:00 +0200
    [PATCH 4.9 35/84] ALSA: hda - Add stereo mic quirk for Lenovo G50-70 (17aa:3978) Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-28 11:00 +0200
    [PATCH 4.9 30/84] KVM: s390: sthyi: fix sthyi inline assembly Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-28 11:00 +0200
    [PATCH 4.9 01/84] sparc64: remove unnecessary log message Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-28 11:10 +0200
    [PATCH 4.9 02/84] af_key: do not use GFP_KERNEL in atomic contexts Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-28 11:10 +0200
    Re: [PATCH 4.9 00/84] 4.9.46-stable review Shuah Khan <shuahkh@osg.samsung.com> - 2017-08-28 21:40 +0200
    Re: [PATCH 4.9 00/84] 4.9.46-stable review Guenter Roeck <linux@roeck-us.net> - 2017-08-29 02:20 +0200
    Re: [PATCH 4.9 00/84] 4.9.46-stable review Sumit Semwal <sumit.semwal@linaro.org> - 2017-08-29 14:10 +0200
      Re: [PATCH 4.9 00/84] 4.9.46-stable review Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-08-29 17:20 +0200

#1721352 — [PATCH 4.9 00/84] 4.9.46-stable review

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2017-08-28 11:00 +0200
Subject[PATCH 4.9 00/84] 4.9.46-stable review
Message-ID<ujnr3-3du-3@gated-at.bofh.it>
This is the start of the stable review cycle for the 4.9.46 release.
There are 84 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 Aug 30 08:05:10 UTC 2017.
Anything received after that time might be too late.

The whole patch series can be found in one patch at:
	kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.9.46-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.9.y
and the diffstat can be found below.

thanks,

greg k-h

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

Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Linux 4.9.46-rc1

Benjamin Herrenschmidt <benh@kernel.crashing.org>
    powerpc/mm: Ensure cpumask update is ordered

Lv Zheng <lv.zheng@intel.com>
    ACPI: EC: Fix regression related to wrong ECDT initialization order

James Morse <james.morse@arm.com>
    ACPI / APEI: Add missing synchronize_rcu() on NOTIFY_SCI removal

Joerg Roedel <jroedel@suse.de>
    ACPI: ioapic: Clear on-stack resource before using it

Dave Jiang <dave.jiang@intel.com>
    ntb: transport shouldn't disable link due to bogus values in SPADs

Logan Gunthorpe <logang@deltatee.com>
    ntb: ntb_test: ensure the link is up before trying to configure the mws

Allen Hubbe <Allen.Hubbe@dell.com>
    ntb: no sleep in ntb_async_tx_submit

Logan Gunthorpe <logang@deltatee.com>
    NTB: ntb_test: fix bug printing ntb_perf results

Logan Gunthorpe <logang@deltatee.com>
    ntb_transport: fix bug calculating num_qps_mw

Logan Gunthorpe <logang@deltatee.com>
    ntb_transport: fix qp count bug

Linus Torvalds <torvalds@linux-foundation.org>
    Clarify (and fix) MAX_LFS_FILESIZE macros

Charles Milette <charlesmilette@gmail.com>
    staging: rtl8188eu: add RNX-N150NUB support

Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
    iio: hid-sensor-trigger: Fix the race with user space powering up sensors

Dragos Bogdan <dragos.bogdan@analog.com>
    iio: imu: adis16480: Fix acceleration scale factor for adis16480

Martijn Coenen <maco@android.com>
    ANDROID: binder: fix proc->tsk check.

Riley Andrews <riandrews@google.com>
    binder: Use wake up hint for synchronous transactions.

Todd Kjos <tkjos@android.com>
    binder: use group leader instead of open thread

Todd Kjos <tkjos@android.com>
    Revert "android: binder: Sanity check at binder ioctl"

Jeffy Chen <jeffy.chen@rock-chips.com>
    Bluetooth: bnep: fix possible might sleep error in bnep_session

Jeffy Chen <jeffy.chen@rock-chips.com>
    Bluetooth: cmtp: fix possible might sleep error in cmtp_session

Jeffy Chen <jeffy.chen@rock-chips.com>
    Bluetooth: hidp: fix possible might sleep error in hidp_session_thread

Florian Westphal <fw@strlen.de>
    netfilter: nat: fix src map lookup

Zhang Bo <bo.zhang@nxp.com>
    Revert "leds: handle suspend/resume in heartbeat trigger"

Vadim Lomovtsev <vlomovts@redhat.com>
    net: sunrpc: svcsock: fix NULL-pointer exception

Eric Biggers <ebiggers@google.com>
    x86/mm: Fix use-after-free of ldt_struct

Nicholas Piggin <npiggin@gmail.com>
    timers: Fix excessive granularity of new timers after a nohz idle

Thomas Gleixner <tglx@linutronix.de>
    perf/x86/intel/rapl: Make package handling more robust

Masami Hiramatsu <mhiramat@kernel.org>
    perf probe: Fix --funcs to show correct symbols for offline module

Mark Rutland <mark.rutland@arm.com>
    perf/core: Fix group {cpu,task} validation

Steven Rostedt (VMware) <rostedt@goodmis.org>
    ftrace: Check for null ret_stack on profile function graph entry function

Chuck Lever <chuck.lever@oracle.com>
    nfsd: Limit end of page list when decoding NFSv4 WRITE

Ronnie Sahlberg <lsahlber@redhat.com>
    cifs: return ENAMETOOLONG for overlong names in cifs_open()/cifs_lookup()

Sachin Prabhu <sprabhu@redhat.com>
    cifs: Fix df output for users with quota limits

Nicholas Piggin <npiggin@gmail.com>
    kbuild: linker script do not match C names unless LD_DEAD_CODE_DATA_ELIMINATION is configured

Steven Rostedt (VMware) <rostedt@goodmis.org>
    tracing: Fix freeing of filter in create_filter() when set_str is false

Chunyu Hu <chuhu@redhat.com>
    tracing: Fix kmemleak in tracing_map_array_free()

Steven Rostedt (VMware) <rostedt@goodmis.org>
    tracing: Call clear_boot_tracer() at lateinit_sync

Koji Matsuoka <koji.matsuoka.xm@renesas.com>
    drm: rcar-du: Fix H/V sync signal polarity configuration

Koji Matsuoka <koji.matsuoka.xm@renesas.com>
    drm: rcar-du: Fix display timing controller parameter

Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
    drm: rcar-du: Fix crash in encoder failure error path

Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
    drm/atomic: If the atomic check fails, return its value first

Chris Wilson <chris@chris-wilson.co.uk>
    drm: Release driver tracking before making the object available again

Pavel Tatashin <pasha.tatashin@oracle.com>
    mm/memblock.c: reversed logic in memblock_discard()

Eric Biggers <ebiggers@google.com>
    fork: fix incorrect fput of ->exe_file causing use-after-free

Eric Biggers <ebiggers@google.com>
    mm/madvise.c: fix freeing of locked page with MADV_FREE

Ulf Hansson <ulf.hansson@linaro.org>
    i2c: designware: Fix system suspend

Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
    mm, shmem: fix handling /sys/kernel/mm/transparent_hugepage/shmem_enabled

Alexey Brodkin <Alexey.Brodkin@synopsys.com>
    ARCv2: PAE40: Explicitly set MSB counterpart of SLC region ops addresses

Takashi Sakamoto <o-takashi@sakamocchi.jp>
    ALSA: firewire: fix NULL pointer dereference when releasing uninitialized data of iso-resource

Takashi Iwai <tiwai@suse.de>
    ALSA: hda - Add stereo mic quirk for Lenovo G50-70 (17aa:3978)

Takashi Iwai <tiwai@suse.de>
    ALSA: core: Fix unexpected error at replacing user TLV

Joakim Tjernlund <joakim.tjernlund@infinera.com>
    ALSA: usb-audio: Add delay quirk for H650e/Jabra 550a USB headsets

Paolo Bonzini <pbonzini@redhat.com>
    KVM: x86: block guest protection keys unless the host has them enabled

Heiko Carstens <heiko.carstens@de.ibm.com>
    KVM: s390: sthyi: fix specification exception detection

Heiko Carstens <heiko.carstens@de.ibm.com>
    KVM: s390: sthyi: fix sthyi inline assembly

Masaki Ota <masaki.ota@jp.alps.com>
    Input: ALPS - fix two-finger scroll breakage in right side on ALPS touchpad

KT Liao <kt.liao@emc.com.tw>
    Input: elan_i2c - add ELAN0602 ACPI ID to support Lenovo Yoga310

Aaron Ma <aaron.ma@canonical.com>
    Input: trackpoint - add new trackpoint firmware ID

Edward Cree <ecree@solarflare.com>
    bpf/verifier: fix min/max handling in BPF_SUB

Daniel Borkmann <daniel@iogearbox.net>
    bpf: fix mixed signed/unsigned derived min/max value bounds

Daniel Borkmann <daniel@iogearbox.net>
    bpf, verifier: fix alu ops against map_value{, _adj} register types

Daniel Borkmann <daniel@iogearbox.net>
    bpf: adjust verifier heuristics

John Fastabend <john.fastabend@gmail.com>
    bpf, verifier: add additional patterns to evaluate_reg_imm_alu

Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
    net_sched: fix order of queue length updates in qdisc_replace()

Xin Long <lucien.xin@gmail.com>
    net: sched: fix NULL pointer dereference when action calls some targets

Colin Ian King <colin.king@canonical.com>
    irda: do not leak initialized list.dev to userspace

Huy Nguyen <huyn@mellanox.com>
    net/mlx4_core: Enable 4K UAR if SRIOV module parameter is not enabled

Neal Cardwell <ncardwell@google.com>
    tcp: when rearming RTO, if RTO time is in past then fire RTO ASAP

Wei Wang <weiwan@google.com>
    ipv6: repair fib6 tree in failure case

Wei Wang <weiwan@google.com>
    ipv6: reset fn->rr_ptr when replacing route

Eric Dumazet <edumazet@google.com>
    tipc: fix use-after-free

Alexander Potapenko <glider@google.com>
    sctp: fully initialize the IPv6 address in sctp_v6_to_addr()

Colin Ian King <colin.king@canonical.com>
    nfp: fix infinite loop on umapping cleanup

Eric Dumazet <edumazet@google.com>
    ipv4: better IP_MAX_MTU enforcement

Eric Dumazet <edumazet@google.com>
    ptr_ring: use kmalloc_array()

Liping Zhang <zlpnobody@gmail.com>
    openvswitch: fix skb_panic due to the incorrect actions attrlen

Daniel Borkmann <daniel@iogearbox.net>
    bpf: fix bpf_trace_printk on 32 bit archs

Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
    net_sched: remove warning from qdisc_hash_add

Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
    net_sched/sfq: update hierarchical backlog when drop packet

Eric Dumazet <edumazet@google.com>
    ipv4: fix NULL dereference in free_fib_info_rcu()

Eric Dumazet <edumazet@google.com>
    dccp: defer ccid_hc_tx_delete() at dismantle time

Eric Dumazet <edumazet@google.com>
    dccp: purge write queue in dccp_destroy_sock()

Eric Dumazet <edumazet@google.com>
    af_key: do not use GFP_KERNEL in atomic contexts

Tushar Dave <tushar.n.dave@oracle.com>
    sparc64: remove unnecessary log message


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

Diffstat:

 Makefile                                           |   4 +-
 arch/arc/include/asm/cache.h                       |   2 +
 arch/arc/mm/cache.c                                |  13 +-
 arch/powerpc/include/asm/mmu_context.h             |  20 +-
 arch/powerpc/include/asm/pgtable-be-types.h        |   1 +
 arch/powerpc/include/asm/pgtable-types.h           |   1 +
 arch/s390/kvm/sthyi.c                              |   7 +-
 arch/sparc/kernel/pci_sun4v.c                      |   2 -
 arch/x86/events/intel/rapl.c                       |  58 +++---
 arch/x86/include/asm/mmu_context.h                 |   4 +-
 arch/x86/kvm/cpuid.c                               |   2 +-
 drivers/acpi/apei/ghes.c                           |   1 +
 drivers/acpi/ec.c                                  |  17 +-
 drivers/acpi/internal.h                            |   1 -
 drivers/acpi/ioapic.c                              |   6 +
 drivers/acpi/scan.c                                |   1 -
 drivers/android/binder.c                           |  19 +-
 drivers/gpu/drm/drm_atomic.c                       |   5 +-
 drivers/gpu/drm/drm_gem.c                          |   6 +-
 drivers/gpu/drm/rcar-du/rcar_du_crtc.c             |   6 +-
 drivers/gpu/drm/rcar-du/rcar_du_kms.c              |  10 +-
 drivers/i2c/busses/i2c-designware-platdrv.c        |  14 +-
 .../iio/common/hid-sensors/hid-sensor-trigger.c    |   8 +-
 drivers/iio/imu/adis16480.c                        |   2 +-
 drivers/input/mouse/alps.c                         |  41 +++-
 drivers/input/mouse/alps.h                         |   8 +
 drivers/input/mouse/elan_i2c_core.c                |   1 +
 drivers/input/mouse/trackpoint.c                   |   3 +-
 drivers/input/mouse/trackpoint.h                   |   3 +-
 drivers/leds/trigger/ledtrig-heartbeat.c           |  31 ----
 drivers/net/ethernet/mellanox/mlx4/main.c          |   4 +-
 .../net/ethernet/netronome/nfp/nfp_net_common.c    |   3 +-
 drivers/ntb/ntb_transport.c                        |  62 ++-----
 drivers/staging/rtl8188eu/os_dep/usb_intf.c        |   1 +
 fs/cifs/dir.c                                      |  18 +-
 fs/cifs/smb2pdu.c                                  |   4 +-
 fs/nfsd/nfs4xdr.c                                  |   6 +-
 include/asm-generic/vmlinux.lds.h                  |  38 ++--
 include/linux/bpf_verifier.h                       |   1 +
 include/linux/cpuhotplug.h                         |   1 -
 include/linux/fs.h                                 |   4 +-
 include/linux/ptr_ring.h                           |   9 +-
 include/linux/skb_array.h                          |   3 +-
 include/net/ip.h                                   |   4 +-
 include/net/sch_generic.h                          |   5 +-
 kernel/bpf/verifier.c                              | 206 ++++++++++++++++++---
 kernel/events/core.c                               |  39 ++--
 kernel/fork.c                                      |   1 +
 kernel/time/timer.c                                |  50 ++++-
 kernel/trace/bpf_trace.c                           |  34 +++-
 kernel/trace/ftrace.c                              |   4 +
 kernel/trace/trace.c                               |   2 +-
 kernel/trace/trace_events_filter.c                 |   4 +
 kernel/trace/tracing_map.c                         |  11 +-
 mm/madvise.c                                       |   2 +-
 mm/memblock.c                                      |   2 +-
 mm/shmem.c                                         |   4 +-
 net/bluetooth/bnep/core.c                          |  11 +-
 net/bluetooth/cmtp/core.c                          |  17 +-
 net/bluetooth/hidp/core.c                          |  33 ++--
 net/dccp/proto.c                                   |  19 +-
 net/ipv4/fib_semantics.c                           |  12 +-
 net/ipv4/route.c                                   |   2 +-
 net/ipv4/tcp_input.c                               |   3 +-
 net/ipv6/ip6_fib.c                                 |  26 +--
 net/irda/af_irda.c                                 |   2 +-
 net/key/af_key.c                                   |  48 ++---
 net/netfilter/nf_nat_core.c                        |  17 +-
 net/openvswitch/actions.c                          |   1 +
 net/openvswitch/datapath.c                         |   7 +-
 net/openvswitch/datapath.h                         |   2 +
 net/sched/act_ipt.c                                |   2 +
 net/sched/sch_api.c                                |   3 -
 net/sched/sch_sfq.c                                |   5 +-
 net/sctp/ipv6.c                                    |   2 +
 net/sunrpc/svcsock.c                               |  22 ++-
 net/tipc/netlink_compat.c                          |   6 +-
 sound/core/control.c                               |   2 +-
 sound/firewire/iso-resources.c                     |   7 +-
 sound/pci/hda/patch_conexant.c                     |   1 +
 sound/usb/quirks.c                                 |   9 +-
 tools/perf/util/probe-event.c                      |  25 +--
 tools/testing/selftests/ntb/ntb_test.sh            |   6 +-
 83 files changed, 711 insertions(+), 398 deletions(-)

[toc] | [next] | [standalone]


#1721353 — [PATCH 4.9 34/84] ALSA: core: Fix unexpected error at replacing user TLV

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2017-08-28 11:00 +0200
Subject[PATCH 4.9 34/84] ALSA: core: Fix unexpected error at replacing user TLV
Message-ID<ujo3N-3qW-65@gated-at.bofh.it>
In reply to#1721352
4.9-stable review patch.  If anyone has any objections, please let me know.

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

From: Takashi Iwai <tiwai@suse.de>

commit 88c54cdf61f508ebcf8da2d819f5dfc03e954d1d upstream.

When user tries to replace the user-defined control TLV, the kernel
checks the change of its content via memcmp().  The problem is that
the kernel passes the return value from memcmp() as is.  memcmp()
gives a non-zero negative value depending on the comparison result,
and this shall be recognized as an error code.

The patch covers that corner-case, return 1 properly for the changed
TLV.

Fixes: 8aa9b586e420 ("[ALSA] Control API - more robust TLV implementation")
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 sound/core/control.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/sound/core/control.c
+++ b/sound/core/control.c
@@ -1156,7 +1156,7 @@ static int snd_ctl_elem_user_tlv(struct
 		mutex_lock(&ue->card->user_ctl_lock);
 		change = ue->tlv_data_size != size;
 		if (!change)
-			change = memcmp(ue->tlv_data, new_data, size);
+			change = memcmp(ue->tlv_data, new_data, size) != 0;
 		kfree(ue->tlv_data);
 		ue->tlv_data = new_data;
 		ue->tlv_data_size = size;

[toc] | [prev] | [next] | [standalone]


#1721355 — [PATCH 4.9 35/84] ALSA: hda - Add stereo mic quirk for Lenovo G50-70 (17aa:3978)

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2017-08-28 11:00 +0200
Subject[PATCH 4.9 35/84] ALSA: hda - Add stereo mic quirk for Lenovo G50-70 (17aa:3978)
Message-ID<ujo3O-3qW-67@gated-at.bofh.it>
In reply to#1721352
4.9-stable review patch.  If anyone has any objections, please let me know.

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

From: Takashi Iwai <tiwai@suse.de>

commit bbba6f9d3da357bbabc6fda81e99ff5584500e76 upstream.

Lenovo G50-70 (17aa:3978) with Conexant codec chip requires the
similar workaround for the inverted stereo dmic like other Lenovo
models.

Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=1020657
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 sound/pci/hda/patch_conexant.c |    1 +
 1 file changed, 1 insertion(+)

--- a/sound/pci/hda/patch_conexant.c
+++ b/sound/pci/hda/patch_conexant.c
@@ -854,6 +854,7 @@ static const struct snd_pci_quirk cxt506
 	SND_PCI_QUIRK(0x17aa, 0x390b, "Lenovo G50-80", CXT_FIXUP_STEREO_DMIC),
 	SND_PCI_QUIRK(0x17aa, 0x3975, "Lenovo U300s", CXT_FIXUP_STEREO_DMIC),
 	SND_PCI_QUIRK(0x17aa, 0x3977, "Lenovo IdeaPad U310", CXT_FIXUP_STEREO_DMIC),
+	SND_PCI_QUIRK(0x17aa, 0x3978, "Lenovo G50-70", CXT_FIXUP_STEREO_DMIC),
 	SND_PCI_QUIRK(0x17aa, 0x397b, "Lenovo S205", CXT_FIXUP_STEREO_DMIC),
 	SND_PCI_QUIRK_VENDOR(0x17aa, "Thinkpad", CXT_FIXUP_THINKPAD_ACPI),
 	SND_PCI_QUIRK(0x1c06, 0x2011, "Lemote A1004", CXT_PINCFG_LEMOTE_A1004),

[toc] | [prev] | [next] | [standalone]


#1721356 — [PATCH 4.9 30/84] KVM: s390: sthyi: fix sthyi inline assembly

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2017-08-28 11:00 +0200
Subject[PATCH 4.9 30/84] KVM: s390: sthyi: fix sthyi inline assembly
Message-ID<ujo3O-3qW-73@gated-at.bofh.it>
In reply to#1721352
4.9-stable review patch.  If anyone has any objections, please let me know.

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

From: Heiko Carstens <heiko.carstens@de.ibm.com>

commit 4a4eefcd0e49f9f339933324c1bde431186a0a7d upstream.

The sthyi inline assembly misses register r3 within the clobber
list. The sthyi instruction will always write a return code to
register "R2+1", which in this case would be r3. Due to that we may
have register corruption and see host crashes or data corruption
depending on how gcc decided to allocate and use registers during
compile time.

Fixes: 95ca2cb57985 ("KVM: s390: Add sthyi emulation")
Reviewed-by: Janosch Frank <frankja@linux.vnet.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 arch/s390/kvm/sthyi.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/arch/s390/kvm/sthyi.c
+++ b/arch/s390/kvm/sthyi.c
@@ -394,7 +394,7 @@ static int sthyi(u64 vaddr)
 		"srl     %[cc],28\n"
 		: [cc] "=d" (cc)
 		: [code] "d" (code), [addr] "a" (addr)
-		: "memory", "cc");
+		: "3", "memory", "cc");
 	return cc;
 }
 

[toc] | [prev] | [next] | [standalone]


#1721371 — [PATCH 4.9 01/84] sparc64: remove unnecessary log message

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2017-08-28 11:10 +0200
Subject[PATCH 4.9 01/84] sparc64: remove unnecessary log message
Message-ID<ujodu-3Ju-37@gated-at.bofh.it>
In reply to#1721352
4.9-stable review patch.  If anyone has any objections, please let me know.

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

[ Upstream commit 6170a506899aee3dd4934c928426505e47b1b466 ]

There is no need to log message if ATU hvapi couldn't get register.
Unlike PCI hvapi, ATU hvapi registration failure is not hard error.
Even if ATU hvapi registration fails (on system with ATU or without
ATU) system continues with legacy IOMMU. So only log message when
ATU hvapi successfully get registered.

Signed-off-by: Tushar Dave <tushar.n.dave@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 arch/sparc/kernel/pci_sun4v.c |    2 --
 1 file changed, 2 deletions(-)

--- a/arch/sparc/kernel/pci_sun4v.c
+++ b/arch/sparc/kernel/pci_sun4v.c
@@ -1240,8 +1240,6 @@ static int pci_sun4v_probe(struct platfo
 			 * ATU group, but ATU hcalls won't be available.
 			 */
 			hv_atu = false;
-			pr_err(PFX "Could not register hvapi ATU err=%d\n",
-			       err);
 		} else {
 			pr_info(PFX "Registered hvapi ATU major[%lu] minor[%lu]\n",
 				vatu_major, vatu_minor);

[toc] | [prev] | [next] | [standalone]


#1721375 — [PATCH 4.9 02/84] af_key: do not use GFP_KERNEL in atomic contexts

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2017-08-28 11:10 +0200
Subject[PATCH 4.9 02/84] af_key: do not use GFP_KERNEL in atomic contexts
Message-ID<ujodu-3Ju-43@gated-at.bofh.it>
In reply to#1721352
4.9-stable review patch.  If anyone has any objections, please let me know.

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

From: Eric Dumazet <edumazet@google.com>


[ Upstream commit 36f41f8fc6d8aa9f8c9072d66ff7cf9055f5e69b ]

pfkey_broadcast() might be called from non process contexts,
we can not use GFP_KERNEL in these cases [1].

This patch partially reverts commit ba51b6be38c1 ("net: Fix RCU splat in
af_key"), only keeping the GFP_ATOMIC forcing under rcu_read_lock()
section.

[1] : syzkaller reported :

in_atomic(): 1, irqs_disabled(): 0, pid: 2932, name: syzkaller183439
3 locks held by syzkaller183439/2932:
 #0:  (&net->xfrm.xfrm_cfg_mutex){+.+.+.}, at: [<ffffffff83b43888>] pfkey_sendmsg+0x4c8/0x9f0 net/key/af_key.c:3649
 #1:  (&pfk->dump_lock){+.+.+.}, at: [<ffffffff83b467f6>] pfkey_do_dump+0x76/0x3f0 net/key/af_key.c:293
 #2:  (&(&net->xfrm.xfrm_policy_lock)->rlock){+...+.}, at: [<ffffffff83957632>] spin_lock_bh include/linux/spinlock.h:304 [inline]
 #2:  (&(&net->xfrm.xfrm_policy_lock)->rlock){+...+.}, at: [<ffffffff83957632>] xfrm_policy_walk+0x192/0xa30 net/xfrm/xfrm_policy.c:1028
CPU: 0 PID: 2932 Comm: syzkaller183439 Not tainted 4.13.0-rc4+ #24
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
 __dump_stack lib/dump_stack.c:16 [inline]
 dump_stack+0x194/0x257 lib/dump_stack.c:52
 ___might_sleep+0x2b2/0x470 kernel/sched/core.c:5994
 __might_sleep+0x95/0x190 kernel/sched/core.c:5947
 slab_pre_alloc_hook mm/slab.h:416 [inline]
 slab_alloc mm/slab.c:3383 [inline]
 kmem_cache_alloc+0x24b/0x6e0 mm/slab.c:3559
 skb_clone+0x1a0/0x400 net/core/skbuff.c:1037
 pfkey_broadcast_one+0x4b2/0x6f0 net/key/af_key.c:207
 pfkey_broadcast+0x4ba/0x770 net/key/af_key.c:281
 dump_sp+0x3d6/0x500 net/key/af_key.c:2685
 xfrm_policy_walk+0x2f1/0xa30 net/xfrm/xfrm_policy.c:1042
 pfkey_dump_sp+0x42/0x50 net/key/af_key.c:2695
 pfkey_do_dump+0xaa/0x3f0 net/key/af_key.c:299
 pfkey_spddump+0x1a0/0x210 net/key/af_key.c:2722
 pfkey_process+0x606/0x710 net/key/af_key.c:2814
 pfkey_sendmsg+0x4d6/0x9f0 net/key/af_key.c:3650
sock_sendmsg_nosec net/socket.c:633 [inline]
 sock_sendmsg+0xca/0x110 net/socket.c:643
 ___sys_sendmsg+0x755/0x890 net/socket.c:2035
 __sys_sendmsg+0xe5/0x210 net/socket.c:2069
 SYSC_sendmsg net/socket.c:2080 [inline]
 SyS_sendmsg+0x2d/0x50 net/socket.c:2076
 entry_SYSCALL_64_fastpath+0x1f/0xbe
RIP: 0033:0x445d79
RSP: 002b:00007f32447c1dc8 EFLAGS: 00000202 ORIG_RAX: 000000000000002e
RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 0000000000445d79
RDX: 0000000000000000 RSI: 000000002023dfc8 RDI: 0000000000000008
RBP: 0000000000000086 R08: 00007f32447c2700 R09: 00007f32447c2700
R10: 00007f32447c2700 R11: 0000000000000202 R12: 0000000000000000
R13: 00007ffe33edec4f R14: 00007f32447c29c0 R15: 0000000000000000

Fixes: ba51b6be38c1 ("net: Fix RCU splat in af_key")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Reported-by: Dmitry Vyukov <dvyukov@google.com>
Cc: David Ahern <dsa@cumulusnetworks.com>
Acked-by: David Ahern <dsahern@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 net/key/af_key.c |   48 ++++++++++++++++++++++++++----------------------
 1 file changed, 26 insertions(+), 22 deletions(-)

--- a/net/key/af_key.c
+++ b/net/key/af_key.c
@@ -228,7 +228,7 @@ static int pfkey_broadcast_one(struct sk
 #define BROADCAST_ONE		1
 #define BROADCAST_REGISTERED	2
 #define BROADCAST_PROMISC_ONLY	4
-static int pfkey_broadcast(struct sk_buff *skb,
+static int pfkey_broadcast(struct sk_buff *skb, gfp_t allocation,
 			   int broadcast_flags, struct sock *one_sk,
 			   struct net *net)
 {
@@ -278,7 +278,7 @@ static int pfkey_broadcast(struct sk_buf
 	rcu_read_unlock();
 
 	if (one_sk != NULL)
-		err = pfkey_broadcast_one(skb, &skb2, GFP_KERNEL, one_sk);
+		err = pfkey_broadcast_one(skb, &skb2, allocation, one_sk);
 
 	kfree_skb(skb2);
 	kfree_skb(skb);
@@ -311,7 +311,7 @@ static int pfkey_do_dump(struct pfkey_so
 		hdr = (struct sadb_msg *) pfk->dump.skb->data;
 		hdr->sadb_msg_seq = 0;
 		hdr->sadb_msg_errno = rc;
-		pfkey_broadcast(pfk->dump.skb, BROADCAST_ONE,
+		pfkey_broadcast(pfk->dump.skb, GFP_ATOMIC, BROADCAST_ONE,
 				&pfk->sk, sock_net(&pfk->sk));
 		pfk->dump.skb = NULL;
 	}
@@ -355,7 +355,7 @@ static int pfkey_error(const struct sadb
 	hdr->sadb_msg_len = (sizeof(struct sadb_msg) /
 			     sizeof(uint64_t));
 
-	pfkey_broadcast(skb, BROADCAST_ONE, sk, sock_net(sk));
+	pfkey_broadcast(skb, GFP_KERNEL, BROADCAST_ONE, sk, sock_net(sk));
 
 	return 0;
 }
@@ -1396,7 +1396,7 @@ static int pfkey_getspi(struct sock *sk,
 
 	xfrm_state_put(x);
 
-	pfkey_broadcast(resp_skb, BROADCAST_ONE, sk, net);
+	pfkey_broadcast(resp_skb, GFP_KERNEL, BROADCAST_ONE, sk, net);
 
 	return 0;
 }
@@ -1483,7 +1483,7 @@ static int key_notify_sa(struct xfrm_sta
 	hdr->sadb_msg_seq = c->seq;
 	hdr->sadb_msg_pid = c->portid;
 
-	pfkey_broadcast(skb, BROADCAST_ALL, NULL, xs_net(x));
+	pfkey_broadcast(skb, GFP_ATOMIC, BROADCAST_ALL, NULL, xs_net(x));
 
 	return 0;
 }
@@ -1596,7 +1596,7 @@ static int pfkey_get(struct sock *sk, st
 	out_hdr->sadb_msg_reserved = 0;
 	out_hdr->sadb_msg_seq = hdr->sadb_msg_seq;
 	out_hdr->sadb_msg_pid = hdr->sadb_msg_pid;
-	pfkey_broadcast(out_skb, BROADCAST_ONE, sk, sock_net(sk));
+	pfkey_broadcast(out_skb, GFP_ATOMIC, BROADCAST_ONE, sk, sock_net(sk));
 
 	return 0;
 }
@@ -1701,8 +1701,8 @@ static int pfkey_register(struct sock *s
 		return -ENOBUFS;
 	}
 
-	pfkey_broadcast(supp_skb, BROADCAST_REGISTERED, sk, sock_net(sk));
-
+	pfkey_broadcast(supp_skb, GFP_KERNEL, BROADCAST_REGISTERED, sk,
+			sock_net(sk));
 	return 0;
 }
 
@@ -1720,7 +1720,8 @@ static int unicast_flush_resp(struct soc
 	hdr->sadb_msg_errno = (uint8_t) 0;
 	hdr->sadb_msg_len = (sizeof(struct sadb_msg) / sizeof(uint64_t));
 
-	return pfkey_broadcast(skb, BROADCAST_ONE, sk, sock_net(sk));
+	return pfkey_broadcast(skb, GFP_ATOMIC, BROADCAST_ONE, sk,
+			       sock_net(sk));
 }
 
 static int key_notify_sa_flush(const struct km_event *c)
@@ -1741,7 +1742,7 @@ static int key_notify_sa_flush(const str
 	hdr->sadb_msg_len = (sizeof(struct sadb_msg) / sizeof(uint64_t));
 	hdr->sadb_msg_reserved = 0;
 
-	pfkey_broadcast(skb, BROADCAST_ALL, NULL, c->net);
+	pfkey_broadcast(skb, GFP_ATOMIC, BROADCAST_ALL, NULL, c->net);
 
 	return 0;
 }
@@ -1798,7 +1799,7 @@ static int dump_sa(struct xfrm_state *x,
 	out_hdr->sadb_msg_pid = pfk->dump.msg_portid;
 
 	if (pfk->dump.skb)
-		pfkey_broadcast(pfk->dump.skb, BROADCAST_ONE,
+		pfkey_broadcast(pfk->dump.skb, GFP_ATOMIC, BROADCAST_ONE,
 				&pfk->sk, sock_net(&pfk->sk));
 	pfk->dump.skb = out_skb;
 
@@ -1886,7 +1887,7 @@ static int pfkey_promisc(struct sock *sk
 		new_hdr->sadb_msg_errno = 0;
 	}
 
-	pfkey_broadcast(skb, BROADCAST_ALL, NULL, sock_net(sk));
+	pfkey_broadcast(skb, GFP_KERNEL, BROADCAST_ALL, NULL, sock_net(sk));
 	return 0;
 }
 
@@ -2219,7 +2220,7 @@ static int key_notify_policy(struct xfrm
 	out_hdr->sadb_msg_errno = 0;
 	out_hdr->sadb_msg_seq = c->seq;
 	out_hdr->sadb_msg_pid = c->portid;
-	pfkey_broadcast(out_skb, BROADCAST_ALL, NULL, xp_net(xp));
+	pfkey_broadcast(out_skb, GFP_ATOMIC, BROADCAST_ALL, NULL, xp_net(xp));
 	return 0;
 
 }
@@ -2439,7 +2440,7 @@ static int key_pol_get_resp(struct sock
 	out_hdr->sadb_msg_errno = 0;
 	out_hdr->sadb_msg_seq = hdr->sadb_msg_seq;
 	out_hdr->sadb_msg_pid = hdr->sadb_msg_pid;
-	pfkey_broadcast(out_skb, BROADCAST_ONE, sk, xp_net(xp));
+	pfkey_broadcast(out_skb, GFP_ATOMIC, BROADCAST_ONE, sk, xp_net(xp));
 	err = 0;
 
 out:
@@ -2695,7 +2696,7 @@ static int dump_sp(struct xfrm_policy *x
 	out_hdr->sadb_msg_pid = pfk->dump.msg_portid;
 
 	if (pfk->dump.skb)
-		pfkey_broadcast(pfk->dump.skb, BROADCAST_ONE,
+		pfkey_broadcast(pfk->dump.skb, GFP_ATOMIC, BROADCAST_ONE,
 				&pfk->sk, sock_net(&pfk->sk));
 	pfk->dump.skb = out_skb;
 
@@ -2752,7 +2753,7 @@ static int key_notify_policy_flush(const
 	hdr->sadb_msg_satype = SADB_SATYPE_UNSPEC;
 	hdr->sadb_msg_len = (sizeof(struct sadb_msg) / sizeof(uint64_t));
 	hdr->sadb_msg_reserved = 0;
-	pfkey_broadcast(skb_out, BROADCAST_ALL, NULL, c->net);
+	pfkey_broadcast(skb_out, GFP_ATOMIC, BROADCAST_ALL, NULL, c->net);
 	return 0;
 
 }
@@ -2814,7 +2815,7 @@ static int pfkey_process(struct sock *sk
 	void *ext_hdrs[SADB_EXT_MAX];
 	int err;
 
-	pfkey_broadcast(skb_clone(skb, GFP_KERNEL),
+	pfkey_broadcast(skb_clone(skb, GFP_KERNEL), GFP_KERNEL,
 			BROADCAST_PROMISC_ONLY, NULL, sock_net(sk));
 
 	memset(ext_hdrs, 0, sizeof(ext_hdrs));
@@ -3036,7 +3037,8 @@ static int key_notify_sa_expire(struct x
 	out_hdr->sadb_msg_seq = 0;
 	out_hdr->sadb_msg_pid = 0;
 
-	pfkey_broadcast(out_skb, BROADCAST_REGISTERED, NULL, xs_net(x));
+	pfkey_broadcast(out_skb, GFP_ATOMIC, BROADCAST_REGISTERED, NULL,
+			xs_net(x));
 	return 0;
 }
 
@@ -3226,7 +3228,8 @@ static int pfkey_send_acquire(struct xfr
 		       xfrm_ctx->ctx_len);
 	}
 
-	return pfkey_broadcast(skb, BROADCAST_REGISTERED, NULL, xs_net(x));
+	return pfkey_broadcast(skb, GFP_ATOMIC, BROADCAST_REGISTERED, NULL,
+			       xs_net(x));
 }
 
 static struct xfrm_policy *pfkey_compile_policy(struct sock *sk, int opt,
@@ -3424,7 +3427,8 @@ static int pfkey_send_new_mapping(struct
 	n_port->sadb_x_nat_t_port_port = sport;
 	n_port->sadb_x_nat_t_port_reserved = 0;
 
-	return pfkey_broadcast(skb, BROADCAST_REGISTERED, NULL, xs_net(x));
+	return pfkey_broadcast(skb, GFP_ATOMIC, BROADCAST_REGISTERED, NULL,
+			       xs_net(x));
 }
 
 #ifdef CONFIG_NET_KEY_MIGRATE
@@ -3616,7 +3620,7 @@ static int pfkey_send_migrate(const stru
 	}
 
 	/* broadcast migrate message to sockets */
-	pfkey_broadcast(skb, BROADCAST_ALL, NULL, &init_net);
+	pfkey_broadcast(skb, GFP_ATOMIC, BROADCAST_ALL, NULL, &init_net);
 
 	return 0;
 

[toc] | [prev] | [next] | [standalone]


#1721929

FromShuah Khan <shuahkh@osg.samsung.com>
Date2017-08-28 21:40 +0200
Message-ID<ujy37-19O-5@gated-at.bofh.it>
In reply to#1721352
On 08/28/2017 02:04 AM, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 4.9.46 release.
> There are 84 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 Aug 30 08:05:10 UTC 2017.
> Anything received after that time might be too late.
> 
> The whole patch series can be found in one patch at:
> 	kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.9.46-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.9.y
> and the diffstat can be found below.
> 
> thanks,
> 
> greg k-h
> 

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

thanks,
-- Shuah

[toc] | [prev] | [next] | [standalone]


#1722071

FromGuenter Roeck <linux@roeck-us.net>
Date2017-08-29 02:20 +0200
Message-ID<ujCq6-3Ti-1@gated-at.bofh.it>
In reply to#1721352
On 08/28/2017 01:04 AM, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 4.9.46 release.
> There are 84 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 Aug 30 08:05:10 UTC 2017.
> Anything received after that time might be too late.
> 

Build results:
	total: 145 pass: 145 fail: 0
Qemu test results:
	total: 122 pass: 122 fail: 0

Details are available at http://kerneltests.org/builders.

Guenter

[toc] | [prev] | [next] | [standalone]


#1722420

FromSumit Semwal <sumit.semwal@linaro.org>
Date2017-08-29 14:10 +0200
Message-ID<ujNvc-2sE-17@gated-at.bofh.it>
In reply to#1721352
Hi Greg,

On 28 August 2017 at 13:34, Greg Kroah-Hartman
<gregkh@linuxfoundation.org> wrote:
> This is the start of the stable review cycle for the 4.9.46 release.
> There are 84 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 Aug 30 08:05:10 UTC 2017.
> Anything received after that time might be too late.

For ARM64, built and boot-tested with defconfig on hikey; no regressions noted.
>
> The whole patch series can be found in one patch at:
>         kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.9.46-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.9.y
> and the diffstat can be found below.
>
> thanks,
>
> greg k-h
>
Best,
Sumit.

[toc] | [prev] | [next] | [standalone]


#1722559

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2017-08-29 17:20 +0200
Message-ID<ujQt4-4gm-5@gated-at.bofh.it>
In reply to#1722420
On Tue, Aug 29, 2017 at 05:32:16PM +0530, Sumit Semwal wrote:
> Hi Greg,
> 
> On 28 August 2017 at 13:34, Greg Kroah-Hartman
> <gregkh@linuxfoundation.org> wrote:
> > This is the start of the stable review cycle for the 4.9.46 release.
> > There are 84 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 Aug 30 08:05:10 UTC 2017.
> > Anything received after that time might be too late.
> 
> For ARM64, built and boot-tested with defconfig on hikey; no regressions noted.

Thanks for testing 2 of these and letting me know.

greg k-h

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web