1. 11 Oct, 2021 7 commits
  2. 10 Oct, 2021 1 commit
  3. 08 Oct, 2021 2 commits
  4. 07 Oct, 2021 7 commits
  5. 05 Oct, 2021 6 commits
  6. 04 Oct, 2021 5 commits
  7. 30 Sep, 2021 1 commit
  8. 28 Sep, 2021 3 commits
    • Krzysztof Kozlowski's avatar
      memory: samsung: describe drivers in KConfig · 6b20a5d1
      Krzysztof Kozlowski authored
      Rephrase the Kconfig option and make it clear it applies only to Samsung
      SoC.
      Signed-off-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
      Link: https://lore.kernel.org/r/20210924133406.112174-1-krzysztof.kozlowski@canonical.com
      6b20a5d1
    • Andrew Gabbasov's avatar
      memory: renesas-rpc-if: Avoid unaligned bus access for HyperFlash · 1869023e
      Andrew Gabbasov authored
      HyperFlash devices in Renesas SoCs use 2-bytes addressing, according
      to HW manual paragraph 62.3.3 (which officially describes Serial Flash
      access, but seems to be applicable to HyperFlash too). And 1-byte bus
      read operations to 2-bytes unaligned addresses in external address space
      read mode work incorrectly (returns the other byte from the same word).
      
      Function memcpy_fromio(), used by the driver to read data from the bus,
      in ARM64 architecture (to which Renesas cores belong) uses 8-bytes
      bus accesses for appropriate aligned addresses, and 1-bytes accesses
      for other addresses. This results in incorrect data read from HyperFlash
      in unaligned cases.
      
      This issue can be reproduced using something like the following commands
      (where mtd1 is a parition on Hyperflash storage, defined properly
      in a device tree):
      
      [Correct fragment, read from Hyperflash]
      
          root@rcar-gen3:~# dd if=/dev/mtd1 of=/tmp/zz bs=32 count=1
          root@rcar-gen3:~# hexdump -C /tmp/zz
          00000000  f4 03 00 aa f5 03 01 aa  f6 03 02 aa f7 03 03 aa  |................|
          00000010  00 00 80 d2 40 20 18 d5  00 06 81 d2 a0 18 a6 f2  |....@ ..........|
          00000020
      
      [Incorrect read of the same fragment: see the difference at offsets 8-11]
      
          root@rcar-gen3:~# dd if=/dev/mtd1 of=/tmp/zz bs=12 count=1
          root@rcar-gen3:~# hexdump -C /tmp/zz
          00000000  f4 03 00 aa f5 03 01 aa  03 03 aa aa              |............|
          0000000c
      
      Fix this issue by creating a local replacement of the copying function,
      that performs only properly aligned bus accesses, and is used for reading
      from HyperFlash.
      
      Fixes: ca7d8b98 ("memory: add Renesas RPC-IF driver")
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarAndrew Gabbasov <andrew_gabbasov@mentor.com>
      Link: https://lore.kernel.org/r/20210922184830.29147-1-andrew_gabbasov@mentor.comSigned-off-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
      1869023e
    • Wolfram Sang's avatar
      memory: renesas-rpc-if: Correct QSPI data transfer in Manual mode · fff53a55
      Wolfram Sang authored
      This patch fixes 2 problems:
      [1] The output warning logs and data loss when performing
      mount/umount then remount the device with jffs2 format.
      [2] The access width of SMWDR[0:1]/SMRDR[0:1] register is wrong.
      
      This is the sample warning logs when performing mount/umount then
      remount the device with jffs2 format:
      jffs2: jffs2_scan_inode_node(): CRC failed on node at 0x031c51d4:
      Read 0x00034e00, calculated 0xadb272a7
      
      The reason for issue [1] is that the writing data seems to
      get messed up.
      Data is only completed when the number of bytes is divisible by 4.
      If you only have 3 bytes of data left to write, 1 garbage byte
      is inserted after the end of the write stream.
      If you only have 2 bytes of data left to write, 2 bytes of '00'
      are added into the write stream.
      If you only have 1 byte of data left to write, 2 bytes of '00'
      are added into the write stream. 1 garbage byte is inserted after
      the end of the write stream.
      
      To solve problem [1], data must be written continuously in serial
      and the write stream ends when data is out.
      
      Following HW manual 62.2.15, access to SMWDR0 register should be
      in the same size as the transfer size specified in the SPIDE[3:0]
      bits in the manual mode enable setting register (SMENR).
      Be sure to access from address 0.
      
      So, in 16-bit transfer (SPIDE[3:0]=b'1100), SMWDR0 should be
      accessed by 16-bit width.
      Similar to SMWDR1, SMDDR0/1 registers.
      In current code, SMWDR0 register is accessed by regmap_write()
      that only set up to do 32-bit width.
      
      To solve problem [2], data must be written 16-bit or 8-bit when
      transferring 1-byte or 2-byte.
      
      Fixes: ca7d8b98 ("memory: add Renesas RPC-IF driver")
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarDuc Nguyen <duc.nguyen.ub@renesas.com>
      [wsa: refactored to use regmap only via reg_read/reg_write]
      Signed-off-by: default avatarWolfram Sang <wsa+renesas@sang-engineering.com>
      Tested-by: default avatarLad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
      Link: https://lore.kernel.org/r/20210922091007.5516-1-wsa+renesas@sang-engineering.comSigned-off-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
      fff53a55
  9. 26 Sep, 2021 7 commits
    • Linus Torvalds's avatar
      Linux 5.15-rc3 · 5816b3e6
      Linus Torvalds authored
      5816b3e6
    • Linus Torvalds's avatar
      Merge tag '5.15-rc2-ksmbd-fixes' of git://git.samba.org/ksmbd · 5e5d7597
      Linus Torvalds authored
      Pull ksmbd fixes from Steve French:
       "Five fixes for the ksmbd kernel server, including three security
        fixes:
      
         - remove follow symlinks support
      
         - use LOOKUP_BENEATH to prevent out of share access
      
         - SMB3 compounding security fix
      
         - fix for returning the default streams correctly, fixing a bug when
           writing ppt or doc files from some clients
      
         - logging more clearly that ksmbd is experimental (at module load
           time)"
      
      * tag '5.15-rc2-ksmbd-fixes' of git://git.samba.org/ksmbd:
        ksmbd: use LOOKUP_BENEATH to prevent the out of share access
        ksmbd: remove follow symlinks support
        ksmbd: check protocol id in ksmbd_verify_smb_message()
        ksmbd: add default data stream name in FILE_STREAM_INFORMATION
        ksmbd: log that server is experimental at module load
      5e5d7597
    • Linus Torvalds's avatar
      Merge tag 'edac_urgent_for_v5.15_rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras · 996148ee
      Linus Torvalds authored
      Pull EDAC fixes from Borislav Petkov:
       "Fix two EDAC drivers using the wrong value type for the DIMM mode"
      
      * tag 'edac_urgent_for_v5.15_rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras:
        EDAC/dmc520: Assign the proper type to dimm->edac_mode
        EDAC/synopsys: Fix wrong value type assignment for edac_mode
      996148ee
    • Linus Torvalds's avatar
      Merge tag 'thermal-v5.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/thermal/linux · 299d6e47
      Linus Torvalds authored
      Pull thermal fixes from Daniel Lezcano:
      
       - Fix thermal shutdown after a suspend/resume due to a wrong TCC value
         restored on Intel platform (Antoine Tenart)
      
       - Fix potential buffer overflow when building the list of policies. The
         buffer size is not updated after writing to it (Dan Carpenter)
      
       - Fix wrong check against IS_ERR instead of NULL (Ansuel Smith)
      
      * tag 'thermal-v5.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/thermal/linux:
        thermal/drivers/tsens: Fix wrong check for tzd in irq handlers
        thermal/core: Potential buffer overflow in thermal_build_list_of_policies()
        thermal/drivers/int340x: Do not set a wrong tcc offset on resume
      299d6e47
    • Linus Torvalds's avatar
      Merge tag 'x86-urgent-2021-09-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 5bb7b210
      Linus Torvalds authored
      Pull x86 fixes from Thomas Gleixner:
       "A set of fixes for X86:
      
         - Prevent sending the wrong signal when protection keys are enabled
           and the kernel handles a fault in the vsyscall emulation.
      
         - Invoke early_reserve_memory() before invoking e820_memory_setup()
           which is required to make the Xen dom0 e820 hooks work correctly.
      
         - Use the correct data type for the SETZ operand in the EMQCMDS
           instruction wrapper.
      
         - Prevent undefined behaviour to the potential unaligned accesss in
           the instruction decoder library"
      
      * tag 'x86-urgent-2021-09-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/insn, tools/x86: Fix undefined behavior due to potential unaligned accesses
        x86/asm: Fix SETZ size enqcmds() build failure
        x86/setup: Call early_reserve_memory() earlier
        x86/fault: Fix wrong signal when vsyscall fails with pkey
      5bb7b210
    • Linus Torvalds's avatar
      Merge tag 'timers-urgent-2021-09-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 3a398acc
      Linus Torvalds authored
      Pull timer fix from Thomas Gleixner:
       "A single fix for the recently introduced regression in posix CPU
        timers which failed to stop the timer when requested. That caused
        unexpected signals to be sent to the process/thread causing
        malfunction"
      
      * tag 'timers-urgent-2021-09-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        posix-cpu-timers: Prevent spuriously armed 0-value itimer
      3a398acc
    • Linus Torvalds's avatar
      Merge tag 'irq-urgent-2021-09-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · dc0f97c2
      Linus Torvalds authored
      Pull irq fixes from Thomas Gleixner:
       "A set of fixes for interrupt chip drivers:
      
         - Work around a bad GIC integration on a Renesas platform which can't
           handle byte-sized MMIO access
      
         - Plug a potential memory leak in the GICv4 driver
      
         - Fix a regression in the Armada 370-XP IPI code which was caused by
           issuing EOI instack of ACK.
      
         - A couple of small fixes here and there"
      
      * tag 'irq-urgent-2021-09-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        irqchip/gic: Work around broken Renesas integration
        irqchip/renesas-rza1: Use semicolons instead of commas
        irqchip/gic-v3-its: Fix potential VPE leak on error
        irqchip/goldfish-pic: Select GENERIC_IRQ_CHIP to fix build
        irqchip/mbigen: Repair non-kernel-doc notation
        irqdomain: Change the type of 'size' in __irq_domain_add() to be consistent
        irqchip/armada-370-xp: Fix ack/eoi breakage
        Documentation: Fix irq-domain.rst build warning
      dc0f97c2
  10. 25 Sep, 2021 1 commit
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew) · a3b397b4
      Linus Torvalds authored
      Merge misc fixes from Andrew Morton:
       "16 patches.
      
        Subsystems affected by this patch series: xtensa, sh, ocfs2, scripts,
        lib, and mm (memory-failure, kasan, damon, shmem, tools, pagecache,
        debug, and pagemap)"
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
        mm: fix uninitialized use in overcommit_policy_handler
        mm/memory_failure: fix the missing pte_unmap() call
        kasan: always respect CONFIG_KASAN_STACK
        sh: pgtable-3level: fix cast to pointer from integer of different size
        mm/debug: sync up latest migrate_reason to migrate_reason_names
        mm/debug: sync up MR_CONTIG_RANGE and MR_LONGTERM_PIN
        mm: fs: invalidate bh_lrus for only cold path
        lib/zlib_inflate/inffast: check config in C to avoid unused function warning
        tools/vm/page-types: remove dependency on opt_file for idle page tracking
        scripts/sorttable: riscv: fix undeclared identifier 'EM_RISCV' error
        ocfs2: drop acl cache for directories too
        mm/shmem.c: fix judgment error in shmem_is_huge()
        xtensa: increase size of gcc stack frame check
        mm/damon: don't use strnlen() with known-bogus source length
        kasan: fix Kconfig check of CC_HAS_WORKING_NOSANITIZE_ADDRESS
        mm, hwpoison: add is_free_buddy_page() in HWPoisonHandlable()
      a3b397b4