1. 22 Nov, 2018 2 commits
    • Linus Torvalds's avatar
      Merge tag 'mtd/fixes-for-4.20-rc4' of git://git.infradead.org/linux-mtd · ef4d6f2c
      Linus Torvalds authored
      Pull mtd fixes from Boris Brezillon:
       "SPI NOR fixes:
      
         - Various fixes related to the SFDP parsing code merged in 4.20
      
         - Fix for a page fault in the cadence-qspi
      
        NAND fixes:
      
         - Fix a macro name conflict between the QCOM NAND controller driver
           and the RISC-V asm headers
      
         - Fix of-node handling in the atmel driver"
      
      * tag 'mtd/fixes-for-4.20-rc4' of git://git.infradead.org/linux-mtd:
        mtd: spi-nor: fix selection of uniform erase type in flexible conf
        mtd: spi-nor: Fix Cadence QSPI page fault kernel panic
        mtd: rawnand: qcom: Namespace prefix some commands
        mtd: rawnand: atmel: fix OF child-node lookup
        mtd: spi_nor: pass DMA-able buffer to spi_nor_read_raw()
        mtd: spi-nor: don't overwrite errno in spi_nor_get_map_in_use()
        mtd: spi-nor: fix iteration over smpt array
        mtd: spi-nor: don't drop sfdp data if optional parsers fail
      ef4d6f2c
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · b84b6345
      Linus Torvalds authored
      Pull SCSI fixes from James Bottomley:
       "Two small fixes.
      
        The qla2xxx is a regression from 4.18 and the ufs one is a device
        enablement fix"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        scsi: ufs: Fix hynix ufs bug with quirk on hi36xx SoC
        scsi: qla2xxx: Timeouts occur on surprise removal of QLogic adapter
      b84b6345
  2. 21 Nov, 2018 1 commit
    • Linus Torvalds's avatar
      Merge tag 'riscv-for-linus-4.20-rc4' of... · 92b41928
      Linus Torvalds authored
      Merge tag 'riscv-for-linus-4.20-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/palmer/riscv-linux
      
      Pull RISC-V fixes from Palmer Dabbelt:
       "This week is a bit bigger than I expected. That's my fault, as I
        missed a few patches while I was at Plumbers last week. We have:
      
         - A fix to a quite embarassing issue where raw_copy_to_user() was
           implemented with asm_copy_from_user() (and vice versa).
      
         - Improvements to our makefile to allow flat binaries to be
           generated.
      
         - A build fix that predeclares "struct module" at the top of
           <asm/module.h>, which triggers warnings later in that header.
      
         - The addition of our own <uapi/asm/unistd> header, which is
           necessary to align our stat ABI on 32-bit systems.
      
         - A fix to avoid printing a warning when the S or U bits are set in
           print_isa().
      
        I already have one patch in the queue for next week"
      
      * tag 'riscv-for-linus-4.20-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/palmer/riscv-linux:
        RISC-V: recognize S/U mode bits in print_isa
        riscv: add asm/unistd.h UAPI header
        riscv: fix warning in arch/riscv/include/asm/module.h
        RISC-V: Build flat and compressed kernel images
        RISC-V: Fix raw_copy_{to,from}_user()
      92b41928
  3. 20 Nov, 2018 8 commits
    • Linus Torvalds's avatar
      Merge tag 'mips_fixes_4.20_3' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux · c8ce94b8
      Linus Torvalds authored
      Pull MIPS fixes from Paul Burton:
       "A few MIPS fixes for 4.20:
      
         - Re-enable the Cavium Octeon USB driver in its defconfig after it
           was accidentally removed back in 4.14.
      
         - Have early memblock allocations be performed bottom-up to more
           closely match the behaviour we used to have with bootmem, which
           seems a safer choice since we've seen fallout from the change made
           in the 4.20 merge window.
      
         - Simplify max_low_pfn calculation in the NUMA code for the Loongson3
           and SGI IP27 platforms to both clean up the code & ensure
           max_low_pfn has been set appropriately before it is used"
      
      * tag 'mips_fixes_4.20_3' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux:
        MIPS: Loongson3,SGI-IP27: Simplify max_low_pfn calculation
        MIPS: Let early memblock_alloc*() allocate memories bottom-up
        MIPS: OCTEON: cavium_octeon_defconfig: re-enable OCTEON USB driver
      c8ce94b8
    • Linus Torvalds's avatar
      Merge tag 'media/v4.20-3' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · 06e68fed
      Linus Torvalds authored
      Pull media fixes from Mauro Carvalho Chehab:
      
       - add a missing include at v4l2-controls uAPI header
      
       - minor kAPI update for the request API
      
       - some fixes at CEC core
      
       - use a lower minimum height for the virtual codec driver
      
       - cleanup a gcc warning due to the lack of a fall though markup
      
       - tc358743: Remove unnecessary self assignment
      
       - fix the V4L event subscription logic
      
       - docs: Document metadata format in struct v4l2_format
      
       - omap3isp and ipu3-cio2: fix unbinding logic
      
      * tag 'media/v4.20-3' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
        media: ipu3-cio2: Use cio2_queues_exit
        media: ipu3-cio2: Unregister device nodes first, then release resources
        media: omap3isp: Unregister media device as first
        media: docs: Document metadata format in struct v4l2_format
        media: v4l: event: Add subscription to list before calling "add" operation
        media: dm365_ipipeif: better annotate a fall though
        media: Rename vb2_m2m_request_queue -> v4l2_m2m_request_queue
        media: cec: increase debug level for 'queue full'
        media: cec: check for non-OK/NACK conditions while claiming a LA
        media: vicodec: lower minimum height to 360
        media: tc358743: Remove unnecessary self assignment
        media: v4l: fix uapi mpeg slice params definition
        v4l2-controls: add a missing include
      06e68fed
    • Tudor.Ambarus@microchip.com's avatar
      mtd: spi-nor: fix selection of uniform erase type in flexible conf · e8828ec1
      Tudor.Ambarus@microchip.com authored
      There are uniform, non-uniform and flexible erase flash configurations.
      
      The non-uniform erase types, are the erase types that can _not_ erase
      the entire flash by their own.
      
      As the code was, in case flashes had flexible erase capabilities
      (support both uniform and non-uniform erase types in the same flash
      configuration) and supported multiple uniform erase type sizes, the
      code did not sort the uniform erase types, and could select a wrong
      erase type size.
      
      Sort the uniform erase mask in case of flexible erase flash
      configurations, in order to select the best uniform erase type size.
      
      Uniform, non-uniform, and flexible configurations with just a valid
      uniform erase type, are not affected by this change.
      
      Uniform erase tested on mx25l3273fm2i-08g and sst26vf064B-104i/sn.
      Non uniform erase tested on sst26vf064B-104i/sn.
      
      Fixes: 5390a8df ("mtd: spi-nor: add support to non-uniform SFDP SPI NOR flash memories")
      Signed-off-by: default avatarTudor Ambarus <tudor.ambarus@microchip.com>
      Signed-off-by: default avatarBoris Brezillon <boris.brezillon@bootlin.com>
      e8828ec1
    • Patrick Stählin's avatar
      RISC-V: recognize S/U mode bits in print_isa · 5d8f81ba
      Patrick Stählin authored
      Removes the warning about an unsupported ISA when reading /proc/cpuinfo
      on QEMU. The "S" extension is not being returned as it is not accessible
      from userspace.
      Signed-off-by: default avatarPatrick Stählin <me@packi.ch>
      Signed-off-by: default avatarPalmer Dabbelt <palmer@sifive.com>
      5d8f81ba
    • David Abdurachmanov's avatar
      riscv: add asm/unistd.h UAPI header · 27f8899d
      David Abdurachmanov authored
      Marcin Juszkiewicz reported issues while generating syscall table for riscv
      using 4.20-rc1. The patch refactors our unistd.h files to match some other
      architectures.
      
      - Add asm/unistd.h UAPI header, which has __ARCH_WANT_NEW_STAT only for 64-bit
      - Remove asm/syscalls.h UAPI header and merge to asm/unistd.h
      - Adjust kernel asm/unistd.h
      
      So now asm/unistd.h UAPI header should show all syscalls for riscv.
      
      Before this, Makefile simply put `#include <asm-generic/unistd.h>` into
      generated asm/unistd.h UAPI header thus user didn't see:
      
      - __NR_riscv_flush_icache
      - __NR_newfstatat
      - __NR_fstat
      
      which are supported by riscv kernel.
      Signed-off-by: default avatarDavid Abdurachmanov <david.abdurachmanov@gmail.com>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
      Cc: Guenter Roeck <linux@roeck-us.net>
      Fixes: 67314ec7 ("RISC-V: Request newstat syscalls")
      Signed-off-by: default avatarDavid Abdurachmanov <david.abdurachmanov@gmail.com>
      Acked-by: default avatarOlof Johansson <olof@lixom.net>
      Signed-off-by: default avatarPalmer Dabbelt <palmer@sifive.com>
      27f8899d
    • David Abdurachmanov's avatar
      riscv: fix warning in arch/riscv/include/asm/module.h · 0138ebb9
      David Abdurachmanov authored
      Fixes warning: 'struct module' declared inside parameter list will not be
      visible outside of this definition or declaration
      Signed-off-by: default avatarDavid Abdurachmanov <david.abdurachmanov@gmail.com>
      Acked-by: default avatarOlof Johansson <olof@lixom.net>
      Signed-off-by: default avatarPalmer Dabbelt <palmer@sifive.com>
      0138ebb9
    • Anup Patel's avatar
      RISC-V: Build flat and compressed kernel images · c0fbcd99
      Anup Patel authored
      This patch extends Linux RISC-V build system to build and install:
      Image - Flat uncompressed kernel image
      Image.gz - Flat and GZip compressed kernel image
      
      Quiet a few bootloaders (such as Uboot, UEFI, etc) are capable of
      booting flat and compressed kernel images. In case of Uboot, booting
      Image or Image.gz is achieved using bootm command.
      
      The flat and uncompressed kernel image (i.e. Image) is very useful
      in pre-silicon developent and testing because we can create back-door
      HEX files for RAM on FPGAs from Image.
      Signed-off-by: default avatarAnup Patel <anup@brainfault.org>
      Signed-off-by: default avatarPalmer Dabbelt <palmer@sifive.com>
      c0fbcd99
    • Olof Johansson's avatar
      RISC-V: Fix raw_copy_{to,from}_user() · 21f70d4a
      Olof Johansson authored
      Sparse highlighted it, and appears to be a pure bug (from vs to).
      
      ./arch/riscv/include/asm/uaccess.h:403:35: warning: incorrect type in argument 1 (different address spaces)
      ./arch/riscv/include/asm/uaccess.h:403:39: warning: incorrect type in argument 2 (different address spaces)
      ./arch/riscv/include/asm/uaccess.h:409:37: warning: incorrect type in argument 1 (different address spaces)
      ./arch/riscv/include/asm/uaccess.h:409:41: warning: incorrect type in argument 2 (different address spaces)
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarPalmer Dabbelt <palmer@sifive.com>
      21f70d4a
  4. 19 Nov, 2018 4 commits
    • Thor Thayer's avatar
      mtd: spi-nor: Fix Cadence QSPI page fault kernel panic · a6a66f80
      Thor Thayer authored
      The current Cadence QSPI driver caused a kernel panic sporadically
      when writing to QSPI. The problem was caused by writing more bytes
      than needed because the QSPI operated on 4 bytes at a time.
      <snip>
      [   11.202044] Unable to handle kernel paging request at virtual address bffd3000
      [   11.209254] pgd = e463054d
      [   11.211948] [bffd3000] *pgd=2fffb811, *pte=00000000, *ppte=00000000
      [   11.218202] Internal error: Oops: 7 [#1] SMP ARM
      [   11.222797] Modules linked in:
      [   11.225844] CPU: 1 PID: 1317 Comm: systemd-hwdb Not tainted 4.17.7-d0c45cd44a8f
      [   11.235796] Hardware name: Altera SOCFPGA Arria10
      [   11.240487] PC is at __raw_writesl+0x70/0xd4
      [   11.244741] LR is at cqspi_write+0x1a0/0x2cc
      </snip>
      On a page boundary limit the number of bytes copied from the tx buffer
      to remain within the page.
      
      This patch uses a temporary buffer to hold the 4 bytes to write and then
      copies only the bytes required from the tx buffer.
      Reported-by: default avatarAdrian Amborzewicz <adrian.ambrozewicz@intel.com>
      Signed-off-by: default avatarThor Thayer <thor.thayer@linux.intel.com>
      Signed-off-by: default avatarBoris Brezillon <boris.brezillon@bootlin.com>
      a6a66f80
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · f2ce1065
      Linus Torvalds authored
      Pull networking fixes from David Miller:
      
       1) Fix some potentially uninitialized variables and use-after-free in
          kvaser_usb can drier, from Jimmy Assarsson.
      
       2) Fix leaks in qed driver, from Denis Bolotin.
      
       3) Socket leak in l2tp, from Xin Long.
      
       4) RSS context allocation fix in bnxt_en from Michael Chan.
      
       5) Fix cxgb4 build errors, from Ganesh Goudar.
      
       6) Route leaks in ipv6 when removing exceptions, from Xin Long.
      
       7) Memory leak in IDR allocation handling of act_pedit, from Davide
          Caratti.
      
       8) Use-after-free of bridge vlan stats, from Nikolay Aleksandrov.
      
       9) When MTU is locked, do not force DF bit on ipv4 tunnels. From
          Sabrina Dubroca.
      
      10) When NAPI cached skb is reused, we must set it to the proper initial
          state which includes skb->pkt_type. From Eric Dumazet.
      
      11) Lockdep and non-linear SKB handling fix in tipc from Jon Maloy.
      
      12) Set RX queue properly in various tuntap receive paths, from Matthew
          Cover.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (61 commits)
        tuntap: fix multiqueue rx
        ipv6: Fix PMTU updates for UDP/raw sockets in presence of VRF
        tipc: don't assume linear buffer when reading ancillary data
        tipc: fix lockdep warning when reinitilaizing sockets
        net-gro: reset skb->pkt_type in napi_reuse_skb()
        tc-testing: tdc.py: Guard against lack of returncode in executed command
        tc-testing: tdc.py: ignore errors when decoding stdout/stderr
        ip_tunnel: don't force DF when MTU is locked
        MAINTAINERS: Add entry for CAKE qdisc
        net: bridge: fix vlan stats use-after-free on destruction
        socket: do a generic_file_splice_read when proto_ops has no splice_read
        net: phy: mdio-gpio: Fix working over slow can_sleep GPIOs
        Revert "net: phy: mdio-gpio: Fix working over slow can_sleep GPIOs"
        net: phy: mdio-gpio: Fix working over slow can_sleep GPIOs
        net/sched: act_pedit: fix memory leak when IDR allocation fails
        net: lantiq: Fix returned value in case of error in 'xrx200_probe()'
        ipv6: fix a dst leak when removing its exception
        net: mvneta: Don't advertise 2.5G modes
        drivers/net/ethernet/qlogic/qed/qed_rdma.h: fix typo
        net/mlx4: Fix UBSAN warning of signed integer overflow
        ...
      f2ce1065
    • Matthew Cover's avatar
      tuntap: fix multiqueue rx · 8ebebcba
      Matthew Cover authored
      When writing packets to a descriptor associated with a combined queue, the
      packets should end up on that queue.
      
      Before this change all packets written to any descriptor associated with a
      tap interface end up on rx-0, even when the descriptor is associated with a
      different queue.
      
      The rx traffic can be generated by either of the following.
        1. a simple tap program which spins up multiple queues and writes packets
           to each of the file descriptors
        2. tx from a qemu vm with a tap multiqueue netdev
      
      The queue for rx traffic can be observed by either of the following (done
      on the hypervisor in the qemu case).
        1. a simple netmap program which opens and reads from per-queue
           descriptors
        2. configuring RPS and doing per-cpu captures with rxtxcpu
      
      Alternatively, if you printk() the return value of skb_get_rx_queue() just
      before each instance of netif_receive_skb() in tun.c, you will get 65535
      for every skb.
      
      Calling skb_record_rx_queue() to set the rx queue to the queue_index fixes
      the association between descriptor and rx queue.
      Signed-off-by: default avatarMatthew Cover <matthew.cover@stackpath.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      8ebebcba
    • David Ahern's avatar
      ipv6: Fix PMTU updates for UDP/raw sockets in presence of VRF · 7ddacfa5
      David Ahern authored
      Preethi reported that PMTU discovery for UDP/raw applications is not
      working in the presence of VRF when the socket is not bound to a device.
      The problem is that ip6_sk_update_pmtu does not consider the L3 domain
      of the skb device if the socket is not bound. Update the function to
      set oif to the L3 master device if relevant.
      
      Fixes: ca254490 ("net: Add VRF support to IPv6 stack")
      Reported-by: default avatarPreethi Ramachandra <preethir@juniper.net>
      Signed-off-by: default avatarDavid Ahern <dsahern@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      7ddacfa5
  5. 18 Nov, 2018 25 commits