1. 05 Sep, 2021 7 commits
    • Linus Torvalds's avatar
      Merge tag 'trace-v5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · 58ca2415
      Linus Torvalds authored
      Pull tracing updates from Steven Rostedt:
      
       - simplify the Kconfig use of FTRACE and TRACE_IRQFLAGS_SUPPORT
      
       - bootconfig can now start histograms
      
       - bootconfig supports group/all enabling
      
       - histograms now can put values in linear size buckets
      
       - execnames can be passed to synthetic events
      
       - introduce "event probes" that attach to other events and can retrieve
         data from pointers of fields, or record fields as different types (a
         pointer to a string as a string instead of just a hex number)
      
       - various fixes and clean ups
      
      * tag 'trace-v5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (35 commits)
        tracing/doc: Fix table format in histogram code
        selftests/ftrace: Add selftest for testing duplicate eprobes and kprobes
        selftests/ftrace: Add selftest for testing eprobe events on synthetic events
        selftests/ftrace: Add test case to test adding and removing of event probe
        selftests/ftrace: Fix requirement check of README file
        selftests/ftrace: Add clear_dynamic_events() to test cases
        tracing: Add a probe that attaches to trace events
        tracing/probes: Reject events which have the same name of existing one
        tracing/probes: Have process_fetch_insn() take a void * instead of pt_regs
        tracing/probe: Change traceprobe_set_print_fmt() to take a type
        tracing/probes: Use struct_size() instead of defining custom macros
        tracing/probes: Allow for dot delimiter as well as slash for system names
        tracing/probe: Have traceprobe_parse_probe_arg() take a const arg
        tracing: Have dynamic events have a ref counter
        tracing: Add DYNAMIC flag for dynamic events
        tracing: Replace deprecated CPU-hotplug functions.
        MAINTAINERS: Add an entry for os noise/latency
        tracepoint: Fix kerneldoc comments
        bootconfig/tracing/ktest: Update ktest example for boot-time tracing
        tools/bootconfig: Use per-group/all enable option in ftrace2bconf script
        ...
      58ca2415
    • Linus Torvalds's avatar
      Merge tag 'arc-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc · e07af262
      Linus Torvalds authored
      Pull ARC updates from Vineet Gupta:
       "Finally a big pile of changes for ARC (atomics/mm). These are from our
        internal arc64 tree, preparing mainline for eventual arc64 support.
        I'm spreading them out to avoid tsunami of patches in one release.
      
         - MM rework:
             - Implement up to 4 paging levels
             - Enable STRICT_MM_TYPECHECK
             - switch pgtable_t back to 'struct page *'
      
         - Atomics rework / implement relaxed accessors
      
         - Retire legacy MMUv1,v2; ARC750 cores
      
         - A few other build errors, typos"
      
      * tag 'arc-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc: (33 commits)
        ARC: mm: vmalloc sync from kernel to user table to update PMD ...
        ARC: mm: support 4 levels of page tables
        ARC: mm: support 3 levels of page tables
        ARC: mm: switch to asm-generic/pgalloc.h
        ARC: mm: switch pgtable_t back to struct page *
        ARC: mm: hack to allow 2 level build with 4 level code
        ARC: mm: disintegrate pgtable.h into levels and flags
        ARC: mm: disintegrate mmu.h (arcv2 bits out)
        ARC: mm: move MMU specific bits out of entry code ...
        ARC: mm: move MMU specific bits out of ASID allocator
        ARC: mm: non-functional code movement/cleanup
        ARC: mm: pmd_populate* to use the canonical set_pmd (and drop pmd_set)
        ARC: ioremap: use more commonly used PAGE_KERNEL based uncached flag
        ARC: mm: Enable STRICT_MM_TYPECHECKS
        ARC: mm: Fixes to allow STRICT_MM_TYPECHECKS
        ARC: mm: move mmu/cache externs out to setup.h
        ARC: mm: remove tlb paranoid code
        ARC: mm: use SCRATCH_DATA0 register for caching pgdir in ARCv2 only
        ARC: retire MMUv1 and MMUv2 support
        ARC: retire ARC750 support
        ...
      e07af262
    • Linus Torvalds's avatar
      Merge tag 'riscv-for-linus-5.15-mw0' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux · 063df71a
      Linus Torvalds authored
      Pull RISC-V updates from Palmer Dabbelt:
      
       - support PC-relative instructions (auipc and branches) in kprobes
      
       - support for forced IRQ threading
      
       - support for the hlt/nohlt kernel command line options, via the
         generic idle loop
      
       - show the edge/level triggered behavior of interrupts
         in /proc/interrupts
      
       - a handful of cleanups to our address mapping mechanisms
      
       - support for allocating gigantic hugepages via CMA
      
       - support for the undefined behavior sanitizer (UBSAN)
      
       - a handful of cleanups to the VDSO that allow the kernel to build with
         LLD.
      
       - support for hugepage migration
      
      * tag 'riscv-for-linus-5.15-mw0' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux: (21 commits)
        riscv: add support for hugepage migration
        RISC-V: Fix VDSO build for !MMU
        riscv: use strscpy to replace strlcpy
        riscv: explicitly use symbol offsets for VDSO
        riscv: Enable Undefined Behavior Sanitizer UBSAN
        riscv: Keep the riscv Kconfig selects sorted
        riscv: Support allocating gigantic hugepages using CMA
        riscv: fix the global name pfn_base confliction error
        riscv: Move early fdt mapping creation in its own function
        riscv: Simplify BUILTIN_DTB device tree mapping handling
        riscv: Use __maybe_unused instead of #ifdefs around variable declarations
        riscv: Get rid of map_size parameter to create_kernel_page_table
        riscv: Introduce va_kernel_pa_offset for 32-bit kernel
        riscv: Optimize kernel virtual address conversion macro
        dt-bindings: riscv: add starfive jh7100 bindings
        riscv: Enable GENERIC_IRQ_SHOW_LEVEL
        riscv: Enable idle generic idle loop
        riscv: Allow forced irq threading
        riscv: Implement thread_struct whitelist for hardened usercopy
        riscv: kprobes: implement the branch instructions
        ...
      063df71a
    • Linus Torvalds's avatar
      Enable '-Werror' by default for all kernel builds · 3fe617cc
      Linus Torvalds authored
      ... but make it a config option so that broken environments can disable
      it when required.
      
      We really should always have a clean build, and will disable specific
      over-eager warnings as required, if we can't fix them.  But while I
      fairly religiously enforce that in my own tree, it doesn't get enforced
      by various build robots that don't necessarily report warnings.
      
      So this just makes '-Werror' a default compiler flag, but allows people
      to disable it for their configuration if they have some particular
      issues.
      
      Occasionally, new compiler versions end up enabling new warnings, and it
      can take a while before we have them fixed (or the warnings disabled if
      that is what it takes), so the config option allows for that situation.
      
      Hopefully this will mean that I get fewer pull requests that have new
      warnings that were not noticed by various automation we have in place.
      
      Knock wood.
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      3fe617cc
    • Linus Torvalds's avatar
      Merge tag 'usb-5.15-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · fd47ff55
      Linus Torvalds authored
      Pull more USB updates from Greg KH:
       "Here are some straggler USB-serial changes for 5.15-rc1.
      
        These were not included in the first pull request as they came in
        "late" from Johan and I had missed them in my pull request earlier
        this week.
      
        Nothing big in here, just some USB to serial driver updates and fixes.
        All of these were in linux-next before I pulled them into my tree, and
        have been in linux-next all this week from my tree with no reported
        problems"
      
      * tag 'usb-5.15-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
        USB: serial: pl2303: fix GL type detection
        USB: serial: replace symbolic permissions by octal permissions
        USB: serial: cp210x: determine fw version for CP2105 and CP2108
        USB: serial: cp210x: clean up type detection
        USB: serial: cp210x: clean up set-chars request
        USB: serial: cp210x: clean up control-request timeout
        USB: serial: cp210x: fix flow-control error handling
        USB: serial: cp210x: fix control-characters error handling
        USB: serial: io_edgeport: drop unused descriptor helper
      fd47ff55
    • Linus Torvalds's avatar
      Merge tag 'mtd/for-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux · 6b6dc4f4
      Linus Torvalds authored
      Pull MTD updates from Miquel Raynal:
       "MTD changes:
         - blkdevs:
             - Simplify the refcounting in blktrans_{open, release}
             - Simplify blktrans_getgeo
             - Remove blktrans_ref_mutex
             - Simplify blktrans_dev_get
             - Use lockdep_assert_held
             - Don't hold del_mtd_blktrans_dev in blktrans_{open, release}
         - ftl:
             - Don't cast away the type when calling add_mtd_blktrans_dev
             - Don't cast away the type when calling add_mtd_blktrans_dev
             - Use container_of() rather than cast
             - Fix use-after-free
             - Add discard support
             - Allow use of MTD_RAM for testing purposes
         - concat:
             - Check _read, _write callbacks existence before assignment
             - Judge callback existence based on the master
         - maps:
             - Maps: remove dead MTD map driver for PMC-Sierra MSP boards
         - mtdblock:
             - Warn if added for a NAND device
             - Add comment about UBI block devices
             - Update old JFFS2 mention in Kconfig
         - partitions:
             - Redboot: convert to YAML
      
        NAND core changes:
         - Repair Miquel Raynal's email address in MAINTAINERS
         - Fix a couple of spelling mistakes in Kconfig
         - bbt: Skip bad blocks when searching for the BBT in NAND
         - Remove never changed ret variable
      
        Raw NAND changes:
         - cafe: Fix a resource leak in the error handling path of 'cafe_nand_probe()'
         - intel: Fix error handling in probe
         - omap: Fix kernel doc warning on 'calcuate' typo
         - gpmc: Fix the ECC bytes vs. OOB bytes equation
      
        SPI-NAND core changes:
         - Properly fill the OOB area.
         - Fix comment
      
        SPI-NAND drivers changes:
         - macronix: Add Quad support for serial NAND flash"
      
      * tag 'mtd/for-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux: (30 commits)
        mtd: rawnand: cafe: Fix a resource leak in the error handling path of 'cafe_nand_probe()'
        mtd_blkdevs: simplify the refcounting in blktrans_{open, release}
        mtd_blkdevs: simplify blktrans_getgeo
        mtd_blkdevs: remove blktrans_ref_mutex
        mtd_blkdevs: simplify blktrans_dev_get
        mtd/rfd_ftl: don't cast away the type when calling add_mtd_blktrans_dev
        mtd/ftl: don't cast away the type when calling add_mtd_blktrans_dev
        mtd_blkdevs: use lockdep_assert_held
        mtd_blkdevs: don't hold del_mtd_blktrans_dev in blktrans_{open, release}
        mtd: rawnand: intel: Fix error handling in probe
        mtd: mtdconcat: Check _read, _write callbacks existence before assignment
        mtd: mtdconcat: Judge callback existence based on the master
        mtd: maps: remove dead MTD map driver for PMC-Sierra MSP boards
        mtd: rfd_ftl: use container_of() rather than cast
        mtd: rfd_ftl: fix use-after-free
        mtd: rfd_ftl: add discard support
        mtd: rfd_ftl: allow use of MTD_RAM for testing purposes
        mtdblock: Warn if added for a NAND device
        mtd: spinand: macronix: Add Quad support for serial NAND flash
        mtdblock: Add comment about UBI block devices
        ...
      6b6dc4f4
    • Geert Uytterhoeven's avatar
      binfmt: a.out: Fix bogus semicolon · 0319b848
      Geert Uytterhoeven authored
          fs/binfmt_aout.c: In function ‘load_aout_library’:
          fs/binfmt_aout.c:311:27: error: expected ‘)’ before ‘;’ token
            311 |    MAP_FIXED | MAP_PRIVATE;
      	  |                           ^
          fs/binfmt_aout.c:309:10: error: too few arguments to function ‘vm_mmap’
            309 |  error = vm_mmap(file, start_addr, ex.a_text + ex.a_data,
      	  |          ^~~~~~~
          In file included from fs/binfmt_aout.c:12:
          include/linux/mm.h:2626:35: note: declared here
           2626 | extern unsigned long __must_check vm_mmap(struct file *, unsigned long,
      	  |                                   ^~~~~~~
      
      Fix this by reverting the accidental replacement of a comma by a
      semicolon.
      
      Fixes: 42be8b42 ("binfmt: don't use MAP_DENYWRITE when loading shared libraries via uselib()")
      Reported-by: noreply@ellerman.id.au
      Reported-by: default avatarGuenter Roeck <linux@roeck-us.net>
      Signed-off-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      0319b848
  2. 04 Sep, 2021 4 commits
    • Linus Torvalds's avatar
      Merge tag 'denywrite-for-5.15' of git://github.com/davidhildenbrand/linux · 49624efa
      Linus Torvalds authored
      Pull MAP_DENYWRITE removal from David Hildenbrand:
       "Remove all in-tree usage of MAP_DENYWRITE from the kernel and remove
        VM_DENYWRITE.
      
        There are some (minor) user-visible changes:
      
         - We no longer deny write access to shared libaries loaded via legacy
           uselib(); this behavior matches modern user space e.g. dlopen().
      
         - We no longer deny write access to the elf interpreter after exec
           completed, treating it just like shared libraries (which it often
           is).
      
         - We always deny write access to the file linked via /proc/pid/exe:
           sys_prctl(PR_SET_MM_MAP/EXE_FILE) will fail if write access to the
           file cannot be denied, and write access to the file will remain
           denied until the link is effectivel gone (exec, termination,
           sys_prctl(PR_SET_MM_MAP/EXE_FILE)) -- just as if exec'ing the file.
      
        Cross-compiled for a bunch of architectures (alpha, microblaze, i386,
        s390x, ...) and verified via ltp that especially the relevant tests
        (i.e., creat07 and execve04) continue working as expected"
      
      * tag 'denywrite-for-5.15' of git://github.com/davidhildenbrand/linux:
        fs: update documentation of get_write_access() and friends
        mm: ignore MAP_DENYWRITE in ksys_mmap_pgoff()
        mm: remove VM_DENYWRITE
        binfmt: remove in-tree usage of MAP_DENYWRITE
        kernel/fork: always deny write access to current MM exe_file
        kernel/fork: factor out replacing the current MM exe_file
        binfmt: don't use MAP_DENYWRITE when loading shared libraries via uselib()
      49624efa
    • Linus Torvalds's avatar
      Merge git://github.com/Paragon-Software-Group/linux-ntfs3 · f7464060
      Linus Torvalds authored
      Merge NTFSv3 filesystem from Konstantin Komarov:
       "This patch adds NTFS Read-Write driver to fs/ntfs3.
      
        Having decades of expertise in commercial file systems development and
        huge test coverage, we at Paragon Software GmbH want to make our
        contribution to the Open Source Community by providing implementation
        of NTFS Read-Write driver for the Linux Kernel.
      
        This is fully functional NTFS Read-Write driver. Current version works
        with NTFS (including v3.1) and normal/compressed/sparse files and
        supports journal replaying.
      
        We plan to support this version after the codebase once merged, and
        add new features and fix bugs. For example, full journaling support
        over JBD will be added in later updates"
      
      Link: https://lore.kernel.org/lkml/20210729134943.778917-1-almaz.alexandrovich@paragon-software.com/
      Link: https://lore.kernel.org/lkml/aa4aa155-b9b2-9099-b7a2-349d8d9d8fbd@paragon-software.com/
      
      * git://github.com/Paragon-Software-Group/linux-ntfs3: (35 commits)
        fs/ntfs3: Change how module init/info messages are displayed
        fs/ntfs3: Remove GPL boilerplates from decompress lib files
        fs/ntfs3: Remove unnecessary condition checking from ntfs_file_read_iter
        fs/ntfs3: Fix integer overflow in ni_fiemap with fiemap_prep()
        fs/ntfs3: Restyle comments to better align with kernel-doc
        fs/ntfs3: Rework file operations
        fs/ntfs3: Remove fat ioctl's from ntfs3 driver for now
        fs/ntfs3: Restyle comments to better align with kernel-doc
        fs/ntfs3: Fix error handling in indx_insert_into_root()
        fs/ntfs3: Potential NULL dereference in hdr_find_split()
        fs/ntfs3: Fix error code in indx_add_allocate()
        fs/ntfs3: fix an error code in ntfs_get_acl_ex()
        fs/ntfs3: add checks for allocation failure
        fs/ntfs3: Use kcalloc/kmalloc_array over kzalloc/kmalloc
        fs/ntfs3: Do not use driver own alloc wrappers
        fs/ntfs3: Use kernel ALIGN macros over driver specific
        fs/ntfs3: Restyle comment block in ni_parse_reparse()
        fs/ntfs3: Remove unused including <linux/version.h>
        fs/ntfs3: Fix fall-through warnings for Clang
        fs/ntfs3: Fix one none utf8 char in source file
        ...
      f7464060
    • Linus Torvalds's avatar
      Merge tag 'f2fs-for-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs · 6abaa83c
      Linus Torvalds authored
      Pull f2fs updates from Jaegeuk Kim:
       "In this cycle, we've addressed some performance issues such as lock
        contention, misbehaving compress_cache, allowing extent_cache for
        compressed files, and new sysfs to adjust ra_size for fadvise.
      
        In order to diagnose the performance issues quickly, we also added an
        iostat which shows the IO latencies periodically.
      
        On the stability side, we've found two memory leakage cases in the
        error path in compression flow. And, we've also fixed various corner
        cases in fiemap, quota, checkpoint=disable, zstd, and so on.
      
        Enhancements:
         - avoid long checkpoint latency by releasing nat_tree_lock
         - collect and show iostats periodically
         - support extent_cache for compressed files
         - add a sysfs entry to manage ra_size given fadvise(POSIX_FADV_SEQUENTIAL)
         - report f2fs GC status via sysfs
         - add discard_unit=%s in mount option to handle zoned device
      
        Bug fixes:
         - fix two memory leakages when an error happens in the compressed IO flow
         - fix commpress_cache to get the right LBA
         - fix fiemap to deal with compressed case correctly
         - fix wrong EIO returns due to SBI_NEED_FSCK
         - fix missing writes when enabling checkpoint back
         - fix quota deadlock
         - fix zstd level mount option
      
        In addition to the above major updates, we've cleaned up several code
        paths such as dio, unnecessary operations, debugfs/f2fs/status, sanity
        check, and typos"
      
      * tag 'f2fs-for-5.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (46 commits)
        f2fs: should put a page beyond EOF when preparing a write
        f2fs: deallocate compressed pages when error happens
        f2fs: enable realtime discard iff device supports discard
        f2fs: guarantee to write dirty data when enabling checkpoint back
        f2fs: fix to unmap pages from userspace process in punch_hole()
        f2fs: fix unexpected ENOENT comes from f2fs_map_blocks()
        f2fs: fix to account missing .skipped_gc_rwsem
        f2fs: adjust unlock order for cleanup
        f2fs: Don't create discard thread when device doesn't support realtime discard
        f2fs: rebuild nat_bits during umount
        f2fs: introduce periodic iostat io latency traces
        f2fs: separate out iostat feature
        f2fs: compress: do sanity check on cluster
        f2fs: fix description about main_blkaddr node
        f2fs: convert S_IRUGO to 0444
        f2fs: fix to keep compatibility of fault injection interface
        f2fs: support fault injection for f2fs_kmem_cache_alloc()
        f2fs: compress: allow write compress released file after truncate to zero
        f2fs: correct comment in segment.h
        f2fs: improve sbi status info in debugfs/f2fs/status
        ...
      6abaa83c
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-5.15-1' of git://git.linux-nfs.org/projects/anna/linux-nfs · 0961f0c0
      Linus Torvalds authored
      Pull NFS client updates from Anna Schumaker:
       "New Features:
         - Better client responsiveness when server isn't replying
         - Use refcount_t in sunrpc rpc_client refcount tracking
         - Add srcaddr and dst_port to the sunrpc sysfs info files
         - Add basic support for connection sharing between servers with multiple NICs`
      
        Bugfixes and Cleanups:
         - Sunrpc tracepoint cleanups
         - Disconnect after ib_post_send() errors to avoid deadlocks
         - Fix for tearing down rpcrdma_reps
         - Fix a potential pNFS layoutget livelock loop
         - pNFS layout barrier fixes
         - Fix a potential memory corruption in rpc_wake_up_queued_task_set_status()
         - Fix reconnection locking
         - Fix return value of get_srcport()
         - Remove rpcrdma_post_sends()
         - Remove pNFS dead code
         - Remove copy size restriction for inter-server copies
         - Overhaul the NFS callback service
         - Clean up sunrpc TCP socket shutdowns
         - Always provide aligned buffers to RPC read layers"
      
      * tag 'nfs-for-5.15-1' of git://git.linux-nfs.org/projects/anna/linux-nfs: (39 commits)
        NFS: Always provide aligned buffers to the RPC read layers
        NFSv4.1 add network transport when session trunking is detected
        SUNRPC enforce creation of no more than max_connect xprts
        NFSv4 introduce max_connect mount options
        SUNRPC add xps_nunique_destaddr_xprts to xprt_switch_info in sysfs
        SUNRPC keep track of number of transports to unique addresses
        NFSv3: Delete duplicate judgement in nfs3_async_handle_jukebox
        SUNRPC: Tweak TCP socket shutdown in the RPC client
        SUNRPC: Simplify socket shutdown when not reusing TCP ports
        NFSv4.2: remove restriction of copy size for inter-server copy.
        NFS: Clean up the synopsis of callback process_op()
        NFS: Extract the xdr_init_encode/decode() calls from decode_compound
        NFS: Remove unused callback void decoder
        NFS: Add a private local dispatcher for NFSv4 callback operations
        SUNRPC: Eliminate the RQ_AUTHERR flag
        SUNRPC: Set rq_auth_stat in the pg_authenticate() callout
        SUNRPC: Add svc_rqst::rq_auth_stat
        SUNRPC: Add dst_port to the sysfs xprt info file
        SUNRPC: Add srcaddr as a file in sysfs
        sunrpc: Fix return value of get_srcport()
        ...
      0961f0c0
  3. 03 Sep, 2021 29 commits