18 Dec, 2017

1 commit

  • On Asus GL502VSK and UX305LA, ACPI incorrectly reports discharging when
    battery is full and AC is plugged.

    However rate_now is correct under this circumstance, hence we can use
    "rate_now == 0" as a predicate to report battery full status correctly.

    Link: https://bugs.launchpad.net/bugs/1482390
    Signed-off-by: Kai-Heng Feng
    Signed-off-by: Rafael J. Wysocki

    Kai-Heng Feng
     

13 Dec, 2017

1 commit


11 Dec, 2017

6 commits

  • Linus Torvalds
     
  • HPFS does not set SB_I_VERSION and does not use the i_version counter
    internally.

    Signed-off-by: Jeff Layton
    Signed-off-by: Mikulas Patocka
    Reviewed-by: Mikulas Patocka
    Signed-off-by: Linus Torvalds

    Jeff Layton
     
  • sign_extend32 counts the sign bit parameter from 0, not from 1. So we
    have to use "11" for 12th bit, not "12".

    This mistake means we have not allowed negative op and cmp args since
    commit 30d6e0a4190d ("futex: Remove duplicated code and fix undefined
    behaviour") till now.

    Fixes: 30d6e0a4190d ("futex: Remove duplicated code and fix undefined behaviour")
    Signed-off-by: Jiri Slaby
    Cc: Ingo Molnar
    Cc: Peter Zijlstra
    Cc: Darren Hart
    Signed-off-by: Linus Torvalds

    Jiri Slaby
     
  • Pull btrfs fixes from David Sterba:
    "This contains a few fixes (error handling, quota leak, FUA vs
    nobarrier mount option).

    There's one one worth mentioning separately - an off-by-one fix that
    leads to overwriting first byte of an adjacent page with 0, out of
    bounds of the memory allocated by an ioctl. This is under a privileged
    part of the ioctl, can be triggerd in some subvolume layouts"

    * tag 'for-4.15-rc3-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux:
    btrfs: Fix possible off-by-one in btrfs_search_path_in_tree
    Btrfs: disable FUA if mounted with nobarrier
    btrfs: fix missing error return in btrfs_drop_snapshot
    btrfs: handle errors while updating refcounts in update_ref_for_cow
    btrfs: Fix quota reservation leak on preallocated files

    Linus Torvalds
     
  • Pull ARM SoC fixes from Olof Johansson:

    - A revert of all SCPI changes from the 4.15 merge window. They had
    regressions on the Amlogic platforms, and the submaintainer isn't
    around to fix these bugs due to vacation, etc. So we agreed to revert
    and revisit in next release cycle.

    - A series fixing a number of bugs for ARM CCN interconnect, around
    module unload, smp_processor_id() in preemptable context, and fixing
    some memory allocation failure checks.

    - A handful of devicetree fixes for different platforms, fixing
    warnings and errors that were previously ignored by the compiler.

    - The usual set of mostly minor fixes for different platforms.

    * tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (42 commits)
    ARM64: dts: meson-gx: fix UART pclk clock name
    ARM: omap2: hide omap3_save_secure_ram on non-OMAP3 builds
    arm: dts: nspire: Add missing #phy-cells to usb-nop-xceiv
    ARM: dts: Fix dm814x missing phy-cells property
    ARM: dts: Fix elm interrupt compiler warning
    bus: arm-ccn: fix module unloading Error: Removing state 147 which has instances left.
    bus: arm-cci: Fix use of smp_processor_id() in preemptible context
    bus: arm-ccn: Fix use of smp_processor_id() in preemptible context
    bus: arm-ccn: Simplify code
    bus: arm-ccn: Check memory allocation failure
    bus: arm-ccn: constify attribute_group structures.
    firmware: arm_scpi: Revert updates made during v4.15 merge window
    arm: dts: marvell: Add missing #phy-cells to usb-nop-xceiv
    arm64: dts: sort vendor subdirectories in Makefile alphabetically
    meson-gx-socinfo: Fix package id parsing
    ARM: meson: fix spelling mistake: "Couln't" -> "Couldn't"
    ARM: dts: meson: fix the memory region of the GPIO interrupt controller
    ARM: dts: meson: correct the sort order for the the gpio_intc node
    MAINTAINERS: exclude other Socionext SoC DT files from ARM/UNIPHIER entry
    arm64: dts: uniphier: remove unnecessary interrupt-parent
    ...

    Linus Torvalds
     
  • Pull KVM fixes from Radim Krčmář:
    "ARM:
    - A number of issues in the vgic discovered using SMATCH
    - A bit one-off calculation in out stage base address mask (32-bit
    and 64-bit)
    - Fixes to single-step debugging instructions that trap for other
    reasons such as MMMIO aborts
    - Printing unavailable hyp mode as error
    - Potential spinlock deadlock in the vgic
    - Avoid calling vgic vcpu free more than once
    - Broken bit calculation for big endian systems

    s390:
    - SPDX tags
    - Fence storage key accesses from problem state
    - Make sure that irq_state.flags is not used in the future

    x86:
    - Intercept port 0x80 accesses to prevent host instability (CVE)
    - Use userspace FPU context for guest FPU (mainly an optimization
    that fixes a double use of kernel FPU)
    - Do not leak one page per module load
    - Flush APIC page address cache from MMU invalidation notifiers"

    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (28 commits)
    KVM: x86: fix APIC page invalidation
    KVM: s390: Fix skey emulation permission check
    KVM: s390: mark irq_state.flags as non-usable
    KVM: s390: Remove redundant license text
    KVM: s390: add SPDX identifiers to the remaining files
    KVM: VMX: fix page leak in hardware_setup()
    KVM: VMX: remove I/O port 0x80 bypass on Intel hosts
    x86,kvm: remove KVM emulator get_fpu / put_fpu
    x86,kvm: move qemu/guest FPU switching out to vcpu_run
    KVM: arm/arm64: Fix broken GICH_ELRSR big endian conversion
    KVM: arm/arm64: kvm_arch_destroy_vm cleanups
    KVM: arm/arm64: Fix spinlock acquisition in vgic_set_owner
    kvm: arm: don't treat unavailable HYP mode as an error
    KVM: arm/arm64: Avoid attempting to load timer vgic state without a vgic
    kvm: arm64: handle single-step of hyp emulated mmio instructions
    kvm: arm64: handle single-step during SError exceptions
    kvm: arm64: handle single-step of userspace mmio instructions
    kvm: arm64: handle single-stepping trapped instructions
    KVM: arm/arm64: debug: Introduce helper for single-step
    arm: KVM: Fix VTTBR_BADDR_MASK BUG_ON off-by-one
    ...

    Linus Torvalds
     

10 Dec, 2017

4 commits

  • * fixes:
    ARM64: dts: meson-gx: fix UART pclk clock name
    ARM: dts: Fix dm814x missing phy-cells property
    ARM: dts: Fix elm interrupt compiler warning
    bus: arm-ccn: fix module unloading Error: Removing state 147 which has instances left.
    bus: arm-cci: Fix use of smp_processor_id() in preemptible context
    bus: arm-ccn: Fix use of smp_processor_id() in preemptible context
    bus: arm-ccn: Simplify code
    bus: arm-ccn: Check memory allocation failure
    bus: arm-ccn: constify attribute_group structures.
    meson-gx-socinfo: Fix package id parsing
    ARM: meson: fix spelling mistake: "Couln't" -> "Couldn't"
    ARM: dts: meson: fix the memory region of the GPIO interrupt controller
    ARM: dts: meson: correct the sort order for the the gpio_intc node

    Olof Johansson
     
  • …lman/linux-amlogic into fixes

    Amlogic fixes for v4.15-rc
    - GPIO interrupt fixes
    - socinfo fix for GX series
    - fix typo

    * tag 'amlogic-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic:
    ARM64: dts: meson-gx: fix UART pclk clock name
    meson-gx-socinfo: Fix package id parsing
    ARM: meson: fix spelling mistake: "Couln't" -> "Couldn't"
    ARM: dts: meson: fix the memory region of the GPIO interrupt controller
    ARM: dts: meson: correct the sort order for the the gpio_intc node

    Signed-off-by: Olof Johansson <olof@lixom.net>

    Olof Johansson
     
  • bus: ARM CCN and CCI PMU driver fixes

    This is a bunch of fixes CCN and (guest starring this time) CCI drivers.

    * Check for potential of failed allocation for the driver name string
    * Manage CPU ID properly at allocation (both CCN and CCI)
    * Fix module unload warnings related to objects release order
    * Small improvements like using allocating printfs and proper
    attributes constification

    The one fixing potential issues have been cc-ed to stable.

    * tag 'ccn/fixes-for-4.15' of git://git.linaro.org/people/pawel.moll/linux:
    bus: arm-ccn: fix module unloading Error: Removing state 147 which has instances left.
    bus: arm-cci: Fix use of smp_processor_id() in preemptible context
    bus: arm-ccn: Fix use of smp_processor_id() in preemptible context
    bus: arm-ccn: Simplify code
    bus: arm-ccn: Check memory allocation failure
    bus: arm-ccn: constify attribute_group structures.

    Signed-off-by: Olof Johansson

    Olof Johansson
     
  • …ux/kernel/git/tmlind/linux-omap into fixes

    Two fixes for dts compiler warnings

    These recently started showing up with better dtc checks being
    introduced.

    * tag 'omap-for-v4.15/fixes-dt-warnings' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
    ARM: dts: Fix dm814x missing phy-cells property
    ARM: dts: Fix elm interrupt compiler warning

    Signed-off-by: Olof Johansson <olof@lixom.net>

    Olof Johansson
     

09 Dec, 2017

28 commits

  • …/dhowells/linux-fs into keys-for-linus

    Assorted fixes for keyrings, ASN.1, X.509 and PKCS#7.

    James Morris
     
  • Commit 4675ff05de2d ("kmemcheck: rip it out") has removed the code but
    for some reason SPDX header stayed in place. This looks like a rebase
    mistake in the mmotm tree or the merge mistake. Let's drop those
    leftovers as well.

    Signed-off-by: Michal Hocko
    Signed-off-by: Linus Torvalds

    Michal Hocko
     
  • Pull networking fixes from David Miller:

    1) CAN fixes from Martin Kelly (cancel URBs properly in all the CAN usb
    drivers).

    2) Revert returning -EEXIST from __dev_alloc_name() as this propagates
    to userspace and broke some apps. From Johannes Berg.

    3) Fix conn memory leaks and crashes in TIPC, from Jon Malloc and Cong
    Wang.

    4) Gianfar MAC can't do EEE so don't advertise it by default, from
    Claudiu Manoil.

    5) Relax strict netlink attribute validation, but emit a warning. From
    David Ahern.

    6) Fix regression in checksum offload of thunderx driver, from Florian
    Westphal.

    7) Fix UAPI bpf issues on s390, from Hendrik Brueckner.

    8) New card support in iwlwifi, from Ihab Zhaika.

    9) BBR congestion control bug fixes from Neal Cardwell.

    10) Fix port stats in nfp driver, from Pieter Jansen van Vuuren.

    11) Fix leaks in qualcomm rmnet, from Subash Abhinov Kasiviswanathan.

    12) Fix DMA API handling in sh_eth driver, from Thomas Petazzoni.

    13) Fix spurious netpoll warnings in bnxt_en, from Calvin Owens.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (67 commits)
    net: mvpp2: fix the RSS table entry offset
    tcp: evaluate packet losses upon RTT change
    tcp: fix off-by-one bug in RACK
    tcp: always evaluate losses in RACK upon undo
    tcp: correctly test congestion state in RACK
    bnxt_en: Fix sources of spurious netpoll warnings
    tcp_bbr: reset long-term bandwidth sampling on loss recovery undo
    tcp_bbr: reset full pipe detection on loss recovery undo
    tcp_bbr: record "full bw reached" decision in new full_bw_reached bit
    sfc: pass valid pointers from efx_enqueue_unwind
    gianfar: Disable EEE autoneg by default
    tcp: invalidate rate samples during SACK reneging
    can: peak/pcie_fd: fix potential bug in restarting tx queue
    can: usb_8dev: cancel urb on -EPIPE and -EPROTO
    can: kvaser_usb: cancel urb on -EPIPE and -EPROTO
    can: esd_usb2: cancel urb on -EPIPE and -EPROTO
    can: ems_usb: cancel urb on -EPIPE and -EPROTO
    can: mcba_usb: cancel urb on -EPROTO
    usbnet: fix alignment for frames with no ethernet header
    tcp: use current time in tcp_rcv_space_adjust()
    ...

    Linus Torvalds
     
  • Pull media fixes from Mauro Carvalho Chehab:

    "A series of fixes for the media subsytem:

    - The largest amount of fixes in this series is with regards to
    comments that aren't kernel-doc, but start with "/**".

    A new check added for 4.15 makes it to produce a *huge* amount of
    new warnings (I'm compiling here with W=1). Most of the patches in
    this series fix those.

    No code changes - just comment changes at the source files

    - rc: some fixed in order to better handle RC repetition codes

    - v4l-async: use the v4l2_dev from the root notifier when matching
    sub-devices

    - v4l2-fwnode: Check subdev count after checking port

    - ov 13858 and et8ek8: compilation fix with randconfigs

    - usbtv: a trivial new USB ID addition

    - dibusb-common: don't do DMA on stack on firmware load

    - imx274: Fix error handling, add MAINTAINERS entry

    - sir_ir: detect presence of port"

    * tag 'media/v4.15-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (50 commits)
    media: imx274: Fix error handling, add MAINTAINERS entry
    media: v4l: async: use the v4l2_dev from the root notifier when matching sub-devices
    media: v4l2-fwnode: Check subdev count after checking port
    media: et8ek8: select V4L2_FWNODE
    media: ov13858: Select V4L2_FWNODE
    media: rc: partial revert of "media: rc: per-protocol repeat period"
    media: dvb: i2c transfers over usb cannot be done from stack
    media: dvb-frontends: complete kernel-doc markups
    media: docs: add documentation for frontend attach info
    media: dvb_frontends: fix kernel-doc macros
    media: drivers: remove "/**" from non-kernel-doc comments
    media: lm3560: add a missing kernel-doc parameter
    media: rcar_jpu: fix two kernel-doc markups
    media: vsp1: add a missing kernel-doc parameter
    media: soc_camera: fix a kernel-doc markup
    media: mt2063: fix some kernel-doc warnings
    media: radio-wl1273: fix a parameter name at kernel-doc macro
    media: s3c-camif: add missing description at s3c_camif_find_format()
    media: mtk-vpu: add description for wdt fields at struct mtk_vpu
    media: vdec: fix some kernel-doc warnings
    ...

    Linus Torvalds
     
  • Pull drm fixes from Dave Airlie:
    "This pull is a bit larger than I'd like but a large bunch of it is
    license fixes, AMD wanted to fix the licenses for a bunch of files
    that were missing them,

    Otherwise a bunch of TTM regression fix since the hugepage support,
    some i915 and gvt fixes, a core connector free in a safe context fix,
    and one bridge fix"

    * tag 'drm-fixes-for-v4.15-rc3' of git://people.freedesktop.org/~airlied/linux: (26 commits)
    drm/bridge: analogix dp: Fix runtime PM state in get_modes() callback
    Revert "drm/i915: Display WA #1133 WaFbcSkipSegments:cnl, glk"
    drm/vc4: Fix false positive WARN() backtrace on refcount_inc() usage
    drm/i915: Call i915_gem_init_userptr() before taking struct_mutex
    drm/exynos: remove unnecessary function declaration
    drm/exynos: remove unnecessary descrptions
    drm/exynos: gem: Drop NONCONTIG flag for buffers allocated without IOMMU
    drm/exynos: Fix dma-buf import
    drm/ttm: swap consecutive allocated pooled pages v4
    drm: safely free connectors from connector_iter
    drm/i915/gvt: set max priority for gvt context
    drm/i915/gvt: Don't mark vgpu context as inactive when preempted
    drm/i915/gvt: Limit read hw reg to active vgpu
    drm/i915/gvt: Export intel_gvt_render_mmio_to_ring_id()
    drm/i915/gvt: Emulate PCI expansion ROM base address register
    drm/ttm: swap consecutive allocated cached pages v3
    drm/ttm: roundup the shrink request to prevent skip huge pool
    drm/ttm: add page order support in ttm_pages_put
    drm/ttm: add set_pages_wb for handling page order more than zero
    drm/ttm: add page order in page pool
    ...

    Linus Torvalds
     
  • Pull md fixes from Shaohua Li:
    "Some MD fixes.

    The notable one is a raid5-cache deadlock bug with dm-raid, others are
    not significant"

    * tag 'md/4.15-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/shli/md:
    md/raid1/10: add missed blk plug
    md: limit mdstat resync progress to max_sectors
    md/r5cache: move mddev_lock() out of r5c_journal_mode_set()
    md/raid5: correct degraded calculation in raid5_error

    Linus Torvalds
     
  • …x/kernel/git/robh/linux

    Pull DeviceTree fixes from Rob Herring:
    "Another set of DT fixes:

    - Fixes from overlay code rework. A trifecta of fixes to the locking,
    an out of bounds access, and a memory leak in of_overlay_apply()

    - Clean-up at25 eeprom binding document

    - Remove leading '0x' in unit-addresses from binding docs"

    * tag 'devicetree-fixes-for-4.15-part2' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux:
    of: overlay: Make node skipping in init_overlay_changeset() clearer
    of: overlay: Fix out-of-bounds write in init_overlay_changeset()
    of: overlay: Fix (un)locking in of_overlay_apply()
    of: overlay: Fix memory leak in of_overlay_apply() error path
    dt-bindings: eeprom: at25: Document device-specific compatible values
    dt-bindings: eeprom: at25: Grammar s/are can/can/
    dt-bindings: Remove leading 0x from bindings notation
    of: overlay: Remove else after goto
    of: Spelling s/changset/changeset/
    of: unittest: Remove bogus overlay mutex release from overlay_data_add()

    Linus Torvalds
     
  • Pull virtio bugfixes from Michael Tsirkin:
    "A couple of minor bugfixes"

    * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost:
    virtio_net: fix return value check in receive_mergeable()
    virtio_mmio: add cleanup for virtio_mmio_remove
    virtio_mmio: add cleanup for virtio_mmio_probe

    Linus Torvalds
     
  • Pull xen fixes from Juergen Gross:
    "Just two small fixes for the new pvcalls frontend driver"

    * tag 'for-linus-4.15-rc3-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
    xen/pvcalls: Fix a check in pvcalls_front_remove()
    xen/pvcalls: check for xenbus_read() errors

    Linus Torvalds
     
  • Pull powerpc fixes from Michael Ellerman:

    "One notable fix for kexec on Power9, where we were not clearing MMU
    PID properly which sometimes leads to hangs. Finally debugged to a
    root cause by Nick.

    A revert of a patch which tried to rework our panic handling to get
    more output on the console, but inadvertently broke reporting the
    panic to the hypervisor, which apparently people care about.

    Then a fix for an oops in the PMU code, and finally some s/%p/%px/ in
    xmon.

    Thanks to: David Gibson, Nicholas Piggin, Ravi Bangoria"

    * tag 'powerpc-4.15-4' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
    powerpc/xmon: Don't print hashed pointers in xmon
    powerpc/64s: Initialize ISAv3 MMU registers before setting partition table
    Revert "powerpc: Do not call ppc_md.panic in fadump panic notifier"
    powerpc/perf: Fix oops when grouping different pmu events

    Linus Torvalds
     
  • …nux/kernel/git/mkl/linux-can

    Marc Kleine-Budde says:

    ====================
    pull-request: can 2017-12-08

    this is a pull request of 6 patches for net/master.

    Martin Kelly provides 5 patches for various USB based CAN drivers, that
    properly cancel the URBs on adapter unplug, so that the driver doesn't
    end up in an endless loop. Stephane Grosjean provides a patch to restart
    the tx queue if zero length packages are transmitted.
    ====================

    Signed-off-by: David S. Miller <davem@davemloft.net>

    David S. Miller
     
  • …m/linux/kernel/git/kvalo/wireless-drivers

    Kalle Valo says:

    ====================
    wireless-drivers fixes for 4.15

    Second set of fixes for 4.15. This time a lot of iwlwifi patches and
    two brcmfmac patches. Most important here are the MIC and IVC fixes
    for iwlwifi to unbreak 9000 series.

    iwlwifi

    * fix rate-scaling to not start lowest possible rate

    * fix the TX queue hang detection for AP/GO modes

    * fix the TX queue hang timeout in monitor interfaces

    * fix packet injection

    * remove a wrong error message when dumping PCI registers

    * fix race condition with RF-kill

    * tell mac80211 when the MIC has been stripped (9000 series)

    * tell mac80211 when the IVC has been stripped (9000 series)

    * add 2 new PCI IDs, one for 9000 and one for 22000

    * fix a queue hang due during a P2P Remain-on-Channel operation

    brcmfmac

    * fix a race which sometimes caused a crash during sdio unbind

    * fix a kernel-doc related build error
    ====================

    Signed-off-by: David S. Miller <davem@davemloft.net>

    David S. Miller
     
  • The macro used to access or set an RSS table entry was using an offset
    of 8, while it should use an offset of 0. This lead to wrongly configure
    the RSS table, not accessing the right entries.

    Fixes: 1d7d15d79fb4 ("net: mvpp2: initialize the RSS tables")
    Signed-off-by: Antoine Tenart
    Signed-off-by: David S. Miller

    Antoine Tenart
     
  • Yuchung Cheng says:

    ====================
    tcp: RACK loss recovery bug fixes

    This patch set has four minor bug fixes in TCP RACK loss recovery.
    ====================

    Signed-off-by: David S. Miller

    David S. Miller
     
  • RACK skips an ACK unless it advances the most recently delivered
    TX timestamp (rack.mstamp). Since RACK also uses the most recent
    RTT to decide if a packet is lost, RACK should still run the
    loss detection whenever the most recent RTT changes. For example,
    an ACK that does not advance the timestamp but triggers the cwnd
    undo due to reordering, would then use the most recent (higher)
    RTT measurement to detect further losses.

    Signed-off-by: Yuchung Cheng
    Reviewed-by: Neal Cardwell
    Reviewed-by: Priyaranjan Jha
    Reviewed-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Yuchung Cheng
     
  • RACK should mark a packet lost when remaining wait time is zero.

    Signed-off-by: Yuchung Cheng
    Reviewed-by: Neal Cardwell
    Reviewed-by: Priyaranjan Jha
    Reviewed-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Yuchung Cheng
     
  • When sender detects spurious retransmission, all packets
    marked lost are remarked to be in-flight. However some may
    be considered lost based on its timestamps in RACK. This patch
    forces RACK to re-evaluate, which may be skipped previously if
    the ACK does not advance RACK timestamp.

    Signed-off-by: Yuchung Cheng
    Reviewed-by: Neal Cardwell
    Reviewed-by: Priyaranjan Jha
    Reviewed-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Yuchung Cheng
     
  • RACK does not test the loss recovery state correctly to compute
    the reordering window. It assumes if lost_out is zero then TCP is
    not in loss recovery. But it can be zero during recovery before
    calling tcp_rack_detect_loss(): when an ACK acknowledges all
    packets marked lost before receiving this ACK, but has not yet
    to discover new ones by tcp_rack_detect_loss(). The fix is to
    simply test the congestion state directly.

    Signed-off-by: Yuchung Cheng
    Reviewed-by: Neal Cardwell
    Reviewed-by: Priyaranjan Jha
    Reviewed-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Yuchung Cheng
     
  • After applying 2270bc5da3497945 ("bnxt_en: Fix netpoll handling") and
    903649e718f80da2 ("bnxt_en: Improve -ENOMEM logic in NAPI poll loop."),
    we still see the following WARN fire:

    ------------[ cut here ]------------
    WARNING: CPU: 0 PID: 1875170 at net/core/netpoll.c:165 netpoll_poll_dev+0x15a/0x160
    bnxt_poll+0x0/0xd0 exceeded budget in poll

    Call Trace:
    [] dump_stack+0x4d/0x70
    [] __warn+0xd3/0xf0
    [] warn_slowpath_fmt+0x4f/0x60
    [] netpoll_poll_dev+0x15a/0x160
    [] netpoll_send_skb_on_dev+0x168/0x250
    [] netpoll_send_udp+0x2dc/0x440
    [] write_ext_msg+0x20e/0x250
    [] call_console_drivers.constprop.23+0xa5/0x110
    [] console_unlock+0x339/0x5b0
    [] vprintk_emit+0x2c8/0x450
    [] vprintk_default+0x1f/0x30
    [] printk+0x48/0x50
    [] edac_raw_mc_handle_error+0x563/0x5c0 [edac_core]
    [] edac_mc_handle_error+0x42b/0x6e0 [edac_core]
    [] sbridge_mce_output_error+0x410/0x10d0 [sb_edac]
    [] sbridge_check_error+0xac/0x130 [sb_edac]
    [] edac_mc_workq_function+0x3c/0x90 [edac_core]
    [] process_one_work+0x19b/0x480
    [] worker_thread+0x6a/0x520
    [] kthread+0xe4/0x100
    [] ret_from_fork+0x22/0x40

    This happens because we increment rx_pkts on -ENOMEM and -EIO, resulting
    in rx_pkts > 0. Fix this by only bumping rx_pkts if we were actually
    given a non-zero budget.

    Signed-off-by: Calvin Owens
    Acked-by: Michael Chan
    Signed-off-by: David S. Miller

    Calvin Owens
     
  • The clock-names for pclk was wrongly set to "core", but the bindings
    specifies "pclk".
    This was not cathed until the legacy non-documented bindings were removed.

    Reported-by: Andreas Färber
    Fixes: f72d6f6037b7 ("ARM64: dts: meson-gx: use stable UART bindings with correct gate clock")
    Signed-off-by: Neil Armstrong
    Signed-off-by: Kevin Hilman

    Neil Armstrong
     
  • Neal Cardwell says:

    ====================
    TCP BBR sampling fixes for loss recovery undo

    This patch series has a few minor bug fixes for cases where spurious
    loss recoveries can trick BBR estimators into estimating that the
    available bandwidth is much lower than the true available bandwidth.
    In both cases the fix here is to just reset the estimator upon loss
    recovery undo.
    ====================

    Signed-off-by: David S. Miller

    David S. Miller
     
  • Fix BBR so that upon notification of a loss recovery undo BBR resets
    long-term bandwidth sampling.

    Under high reordering, reordering events can be interpreted as loss.
    If the reordering and spurious loss estimates are high enough, this
    can cause BBR to spuriously estimate that we are seeing loss rates
    high enough to trigger long-term bandwidth estimation. To avoid that
    problem, this commit resets long-term bandwidth sampling on loss
    recovery undo events.

    Signed-off-by: Neal Cardwell
    Reviewed-by: Yuchung Cheng
    Acked-by: Soheil Hassas Yeganeh
    Signed-off-by: David S. Miller

    Neal Cardwell
     
  • Fix BBR so that upon notification of a loss recovery undo BBR resets
    the full pipe detection (STARTUP exit) state machine.

    Under high reordering, reordering events can be interpreted as loss.
    If the reordering and spurious loss estimates are high enough, this
    could previously cause BBR to spuriously estimate that the pipe is
    full.

    Since spurious loss recovery means that our overall sending will have
    slowed down spuriously, this commit gives a flow more time to probe
    robustly for bandwidth and decide the pipe is really full.

    Signed-off-by: Neal Cardwell
    Reviewed-by: Yuchung Cheng
    Acked-by: Soheil Hassas Yeganeh
    Signed-off-by: David S. Miller

    Neal Cardwell
     
  • This commit records the "full bw reached" decision in a new
    full_bw_reached bit. This is a pure refactor that does not change the
    current behavior, but enables subsequent fixes and improvements.

    In particular, this enables simple and clean fixes because the full_bw
    and full_bw_cnt can be unconditionally zeroed without worrying about
    forgetting that we estimated we filled the pipe in Startup. And it
    enables future improvements because multiple code paths can be used
    for estimating that we filled the pipe in Startup; any new code paths
    only need to set this bit when they think the pipe is full.

    Note that this fix intentionally reduces the width of the full_bw_cnt
    counter, since we have never used the most significant bit.

    Signed-off-by: Neal Cardwell
    Reviewed-by: Yuchung Cheng
    Acked-by: Soheil Hassas Yeganeh
    Signed-off-by: David S. Miller

    Neal Cardwell
     
  • The bytes_compl and pkts_compl pointers passed to efx_dequeue_buffers
    cannot be NULL. Add a paranoid warning to check this condition and fix
    the one case where they were NULL.

    efx_enqueue_unwind() is called very rarely, during error handling.
    Without this fix it would fail with a NULL pointer dereference in
    efx_dequeue_buffer, with efx_enqueue_skb in the call stack.

    Fixes: e9117e5099ea ("sfc: Firmware-Assisted TSO version 2")
    Reported-by: Jarod Wilson
    Signed-off-by: Bert Kenward
    Tested-by: Jarod Wilson
    Acked-by: Jarod Wilson
    Signed-off-by: David S. Miller

    Bert Kenward
     
  • This controller does not support EEE, but it may connect to a PHY
    which supports EEE and advertises EEE by default, while its link
    partner also advertises EEE. If this happens, the PHY enters low
    power mode when the traffic rate is low and causes packet loss.
    This patch disables EEE advertisement by default for any PHY that
    gianfar connects to, to prevent the above unwanted outcome.

    Signed-off-by: Shaohui Xie
    Tested-by: Yangbo Lu
    Signed-off-by: Claudiu Manoil
    Reviewed-by: Andrew Lunn
    Signed-off-by: David S. Miller

    Claudiu Manoil
     
  • Pull s390 fixes from Martin Schwidefsky:

    - three more patches in regard to the SPDX license tags. The missing
    tags for the files in arch/s390/kvm will be merged via the KVM tree.
    With that all s390 related files should have their SPDX tags.

    - a patch to get rid of 'struct timespec' in the DASD driver.

    - bug fixes

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
    s390: fix compat system call table
    s390/mm: fix off-by-one bug in 5-level page table handling
    s390: Remove redudant license text
    s390: add a few more SPDX identifiers
    s390/dasd: prevent prefix I/O error
    s390: always save and restore all registers on context switch
    s390/dasd: remove 'struct timespec' usage
    s390/qdio: restrict target-full handling to IQDIO
    s390/qdio: consider ERROR buffers for inbound-full condition
    s390/virtio: add BSD license to virtio-ccw

    Linus Torvalds
     
  • Pull arm64 fixes from Will Deacon:
    "Fix some more FP register fallout from the SVE patches and also some
    problems with the PGD tracking in our software PAN emulation code,
    after we received a crash report from a 3.18 kernel running a
    backport.

    Summary:

    - fix SW PAN pgd shadowing for kernel threads, EFI and exiting user
    tasks

    - fix FP register leak when a task_struct is re-allocated

    - fix potential use-after-free in FP state tracking used by KVM"

    * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
    arm64/sve: Avoid dereference of dead task_struct in KVM guest entry
    arm64: SW PAN: Update saved ttbr0 value on enter_lazy_tlb
    arm64: SW PAN: Point saved ttbr0 at the zero page when switching to init_mm
    arm64: fpsimd: Abstract out binding of task's fpsimd context to the cpu.
    arm64: fpsimd: Prevent registers leaking from dead tasks

    Linus Torvalds