Skip to content
Permalink
Anand-Jain/rea…

Commits on Feb 19, 2020

  1. btrfs: introduce new read_policy device

    A new read policy 'device' is introduced with this patch, which when set
    can pick the read_preferred device for reading. This tunable is for
    advance users who knows what they are doing so that they have the
    flexibility of making sure that reads are read from the device they
    prefer.
    
    For example:
    
    $ cat /sys/fs/btrfs/UUID/read_policy
    [pid] device
    
    $echo 1 > /sys/fs/btrfs/UUID/devinfo/1/read_preferred
    
    $echo device > /sys/fs/btrfs/UUID/read_policy
    
    $cat /sys/fs/btrfs/UUID/read_policy
    pid [device]
    
    Signed-off-by: Anand Jain <anand.jain@oracle.com>
    asj authored and 0day robot committed Feb 19, 2020
  2. btrfs: introduce new device-state read_preferred

    Preparatory patch to add new read_policy type 'device'.
    Provides a sysfs interface to set the device state as read_preferred.
    
    Signed-off-by: Anand Jain <anand.jain@oracle.com>
    asj authored and 0day robot committed Feb 19, 2020
  3. btrfs: create read policy sysfs attribute, pid

    Add
    
     /sys/fs/btrfs/UUID/read_policy
    
    attribute so that the read policy for the raid1 and raid10 chunks can be
    tuned.
    
    When this attribute is read, it shall show all available policies, with
    active policy being with in [ ]. The read_policy attribute can be written
    using one of the items listed in there.
    
    For example:
      $cat /sys/fs/btrfs/UUID/read_policy
      [pid]
      $echo pid > /sys/fs/btrfs/UUID/read_policy
    
    Signed-off-by: Anand Jain <anand.jain@oracle.com>
    Reviewed-by: Josef Bacik <josef@toxicpanda.com>
    asj authored and 0day robot committed Feb 19, 2020
  4. btrfs: create read policy framework

    As of now we use %pid method to read stripped mirrored data, which means
    process id determines the stripe id to be read. This type of routing
    typically helps in a system with many small independent processes tying
    to read random data. On the other hand the %pid based read IO policy is
    inefficient because if there is a single process trying to read large
    data the overall disk bandwidth remains under-utilized.
    
    So this patch introduces read policy framework so that we could add more
    read policies, such as IO routing based on device's wait-queue or manual
    when we have a read-preferred device or a policy based on the target
    storage caching.
    
    Signed-off-by: Anand Jain <anand.jain@oracle.com>
    Reviewed-by: Josef Bacik <josef@toxicpanda.com>
    asj authored and 0day robot committed Feb 19, 2020
  5. btrfs: add btrfs_strmatch helper

    Add a generic helper to match the golden-string in the given-string,
    and ignore the leading and trailing whitespaces if any.
    
    Signed-off-by: Anand Jain <anand.jain@oracle.com>
    Suggested-by: David Sterba <dsterba@suse.com>
    asj authored and 0day robot committed Feb 19, 2020

Commits on Feb 16, 2020

  1. Linux 5.6-rc2

    torvalds committed Feb 16, 2020
  2. Merge tag 'for-linus-5.6-1' of https://github.com/cminyard/linux-ipmi

    Pull IPMI update from Corey Minyard:
     "Minor bug fixes for IPMI
    
      I know this is late; I've been travelling and, well, I've been
      distracted.
    
      This is just a few bug fixes and adding i2c support to the IPMB
      driver, which is something I wanted from the beginning for it"
    
    * tag 'for-linus-5.6-1' of https://github.com/cminyard/linux-ipmi:
      drivers: ipmi: fix off-by-one bounds check that leads to a out-of-bounds write
      ipmi:ssif: Handle a possible NULL pointer reference
      drivers: ipmi: Modify max length of IPMB packet
      drivers: ipmi: Support raw i2c packet in IPMB
    torvalds committed Feb 16, 2020
  3. Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm

    Pull KVM fixes from Paolo Bonzini:
     "Bugfixes and improvements to selftests.
    
      On top of this, Mauro converted the KVM documentation to rst format,
      which was very welcome"
    
    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (44 commits)
      docs: virt: guest-halt-polling.txt convert to ReST
      docs: kvm: review-checklist.txt: rename to ReST
      docs: kvm: Convert timekeeping.txt to ReST format
      docs: kvm: Convert s390-diag.txt to ReST format
      docs: kvm: Convert ppc-pv.txt to ReST format
      docs: kvm: Convert nested-vmx.txt to ReST format
      docs: kvm: Convert mmu.txt to ReST format
      docs: kvm: Convert locking.txt to ReST format
      docs: kvm: Convert hypercalls.txt to ReST format
      docs: kvm: arm/psci.txt: convert to ReST
      docs: kvm: convert arm/hyp-abi.txt to ReST
      docs: kvm: Convert api.txt to ReST format
      docs: kvm: convert devices/xive.txt to ReST
      docs: kvm: convert devices/xics.txt to ReST
      docs: kvm: convert devices/vm.txt to ReST
      docs: kvm: convert devices/vfio.txt to ReST
      docs: kvm: convert devices/vcpu.txt to ReST
      docs: kvm: convert devices/s390_flic.txt to ReST
      docs: kvm: convert devices/mpic.txt to ReST
      docs: kvm: convert devices/arm-vgit.txt to ReST
      ...
    torvalds committed Feb 16, 2020
  4. Merge tag 'edac_urgent_for_5.6' of git://git.kernel.org/pub/scm/linux…

    …/kernel/git/ras/ras
    
    Pull EDAC fixes from Borislav Petkov:
     "Two fixes for use-after-free and memory leaking in the EDAC core, by
      Robert Richter.
    
      Debug options like DEBUG_TEST_DRIVER_REMOVE, KASAN and DEBUG_KMEMLEAK
      unearthed issues with the lifespan of memory allocated by the EDAC
      memory controller descriptor due to misdesigned memory freeing, done
      partially by the EDAC core *and* the driver core, which is problematic
      to say the least.
    
      These two are minimal fixes to take care of stable - a proper rework
      is following which cleans up that mess properly"
    
    * tag 'edac_urgent_for_5.6' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras:
      EDAC/sysfs: Remove csrow objects on errors
      EDAC/mc: Fix use-after-free and memleaks during device removal
    torvalds committed Feb 16, 2020
  5. Merge tag 'block-5.6-2020-02-16' of git://git.kernel.dk/linux-block

    Pull block fixes from Jens Axboe:
     "Not a lot here, which is great, basically just three small bcache
      fixes from Coly, and four NVMe fixes via Keith"
    
    * tag 'block-5.6-2020-02-16' of git://git.kernel.dk/linux-block:
      nvme: fix the parameter order for nvme_get_log in nvme_get_fw_slot_info
      nvme/pci: move cqe check after device shutdown
      nvme: prevent warning triggered by nvme_stop_keep_alive
      nvme/tcp: fix bug on double requeue when send fails
      bcache: remove macro nr_to_fifo_front()
      bcache: Revert "bcache: shrink btree node cache after bch_btree_check()"
      bcache: ignore pending signals when creating gc and allocator thread
    torvalds committed Feb 16, 2020
  6. Merge tag 'for-5.6-rc1-tag' of git://git.kernel.org/pub/scm/linux/ker…

    …nel/git/kdave/linux
    
    Pull btrfs fixes from David Sterba:
     "Two races fixed, memory leak fix, sysfs directory fixup and two new
      log messages:
    
       - two fixed race conditions: extent map merging and truncate vs
         fiemap
    
       - create the right sysfs directory with device information and move
         the individual device dirs under it
    
       - print messages when the tree-log is replayed at mount time or
         cannot be replayed on remount"
    
    * tag 'for-5.6-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux:
      btrfs: sysfs, move device id directories to UUID/devinfo
      btrfs: sysfs, add UUID/devinfo kobject
      Btrfs: fix race between shrinking truncate and fiemap
      btrfs: log message when rw remount is attempted with unclean tree-log
      btrfs: print message when tree-log replay starts
      Btrfs: fix race between using extent maps and merging them
      btrfs: ref-verify: fix memory leaks
    torvalds committed Feb 16, 2020
  7. Merge tag '5.6-rc1-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6

    Pull cifs fixes from Steve French:
     "Four small CIFS/SMB3 fixes. One (the EA overflow fix) for stable"
    
    * tag '5.6-rc1-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6:
      cifs: make sure we do not overflow the max EA buffer size
      cifs: enable change notification for SMB2.1 dialect
      cifs: Fix mode output in debugging statements
      cifs: fix mount option display for sec=krb5i
    torvalds committed Feb 16, 2020
  8. Merge tag 'ext4_for_linus_stable' of git://git.kernel.org/pub/scm/lin…

    …ux/kernel/git/tytso/ext4
    
    Pull ext4 fixes from Ted Ts'o:
     "Miscellaneous ext4 bug fixes (all stable fodder)"
    
    * tag 'ext4_for_linus_stable' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:
      ext4: improve explanation of a mount failure caused by a misconfigured kernel
      jbd2: do not clear the BH_Mapped flag when forgetting a metadata buffer
      jbd2: move the clearing of b_modified flag to the journal_unmap_buffer()
      ext4: add cond_resched() to ext4_protect_reserved_inode
      ext4: fix checksum errors with indexed dirs
      ext4: fix support for inode sizes > 1024 bytes
      ext4: simplify checking quota limits in ext4_statfs()
      ext4: don't assume that mmp_nodename/bdevname have NUL
    torvalds committed Feb 16, 2020
  9. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/dtor/input
    
    Pull input updates from Dmitry Torokhov:
    
     - a few drivers have been updated to use flexible-array syntax instead
       of GCC extension
    
     - ili210x touchscreen driver now supports the 2120 protocol flavor
    
     - a couple more of Synaptics devices have been switched over to RMI4
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
      Input: cyapa - replace zero-length array with flexible-array member
      Input: tca6416-keypad - replace zero-length array with flexible-array member
      Input: gpio_keys_polled - replace zero-length array with flexible-array member
      Input: synaptics - remove the LEN0049 dmi id from topbuttonpad list
      Input: synaptics - enable SMBus on ThinkPad L470
      Input: synaptics - switch T470s to RMI4 by default
      Input: gpio_keys - replace zero-length array with flexible-array member
      Input: goldfish_events - replace zero-length array with flexible-array member
      Input: psmouse - switch to using i2c_new_scanned_device()
      Input: ili210x - add ili2120 support
      Input: ili210x - fix return value of is_visible function
    torvalds committed Feb 16, 2020
  10. Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/gi…

    …t/rdma/rdma
    
    Pull rdma fixes from Jason Gunthorpe:
     "Not too much going on here, though there are about four fixes related
      to stuff merged during the last merge window.
    
      We also see the return of a syzkaller instance with access to RDMA
      devices, and a few bugs detected by that squished.
    
       - Fix three crashers and a memory memory leak for HFI1
    
       - Several bugs found by syzkaller
    
       - A bug fix for the recent QP counters feature on older mlx5 HW
    
       - Locking inversion in cxgb4
    
       - Unnecessary WARN_ON in siw
    
       - A umad crasher regression during unload, from a bug fix for
         something else
    
       - Bugs introduced in the merge window:
           - Missed list_del in uverbs file rework, core and mlx5 devx
           - Unexpected integer math truncation in the mlx5 VAR patches
           - Compilation bug fix for the VAR patches on 32 bit"
    
    * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma:
      IB/mlx5: Use div64_u64 for num_var_hw_entries calculation
      RDMA/core: Fix protection fault in get_pkey_idx_qp_list
      RDMA/rxe: Fix soft lockup problem due to using tasklets in softirq
      RDMA/mlx5: Prevent overflow in mmap offset calculations
      IB/umad: Fix kernel crash while unloading ib_umad
      RDMA/mlx5: Fix async events cleanup flows
      RDMA/core: Add missing list deletion on freeing event queue
      RDMA/siw: Remove unwanted WARN_ON in siw_cm_llp_data_ready()
      RDMA/iw_cxgb4: initiate CLOSE when entering TERM
      IB/mlx5: Return failure when rts2rts_qp_counters_set_id is not supported
      RDMA/core: Fix invalid memory access in spec_filter_size
      IB/rdmavt: Reset all QPs when the device is shut down
      IB/hfi1: Close window for pq and request coliding
      IB/hfi1: Acquire lock to release TID entries when user file is closed
      RDMA/hfi1: Fix memory leak in _dev_comp_vect_mappings_create
    torvalds committed Feb 16, 2020

Commits on Feb 15, 2020

  1. Merge tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/soc/soc
    
    Pull ARM SoC fixes from Olof Johansson:
     "A handful of fixes that have come in since the merge window:
    
       - Fix of PCI interrupt map on arm64 fast model (SW emulator)
    
       - Fixlet for sound on ST platforms and a small cleanup of deprecated
         DT properties
    
       - A stack buffer overflow fix for moxtet
    
       - Fuse driver build fix for Tegra194
    
       - A few config updates to turn on new drivers merged this cycle"
    
    * tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:
      bus: moxtet: fix potential stack buffer overflow
      soc/tegra: fuse: Fix build with Tegra194 configuration
      ARM: dts: sti: fixup sound frame-inversion for stihxxx-b2120.dtsi
      ARM: dts: sti: Remove deprecated snps PHY properties for stih410-b2260
      arm64: defconfig: Enable DRM_SUN6I_DSI
      arm64: defconfig: Enable CONFIG_SUN8I_THERMAL
      ARM: sunxi: Enable CONFIG_SUN8I_THERMAL
      arm64: defconfig: Set bcm2835-dma as built-in
      ARM: configs: Cleanup old Kconfig options
      ARM: npcm: Bring back GPIOLIB support
      arm64: dts: fast models: Fix FVP PCI interrupt-map property
    torvalds committed Feb 15, 2020
  2. Merge tag 's390-5.6-3' of git://git.kernel.org/pub/scm/linux/kernel/g…

    …it/s390/linux
    
    Pull s390 updates from Vasily Gorbik:
    
     - Enable paes-s390 cipher selftests in testmgr (acked-by Herbert Xu).
    
     - Fix protected key length update in PKEY_SEC2PROTK ioctl and increase
       card/queue requests counter to 64-bit in crypto code.
    
     - Fix clang warning in get_tod_clock.
    
     - Fix ultravisor info length extensions handling.
    
     - Fix style of SPDX License Identifier in vfio-ccw.
    
     - Avoid unnecessary GFP_ATOMIC and simplify ACK tracking in qdio.
    
    * tag 's390-5.6-3' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
      crypto/testmgr: enable selftests for paes-s390 ciphers
      s390/time: Fix clk type in get_tod_clock
      s390/uv: Fix handling of length extensions
      s390/qdio: don't allocate *aob array with GFP_ATOMIC
      s390/qdio: simplify ACK tracking
      s390/zcrypt: fix card and queue total counter wrap
      s390/pkey: fix missing length of protected key on return
      vfio-ccw: Use the correct style for SPDX License Identifier
    torvalds committed Feb 15, 2020
  3. Merge tag 'hwmon-for-v5.6-rc2' of git://git.kernel.org/pub/scm/linux/…

    …kernel/git/groeck/linux-staging
    
    Pull hwmon fixes from Guenter Roeck:
     "Fix compatible string typos in the xdpe12284 driver, and a wrong bit
      value in the ltc2978 driver"
    
    * tag 'hwmon-for-v5.6-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
      hwmon: (pmbus/xdpe12284) fix typo in compatible strings
      hwmon: (pmbus/ltc2978) Fix PMBus polling of MFR_COMMON definitions.
    torvalds committed Feb 15, 2020
  4. Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm…

    …/linux/kernel/git/tip/tip
    
    Pull scheduler fixes from Ingo Molnar:
     "Misc fixes all over the place:
    
       - Fix NUMA over-balancing between lightly loaded nodes. This is
         fallout of the big load-balancer rewrite.
    
       - Fix the NOHZ remote loadavg update logic, which fixes anomalies
         like reported 150 loadavg on mostly idle CPUs.
    
       - Fix XFS performance/scalability
    
       - Fix throttled groups unbound task-execution bug
    
       - Fix PSI procfs boundary condition
    
       - Fix the cpu.uclamp.{min,max} cgroup configuration write checks
    
       - Fix DocBook annotations
    
       - Fix RCU annotations
    
       - Fix overly CPU-intensive housekeeper CPU logic loop on large CPU
         counts"
    
    * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      sched/fair: Fix kernel-doc warning in attach_entity_load_avg()
      sched/core: Annotate curr pointer in rq with __rcu
      sched/psi: Fix OOB write when writing 0 bytes to PSI files
      sched/fair: Allow a per-CPU kthread waking a task to stack on the same CPU, to fix XFS performance regression
      sched/fair: Prevent unlimited runtime on throttled group
      sched/nohz: Optimize get_nohz_timer_target()
      sched/uclamp: Reject negative values in cpu_uclamp_write()
      sched/fair: Allow a small load imbalance between low utilisation SD_NUMA domains
      timers/nohz: Update NOHZ load in remote tick
      sched/core: Don't skip remote tick for idle CPUs
    torvalds committed Feb 15, 2020
  5. Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/…

    …linux/kernel/git/tip/tip
    
    Pull perf fixes from Ingo Molnar:
     "Fixes and HW enablement patches:
    
       - Tooling fixes, most of which are tooling header synchronization
         with v5.6 changes
    
       - Fix kprobes fallout on ARM
    
       - Add Intel Elkhart Lake support and extend Tremont support, these
         are relatively simple and should only affect those models
    
       - Fix the AMD family 17h generic event table"
    
    * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (30 commits)
      perf llvm: Fix script used to obtain kernel make directives to work with new kbuild
      tools headers kvm: Sync linux/kvm.h with the kernel sources
      tools headers kvm: Sync kvm headers with the kernel sources
      tools arch x86: Sync asm/cpufeatures.h with the kernel sources
      tools headers x86: Sync disabled-features.h
      tools include UAPI: Sync sound/asound.h copy
      tools headers UAPI: Sync asm-generic/mman-common.h with the kernel
      perf tools: Add arm64 version of get_cpuid()
      tools headers UAPI: Sync drm/i915_drm.h with the kernel sources
      tools headers uapi: Sync linux/fscrypt.h with the kernel sources
      tools headers UAPI: Sync sched.h with the kernel
      perf trace: Resolve prctl's 'option' arg strings to numbers
      perf beauty prctl: Export the 'options' strarray
      tools headers UAPI: Sync prctl.h with the kernel sources
      tools headers UAPI: Sync copy of arm64's asm/unistd.h with the kernel sources
      perf maps: Move kmap::kmaps setup to maps__insert()
      perf maps: Fix map__clone() for struct kmap
      perf maps: Mark ksymbol DSOs with kernel type
      perf maps: Mark module DSOs with kernel type
      tools include UAPI: Sync x86's syscalls_64.tbl, generic unistd.h and fcntl.h to pick up openat2 and pidfd_getfd
      ...
    torvalds committed Feb 15, 2020
  6. bus: moxtet: fix potential stack buffer overflow

    The input_read function declares the size of the hex array relative to
    sizeof(buf), but buf is a pointer argument of the function. The hex
    array is meant to contain hexadecimal representation of the bin array.
    
    Link: https://lore.kernel.org/r/20200215142130.22743-1-marek.behun@nic.cz
    Fixes: 5bc7f99 ("bus: Add support for Moxtet bus")
    Signed-off-by: Marek Behún <marek.behun@nic.cz>
    Reported-by: sohu0106 <sohu0106@126.com>
    Signed-off-by: Olof Johansson <olof@lixom.net>
    elkablo authored and olofj committed Feb 15, 2020
  7. ext4: improve explanation of a mount failure caused by a misconfigure…

    …d kernel
    
    If CONFIG_QFMT_V2 is not enabled, but CONFIG_QUOTA is enabled, when a
    user tries to mount a file system with the quota or project quota
    enabled, the kernel will emit a very confusing messsage:
    
        EXT4-fs warning (device vdc): ext4_enable_quotas:5914: Failed to enable quota tracking (type=0, err=-3). Please run e2fsck to fix.
        EXT4-fs (vdc): mount failed
    
    We will now report an explanatory message indicating which kernel
    configuration options have to be enabled, to avoid customer/sysadmin
    confusion.
    
    Link: https://lore.kernel.org/r/20200215012738.565735-1-tytso@mit.edu
    Google-Bug-Id: 149093531
    Fixes: 7c319d3 ("ext4: make quota as first class supported feature")
    Signed-off-by: Theodore Ts'o <tytso@mit.edu>
    Cc: stable@kernel.org
    tytso committed Feb 15, 2020
  8. Merge tag 'perf-urgent-for-mingo-5.6-20200214' of git://git.kernel.or…

    …g/pub/scm/linux/kernel/git/acme/linux into perf/urgent
    
    Pull perf/urgent fixes from Arnaldo Carvalho de Melo:
    
    BPF:
    
      Arnaldo Carvalho de Melo:
    
      - Fix script used to obtain kernel make directives to work with new kbuild
        used for building BPF programs.
    
    maps:
    
      Jiri Olsa:
    
      - Fixup kmap->kmaps backpointer in kernel maps.
    
    arm64:
    
      John Garry:
    
      - Add arm64 version of get_cpuid() to get proper, arm64 specific output from
        'perf list' and other tools.
    
    perf top:
    
      Kim Phillips:
    
      - Update kernel idle symbols so that output in AMD systems is in line with
        other systems.
    
    perf stat:
    
      Kim Phillips:
    
      - Don't report a null stalled cycles per insn metric.
    
    tools headers:
    
      Arnaldo Carvalho de Melo:
    
      - Sync tools/ headers with the kernel sources to get things like syscall
        numbers and new arguments so that 'perf trace' can decode and use them in
        tracepoint filters, e.g. prctl's new PR_{G,S}ET_IO_FLUSHER options.
    
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    Signed-off-by: Ingo Molnar <mingo@kernel.org>
    Ingo Molnar
    Ingo Molnar committed Feb 15, 2020
  9. Input: cyapa - replace zero-length array with flexible-array member

    The current codebase makes use of the zero-length array language
    extension to the C90 standard, but the preferred mechanism to declare
    variable-length types such as these ones is a flexible array member[1][2],
    introduced in C99:
    
    struct foo {
            int stuff;
            struct boo array[];
    };
    
    By making use of the mechanism above, we will get a compiler warning
    in case the flexible array does not occur last in the structure, which
    will help us prevent some kind of undefined behavior bugs from being
    inadvertently introduced[3] to the codebase from now on.
    
    Also, notice that, dynamic memory allocations won't be affected by
    this change:
    
    "Flexible array members have incomplete type, and so the sizeof operator
    may not be applied. As a quirk of the original implementation of
    zero-length arrays, sizeof evaluates to zero."[1]
    
    This issue was found with the help of Coccinelle.
    
    [1] https://gcc.gnu.org/onlinedocs/gcc/Zero-Length.html
    [2] KSPP#21
    [3] commit 7649773 ("cxgb3/l2t: Fix undefined behaviour")
    
    Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com>
    Link: https://lore.kernel.org/r/20200214172132.GA28389@embeddedor
    Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
    GustavoARSilva authored and dtor committed Feb 15, 2020
  10. Input: tca6416-keypad - replace zero-length array with flexible-array…

    … member
    
    The current codebase makes use of the zero-length array language
    extension to the C90 standard, but the preferred mechanism to declare
    variable-length types such as these ones is a flexible array member[1][2],
    introduced in C99:
    
    struct foo {
            int stuff;
            struct boo array[];
    };
    
    By making use of the mechanism above, we will get a compiler warning
    in case the flexible array does not occur last in the structure, which
    will help us prevent some kind of undefined behavior bugs from being
    inadvertently introduced[3] to the codebase from now on.
    
    Also, notice that, dynamic memory allocations won't be affected by
    this change:
    
    "Flexible array members have incomplete type, and so the sizeof operator
    may not be applied. As a quirk of the original implementation of
    zero-length arrays, sizeof evaluates to zero."[1]
    
    This issue was found with the help of Coccinelle.
    
    [1] https://gcc.gnu.org/onlinedocs/gcc/Zero-Length.html
    [2] KSPP#21
    [3] commit 7649773 ("cxgb3/l2t: Fix undefined behaviour")
    
    Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com>
    Link: https://lore.kernel.org/r/20200214172022.GA27490@embeddedor
    Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
    GustavoARSilva authored and dtor committed Feb 15, 2020
  11. Input: gpio_keys_polled - replace zero-length array with flexible-arr…

    …ay member
    
    The current codebase makes use of the zero-length array language
    extension to the C90 standard, but the preferred mechanism to declare
    variable-length types such as these ones is a flexible array member[1][2],
    introduced in C99:
    
    struct foo {
            int stuff;
            struct boo array[];
    };
    
    By making use of the mechanism above, we will get a compiler warning
    in case the flexible array does not occur last in the structure, which
    will help us prevent some kind of undefined behavior bugs from being
    inadvertently introduced[3] to the codebase from now on.
    
    Also, notice that, dynamic memory allocations won't be affected by
    this change:
    
    "Flexible array members have incomplete type, and so the sizeof operator
    may not be applied. As a quirk of the original implementation of
    zero-length arrays, sizeof evaluates to zero."[1]
    
    This issue was found with the help of Coccinelle.
    
    [1] https://gcc.gnu.org/onlinedocs/gcc/Zero-Length.html
    [2] KSPP#21
    [3] commit 7649773 ("cxgb3/l2t: Fix undefined behaviour")
    
    Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com>
    Link: https://lore.kernel.org/r/20200214171907.GA26588@embeddedor
    Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
    GustavoARSilva authored and dtor committed Feb 15, 2020

Commits on Feb 14, 2020

  1. Merge tag 'nfs-for-5.6-2' of git://git.linux-nfs.org/projects/anna/li…

    …nux-nfs
    
    Pull NFS client bugfixes from Anna Schumaker:
     "The only stable fix this time is the DMA scatter-gather list bug fixed
      by Chuck.
    
      The rest fix up races and refcounting issues that have been found
      during testing.
    
      Stable fix:
       - fix DMA scatter-gather list mapping imbalance
    
      The rest:
       - fix directory verifier races
       - fix races between open and dentry revalidation
       - fix revalidation of dentries with delegations
       - fix "cachethis" setting for writes
       - fix delegation and delegation cred pinning"
    
    * tag 'nfs-for-5.6-2' of git://git.linux-nfs.org/projects/anna/linux-nfs:
      NFSv4: Ensure the delegation cred is pinned when we call delegreturn
      NFSv4: Ensure the delegation is pinned in nfs_do_return_delegation()
      NFSv4.1 make cachethis=no for writes
      xprtrdma: Fix DMA scatter-gather list mapping imbalance
      NFSv4: Fix revalidation of dentries with delegations
      NFSv4: Fix races between open and dentry revalidation
      NFS: Fix up directory verifier races
    torvalds committed Feb 14, 2020
  2. Merge tag 'ceph-for-5.6-rc2' of https://github.com/ceph/ceph-client

    Pull ceph fixes from Ilya Dryomov:
    
     - make O_DIRECT | O_APPEND combination work better
    
     - redo the server path canonicalization patch that went into -rc1
    
     - fix the 'noacl' mount option that got broken by the conversion to the
       new mount API in 5.5
    
    * tag 'ceph-for-5.6-rc2' of https://github.com/ceph/ceph-client:
      ceph: noacl mount option is effectively ignored
      ceph: canonicalize server path in place
      ceph: do not execute direct write in parallel if O_APPEND is specified
    torvalds committed Feb 14, 2020
  3. Merge tag 'io_uring-5.6-2020-02-14' of git://git.kernel.dk/linux-block

    Pull io_uring fixes from Jens Axboe:
     "Here's a set of fixes for io_uring:
    
       - Various fixes with cleanups from Pavel, fixing corner cases where
         we're not correctly dealing with iovec cleanup.
    
       - Clarify that statx/openat/openat2 don't accept fixed files
    
       - Buffered raw device write EOPTNOTSUPP fix
    
       - Ensure async workers grab current->fs
    
       - A few task exit fixes with pending requests that grab the file
         table
    
       - send/recvmsg async load fix
    
       - io-wq offline node setup fix
    
       - CQ overflow flush in poll"
    
    * tag 'io_uring-5.6-2020-02-14' of git://git.kernel.dk/linux-block: (21 commits)
      io_uring: prune request from overflow list on flush
      io-wq: don't call kXalloc_node() with non-online node
      io_uring: retain sockaddr_storage across send/recvmsg async punt
      io_uring: cancel pending async work if task exits
      io-wq: add io_wq_cancel_pid() to cancel based on a specific pid
      io-wq: make io_wqe_cancel_work() take a match handler
      io_uring: fix openat/statx's filename leak
      io_uring: fix double prep iovec leak
      io_uring: fix async close() with f_op->flush()
      io_uring: allow AT_FDCWD for non-file openat/openat2/statx
      io_uring: grab ->fs as part of async preparation
      io-wq: add support for inheriting ->fs
      io_uring: retry raw bdev writes if we hit -EOPNOTSUPP
      io_uring: add cleanup for openat()/statx()
      io_uring: fix iovec leaks
      io_uring: remove unused struct io_async_open
      io_uring: flush overflowed CQ events in the io_uring_poll()
      io_uring: statx/openat/openat2 don't support fixed files
      io_uring: fix deferred req iovec leak
      io_uring: fix 1-bit bitfields to be unsigned
      ...
    torvalds committed Feb 14, 2020
  4. Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net

    Pull networking fixes from David Miller:
    
     1) Fix interrupt name truncation in mv88e6xxx dsa driver, from Andrew
        Lunn.
    
     2) Process generic XDP even if SKB is cloned, from Toke Høiland-Jørgensen.
    
     3) Fix leak of kernel memory to userspace in smc, from Eric Dumazet.
    
     4) Add some missing netlink attribute validation to matchall and
        flower, from Davide Caratti.
    
     5) Send icmp responses properly when NAT has been applied to the frame
        before we get to the tunnel emitting the icmp, from Jason Donenfeld.
    
     6) Make sure there is enough SKB headroom when adding dsa tags for qca
        and ar9331. From Per Forlin.
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (62 commits)
      netdevice.h: fix all kernel-doc and Sphinx warnings
      net: dsa: tag_ar9331: Make sure there is headroom for tag
      net: dsa: tag_qca: Make sure there is headroom for tag
      net, ip6_tunnel: enhance tunnel locate with link check
      net/smc: no peer ID in CLC decline for SMCD
      net/smc: transfer fasync_list in case of fallback
      net: hns3: fix a copying IPv6 address error in hclge_fd_get_flow_tuples()
      net: hns3: fix VF bandwidth does not take effect in some case
      net: hns3: add management table after IMP reset
      mac80211: fix wrong 160/80+80 MHz setting
      cfg80211: add missing policy for NL80211_ATTR_STATUS_CODE
      xfrm: interface: use icmp_ndo_send helper
      wireguard: device: use icmp_ndo_send helper
      sunvnet: use icmp_ndo_send helper
      gtp: use icmp_ndo_send helper
      icmp: introduce helper for nat'd source address in network device context
      net/sched: flower: add missing validation of TCA_FLOWER_FLAGS
      net/sched: matchall: add missing validation of TCA_MATCHALL_FLAGS
      net/flow_dissector: remove unexist field description
      page_pool: refill page when alloc.count of pool is zero
      ...
    torvalds committed Feb 14, 2020
  5. Merge tag 'pm-5.6-rc2' of git://git.kernel.org/pub/scm/linux/kernel/g…

    …it/rafael/linux-pm
    
    Pull power management fixes from Rafael Wysocki:
     "Fix three issues related to the handling of wakeup events signaled
      through the ACPI SCI while suspended to idle (Rafael Wysocki) and
      unexport an internal cpufreq variable (Yangtao Li)"
    
    * tag 'pm-5.6-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
      ACPI: PM: s2idle: Prevent spurious SCIs from waking up the system
      ACPICA: Introduce acpi_any_gpe_status_set()
      ACPI: PM: s2idle: Avoid possible race related to the EC GPE
      ACPI: EC: Fix flushing of pending work
      cpufreq: Make cpufreq_global_kobject static
    torvalds committed Feb 14, 2020
  6. Merge tag 'sound-5.6-rc2' of git://git.kernel.org/pub/scm/linux/kerne…

    …l/git/tiwai/sound
    
    Pull sound fixes from Takashi Iwai:
     "The only common change is the regression fix of the previous PCM fix
      patch for managed buffers while the rest are usual suspects, USB-audio
      and HD-audio device-specific quirks.
    
      The change for UAC2 clock validation workaround became a bit big, but
      the changes are fairly straightforward"
    
    * tag 'sound-5.6-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
      ALSA: pcm: Fix double hw_free calls
      ALSA: usb-audio: Add clock validity quirk for Denon MC7000/MCX8000
      ALSA: hda/realtek - Fix silent output on MSI-GL73
      ALSA: hda/realtek - Add more codec supported Headset Button
      ALSA: usb-audio: Apply sample rate quirk for Audioengine D1
      ALSA: usb-audio: Fix UAC2/3 effect unit parsing
      ALSA: usb-audio: Apply 48kHz fixed rate playback for Jabra Evolve 65 headset
    torvalds committed Feb 14, 2020
  7. Merge tag 'drm-fixes-2020-02-14' of git://anongit.freedesktop.org/drm…

    …/drm
    
    Pull drm fixes from Dave Airlie:
     "The core has a build fix for edid code on certain compilers/arches/,
      one MST fix and one vgem fix. Regular amdgpu fixes, and a couple of
      small driver fixes.
    
      The i915 fixes are bit larger than normal for this stage, but they
      were having CI issues last week, and they hadn't sent any fixes last
      week due to this.
    
      core:
       - edid build fix
    
      mst:
       - fix NULL ptr deref
    
      vgem:
       - fix close after free
    
      msm:
       - better dma-api usage
    
      sun4i:
       - disable allow_fb_modifiers
    
      amdgpu:
       - Additional OD fixes for navi
       - Misc display fixes
       - VCN 2.5 DPG fix
       - Prevent build errors on PowerPC on some configs
       - GDS EDC fix
    
      i915:
       - dsi/acpi fixes
       - gvt locking and allocation fixes
       - gem/gt fixes
       - bios timing parameters fix"
    
    * tag 'drm-fixes-2020-02-14' of git://anongit.freedesktop.org/drm/drm: (50 commits)
      drm/i915: Mark the removal of the i915_request from the sched.link
      drm/i915/execlists: Reclaim the hanging virtual request
      drm/i915/execlists: Take a reference while capturing the guilty request
      drm/i915/execlists: Offline error capture
      drm/i915/gt: Allow temporary suspension of inflight requests
      drm/i915: Keep track of request among the scheduling lists
      drm/i915/gem: Tighten checks and acquiring the mmap object
      drm/i915: Fix preallocated barrier list append
      drm/i915/gt: Acquire ce->active before ce->pin_count/ce->pin_mutex
      drm/i915: Tighten atomicity of i915_active_acquire vs i915_active_release
      drm/i915: Stub out i915_gpu_coredump_put
      drm/amdgpu:/navi10: use the ODCAP enum to index the caps array
      drm/amdgpu: update smu_v11_0_pptable.h
      drm/amdgpu: correct comment to clear up the confusion
      drm/amd/display: DCN2.x Do not program DPPCLK if same value
      drm/amd/display: Don't map ATOM_ENABLE to ATOM_INIT
      drm/amdgpu/vcn2.5: fix warning
      drm/amdgpu: limit GDS clearing workaround in cold boot sequence
      drm/amdgpu: fix amdgpu pmu to use hwc->config instead of hwc->conf
      amdgpu: Prevent build errors regarding soft/hard-float FP ABI tags
      ...
    torvalds committed Feb 14, 2020
  8. IB/mlx5: Use div64_u64 for num_var_hw_entries calculation

    On i386:
    
    ERROR: "__udivdi3" [drivers/infiniband/hw/mlx5/mlx5_ib.ko] undefined!
    ERROR: "__divdi3" [drivers/infiniband/hw/mlx5/mlx5_ib.ko] undefined!
    
    Fixes: f164be8 ("IB/mlx5: Extend caps stage to handle VAR capabilities")
    Reported-by: Randy Dunlap <rdunlap@infradead.org>
    Acked-by: Randy Dunlap <rdunlap@infradead.org> # build-tested
    Reported-by: Alexander Lobakin <alobakin@dlink.ru>
    Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
    jgunthorpe committed Feb 14, 2020
  9. nvme: fix the parameter order for nvme_get_log in nvme_get_fw_slot_info

    nvme fw-activate operation will get bellow warning log,
    fix it by update the parameter order
    
    [  113.231513] nvme nvme0: Get FW SLOT INFO log error
    
    Fixes: 0e98719 ("nvme: simplify the API for getting log pages")
    Reported-by: Sujith Pandel <sujith_pandel@dell.com>
    Reviewed-by: David Milburn <dmilburn@redhat.com>
    Signed-off-by: Yi Zhang <yi.zhang@redhat.com>
    Signed-off-by: Keith Busch <kbusch@kernel.org>
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    yizhanglinux authored and axboe committed Feb 14, 2020
Older
You can’t perform that action at this time.