1. 30 Apr, 2021 31 commits
  2. 29 Apr, 2021 9 commits
    • Linus Torvalds's avatar
      Merge tag 'kconfig-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild · 8ca5297e
      Linus Torvalds authored
      Pull Kconfig updates from Masahiro Yamada:
      
       - Change 'option defconfig' to the environment variable
         KCONFIG_DEFCONFIG_LIST
      
       - Refactor tinyconfig without using allnoconfig_y
      
       - Remove 'option allnoconfig_y' syntax
      
       - Change 'option modules' to 'modules'
      
       - Do not use /boot/config-* etc. as base config for cross-compilation
      
       - Fix a search bug in nconf
      
       - Various code cleanups
      
      * tag 'kconfig-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (34 commits)
        kconfig: refactor .gitignore
        kconfig: highlight xconfig 'comment' lines with '***'
        kconfig: highlight gconfig 'comment' lines with '***'
        kconfig: gconf: remove unused code
        kconfig: remove unused PACKAGE definition
        kconfig: nconf: stop endless search loops
        kconfig: split menu.c out of parser.y
        kconfig: nconf: refactor in print_in_middle()
        kconfig: nconf: remove meaningless wattrset() call from show_menu()
        kconfig: nconf: change set_config_filename() to void function
        kconfig: nconf: refactor attributes setup code
        kconfig: nconf: remove unneeded default for menu prompt
        kconfig: nconf: get rid of (void) casts from wattrset() calls
        kconfig: nconf: fix NORMAL attributes
        kconfig: mconf,nconf: remove unneeded '\0' termination after snprintf()
        kconfig: use /boot/config-* etc. as DEFCONFIG_LIST only for native build
        kconfig: change sym_change_count to a boolean flag
        kconfig: nconf: fix core dump when searching in empty menu
        kconfig: lxdialog: A spello fix and a punctuation added
        kconfig: streamline_config.pl: Couple of typo fixes
        ...
      8ca5297e
    • Linus Torvalds's avatar
      Merge tag 'kbuild-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild · b0030af5
      Linus Torvalds authored
      Pull Kbuild updates from Masahiro Yamada:
      
       - Evaluate $(call cc-option,...) etc. only for build targets
      
       - Add CONFIG_VMLINUX_MAP to generate .map file when linking vmlinux
      
       - Remove unnecessary --gcc-toolchains Clang flag because the --prefix
         flag finds the toolchains
      
       - Do not pass Clang's --prefix flag when using the integrated as
      
       - Check the assembler version in Kconfig time
      
       - Add new CONFIG options, AS_VERSION, AS_IS_GNU, AS_IS_LLVM to clean up
         some dependencies in Kconfig
      
       - Fix invalid Module.symvers creation when building only modules
         without vmlinux
      
       - Fix false-positive modpost warnings when CONFIG_TRIM_UNUSED_KSYMS is
         set, but there is no module to build
      
       - Refactor module installation Makefile
      
       - Support zstd for module compression
      
       - Convert alpha and ia64 to use generic shell scripts to generate the
         syscall headers
      
       - Add a new elfnote to indicate if the kernel was built with LTO, which
         will be used by pahole
      
       - Flatten the directory structure under include/config/ so CONFIG
         options and filenames match
      
       - Change the deb source package name from linux-$(KERNELRELEASE) to
         linux-upstream
      
      * tag 'kbuild-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (42 commits)
        kbuild: Add $(KBUILD_HOSTLDFLAGS) to 'has_libelf' test
        kbuild: deb-pkg: change the source package name to linux-upstream
        tools: do not include scripts/Kbuild.include
        kbuild: redo fake deps at include/config/*.h
        kbuild: remove TMPO from try-run
        MAINTAINERS: add pattern for dummy-tools
        kbuild: add an elfnote for whether vmlinux is built with lto
        ia64: syscalls: switch to generic syscallhdr.sh
        ia64: syscalls: switch to generic syscalltbl.sh
        alpha: syscalls: switch to generic syscallhdr.sh
        alpha: syscalls: switch to generic syscalltbl.sh
        sysctl: use min() helper for namecmp()
        kbuild: add support for zstd compressed modules
        kbuild: remove CONFIG_MODULE_COMPRESS
        kbuild: merge scripts/Makefile.modsign to scripts/Makefile.modinst
        kbuild: move module strip/compression code into scripts/Makefile.modinst
        kbuild: refactor scripts/Makefile.modinst
        kbuild: rename extmod-prefix to extmod_prefix
        kbuild: check module name conflict for external modules as well
        kbuild: show the target directory for depmod log
        ...
      b0030af5
    • Linus Torvalds's avatar
      Merge tag 'net-next-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next · 9d31d233
      Linus Torvalds authored
      Pull networking updates from Jakub Kicinski:
       "Core:
      
         - bpf:
              - allow bpf programs calling kernel functions (initially to
                reuse TCP congestion control implementations)
              - enable task local storage for tracing programs - remove the
                need to store per-task state in hash maps, and allow tracing
                programs access to task local storage previously added for
                BPF_LSM
              - add bpf_for_each_map_elem() helper, allowing programs to walk
                all map elements in a more robust and easier to verify fashion
              - sockmap: support UDP and cross-protocol BPF_SK_SKB_VERDICT
                redirection
              - lpm: add support for batched ops in LPM trie
              - add BTF_KIND_FLOAT support - mostly to allow use of BTF on
                s390 which has floats in its headers files
              - improve BPF syscall documentation and extend the use of kdoc
                parsing scripts we already employ for bpf-helpers
              - libbpf, bpftool: support static linking of BPF ELF files
              - improve support for encapsulation of L2 packets
      
         - xdp: restructure redirect actions to avoid a runtime lookup,
           improving performance by 4-8% in microbenchmarks
      
         - xsk: build skb by page (aka generic zerocopy xmit) - improve
           performance of software AF_XDP path by 33% for devices which don't
           need headers in the linear skb part (e.g. virtio)
      
         - nexthop: resilient next-hop groups - improve path stability on
           next-hops group changes (incl. offload for mlxsw)
      
         - ipv6: segment routing: add support for IPv4 decapsulation
      
         - icmp: add support for RFC 8335 extended PROBE messages
      
         - inet: use bigger hash table for IP ID generation
      
         - tcp: deal better with delayed TX completions - make sure we don't
           give up on fast TCP retransmissions only because driver is slow in
           reporting that it completed transmitting the original
      
         - tcp: reorder tcp_congestion_ops for better cache locality
      
         - mptcp:
              - add sockopt support for common TCP options
              - add support for common TCP msg flags
              - include multiple address ids in RM_ADDR
              - add reset option support for resetting one subflow
      
         - udp: GRO L4 improvements - improve 'forward' / 'frag_list'
           co-existence with UDP tunnel GRO, allowing the first to take place
           correctly even for encapsulated UDP traffic
      
         - micro-optimize dev_gro_receive() and flow dissection, avoid
           retpoline overhead on VLAN and TEB GRO
      
         - use less memory for sysctls, add a new sysctl type, to allow using
           u8 instead of "int" and "long" and shrink networking sysctls
      
         - veth: allow GRO without XDP - this allows aggregating UDP packets
           before handing them off to routing, bridge, OvS, etc.
      
         - allow specifing ifindex when device is moved to another namespace
      
         - netfilter:
              - nft_socket: add support for cgroupsv2
              - nftables: add catch-all set element - special element used to
                define a default action in case normal lookup missed
              - use net_generic infra in many modules to avoid allocating
                per-ns memory unnecessarily
      
         - xps: improve the xps handling to avoid potential out-of-bound
           accesses and use-after-free when XPS change race with other
           re-configuration under traffic
      
         - add a config knob to turn off per-cpu netdev refcnt to catch
           underflows in testing
      
        Device APIs:
      
         - add WWAN subsystem to organize the WWAN interfaces better and
           hopefully start driving towards more unified and vendor-
           independent APIs
      
         - ethtool:
              - add interface for reading IEEE MIB stats (incl. mlx5 and bnxt
                support)
              - allow network drivers to dump arbitrary SFP EEPROM data,
                current offset+length API was a poor fit for modern SFP which
                define EEPROM in terms of pages (incl. mlx5 support)
      
         - act_police, flow_offload: add support for packet-per-second
           policing (incl. offload for nfp)
      
         - psample: add additional metadata attributes like transit delay for
           packets sampled from switch HW (and corresponding egress and
           policy-based sampling in the mlxsw driver)
      
         - dsa: improve support for sandwiched LAGs with bridge and DSA
      
         - netfilter:
              - flowtable: use direct xmit in topologies with IP forwarding,
                bridging, vlans etc.
              - nftables: counter hardware offload support
      
         - Bluetooth:
              - improvements for firmware download w/ Intel devices
              - add support for reading AOSP vendor capabilities
              - add support for virtio transport driver
      
         - mac80211:
              - allow concurrent monitor iface and ethernet rx decap
              - set priority and queue mapping for injected frames
      
         - phy: add support for Clause-45 PHY Loopback
      
         - pci/iov: add sysfs MSI-X vector assignment interface to distribute
           MSI-X resources to VFs (incl. mlx5 support)
      
        New hardware/drivers:
      
         - dsa: mv88e6xxx: add support for Marvell mv88e6393x - 11-port
           Ethernet switch with 8x 1-Gigabit Ethernet and 3x 10-Gigabit
           interfaces.
      
         - dsa: support for legacy Broadcom tags used on BCM5325, BCM5365 and
           BCM63xx switches
      
         - Microchip KSZ8863 and KSZ8873; 3x 10/100Mbps Ethernet switches
      
         - ath11k: support for QCN9074 a 802.11ax device
      
         - Bluetooth: Broadcom BCM4330 and BMC4334
      
         - phy: Marvell 88X2222 transceiver support
      
         - mdio: add BCM6368 MDIO mux bus controller
      
         - r8152: support RTL8153 and RTL8156 (USB Ethernet) chips
      
         - mana: driver for Microsoft Azure Network Adapter (MANA)
      
         - Actions Semi Owl Ethernet MAC
      
         - can: driver for ETAS ES58X CAN/USB interfaces
      
        Pure driver changes:
      
         - add XDP support to: enetc, igc, stmmac
      
         - add AF_XDP support to: stmmac
      
         - virtio:
              - page_to_skb() use build_skb when there's sufficient tailroom
                (21% improvement for 1000B UDP frames)
              - support XDP even without dedicated Tx queues - share the Tx
                queues with the stack when necessary
      
         - mlx5:
              - flow rules: add support for mirroring with conntrack, matching
                on ICMP, GTP, flex filters and more
              - support packet sampling with flow offloads
              - persist uplink representor netdev across eswitch mode changes
              - allow coexistence of CQE compression and HW time-stamping
              - add ethtool extended link error state reporting
      
         - ice, iavf: support flow filters, UDP Segmentation Offload
      
         - dpaa2-switch:
              - move the driver out of staging
              - add spanning tree (STP) support
              - add rx copybreak support
              - add tc flower hardware offload on ingress traffic
      
         - ionic:
              - implement Rx page reuse
              - support HW PTP time-stamping
      
         - octeon: support TC hardware offloads - flower matching on ingress
           and egress ratelimitting.
      
         - stmmac:
              - add RX frame steering based on VLAN priority in tc flower
              - support frame preemption (FPE)
              - intel: add cross time-stamping freq difference adjustment
      
         - ocelot:
              - support forwarding of MRP frames in HW
              - support multiple bridges
              - support PTP Sync one-step timestamping
      
         - dsa: mv88e6xxx, dpaa2-switch: offload bridge port flags like
           learning, flooding etc.
      
         - ipa: add IPA v4.5, v4.9 and v4.11 support (Qualcomm SDX55, SM8350,
           SC7280 SoCs)
      
         - mt7601u: enable TDLS support
      
         - mt76:
              - add support for 802.3 rx frames (mt7915/mt7615)
              - mt7915 flash pre-calibration support
              - mt7921/mt7663 runtime power management fixes"
      
      * tag 'net-next-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next: (2451 commits)
        net: selftest: fix build issue if INET is disabled
        net: netrom: nr_in: Remove redundant assignment to ns
        net: tun: Remove redundant assignment to ret
        net: phy: marvell: add downshift support for M88E1240
        net: dsa: ksz: Make reg_mib_cnt a u8 as it never exceeds 255
        net/sched: act_ct: Remove redundant ct get and check
        icmp: standardize naming of RFC 8335 PROBE constants
        bpf, selftests: Update array map tests for per-cpu batched ops
        bpf: Add batched ops support for percpu array
        bpf: Implement formatted output helpers with bstr_printf
        seq_file: Add a seq_bprintf function
        sfc: adjust efx->xdp_tx_queue_count with the real number of initialized queues
        net:nfc:digital: Fix a double free in digital_tg_recv_dep_req
        net: fix a concurrency bug in l2tp_tunnel_register()
        net/smc: Remove redundant assignment to rc
        mpls: Remove redundant assignment to err
        llc2: Remove redundant assignment to rc
        net/tls: Remove redundant initialization of record
        rds: Remove redundant assignment to nr_sig
        dt-bindings: net: mdio-gpio: add compatible for microchip,mdio-smi0
        ...
      9d31d233
    • Linus Torvalds's avatar
      Merge tag 'x86-mm-2021-04-29' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 635de956
      Linus Torvalds authored
      Pull x86 tlb updates from Ingo Molnar:
       "The x86 MM changes in this cycle were:
      
         - Implement concurrent TLB flushes, which overlaps the local TLB
           flush with the remote TLB flush.
      
           In testing this improved sysbench performance measurably by a
           couple of percentage points, especially if TLB-heavy security
           mitigations are active.
      
         - Further micro-optimizations to improve the performance of TLB
           flushes"
      
      * tag 'x86-mm-2021-04-29' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        smp: Micro-optimize smp_call_function_many_cond()
        smp: Inline on_each_cpu_cond() and on_each_cpu()
        x86/mm/tlb: Remove unnecessary uses of the inline keyword
        cpumask: Mark functions as pure
        x86/mm/tlb: Do not make is_lazy dirty for no reason
        x86/mm/tlb: Privatize cpu_tlbstate
        x86/mm/tlb: Flush remote and local TLBs concurrently
        x86/mm/tlb: Open-code on_each_cpu_cond_mask() for tlb_is_not_lazy()
        x86/mm/tlb: Unify flush_tlb_func_local() and flush_tlb_func_remote()
        smp: Run functions concurrently in smp_call_function_many_cond()
      635de956
    • Linus Torvalds's avatar
      Merge tag 'microblaze-v5.13' of git://git.monstr.eu/linux-2.6-microblaze · d0cc7eca
      Linus Torvalds authored
      Pull Microblaze updates from Michal Simek:
       "No new features, just about cleaning up some code and moving to
        generic syscall solution used by other architectures:
      
         - Switch to generic syscall scripts
      
         - Some small fixes"
      
      * tag 'microblaze-v5.13' of git://git.monstr.eu/linux-2.6-microblaze:
        microblaze: add 'fallthrough' to memcpy/memset/memmove
        microblaze: Fix a typo
        microblaze: tag highmem_setup() with __meminit
        microblaze: syscalls: switch to generic syscallhdr.sh
        microblaze: syscalls: switch to generic syscalltbl.sh
      d0cc7eca
    • Linus Torvalds's avatar
      Merge tag 'mips_5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux · 77d51337
      Linus Torvalds authored
      Pull MIPS updates from Thomas Bogendoerfer:
      
       - removed get_fs/set_fs
      
       - removed broken/unmaintained MIPS KVM trap and emulate support
      
       - added support for Loongson-2K1000
      
       - fixes and cleanups
      
      * tag 'mips_5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux: (107 commits)
        MIPS: BCM63XX: Use BUG_ON instead of condition followed by BUG.
        MIPS: select ARCH_KEEP_MEMBLOCK unconditionally
        mips: Do not include hi and lo in clobber list for R6
        MIPS:DTS:Correct the license for Loongson-2K
        MIPS:DTS:Fix label name and interrupt number of ohci for Loongson-2K
        MIPS: Avoid handcoded DIVU in `__div64_32' altogether
        lib/math/test_div64: Correct the spelling of "dividend"
        lib/math/test_div64: Fix error message formatting
        mips/bootinfo:correct some comments of fw_arg
        MIPS: Avoid DIVU in `__div64_32' is result would be zero
        MIPS: Reinstate platform `__div64_32' handler
        div64: Correct inline documentation for `do_div'
        lib/math: Add a `do_div' test module
        MIPS: Makefile: Replace -pg with CC_FLAGS_FTRACE
        MIPS: pci-legacy: revert "use generic pci_enable_resources"
        MIPS: Loongson64: Add kexec/kdump support
        MIPS: pci-legacy: use generic pci_enable_resources
        MIPS: pci-legacy: remove busn_resource field
        MIPS: pci-legacy: remove redundant info messages
        MIPS: pci-legacy: stop using of_pci_range_to_resource
        ...
      77d51337
    • Linus Torvalds's avatar
      Merge tag 'fsnotify_for_v5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · 3644286f
      Linus Torvalds authored
      Pull fsnotify updates from Jan Kara:
      
       - support for limited fanotify functionality for unpriviledged users
      
       - faster merging of fanotify events
      
       - a few smaller fsnotify improvements
      
      * tag 'fsnotify_for_v5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        shmem: allow reporting fanotify events with file handles on tmpfs
        fs: introduce a wrapper uuid_to_fsid()
        fanotify_user: use upper_32_bits() to verify mask
        fanotify: support limited functionality for unprivileged users
        fanotify: configurable limits via sysfs
        fanotify: limit number of event merge attempts
        fsnotify: use hash table for faster events merge
        fanotify: mix event info and pid into merge key hash
        fanotify: reduce event objectid to 29-bit hash
        fsnotify: allow fsnotify_{peek,remove}_first_event with empty queue
      3644286f
    • Linus Torvalds's avatar
      Merge tag 'for_v5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · 767fcbc8
      Linus Torvalds authored
      Pull quota, ext2, reiserfs updates from Jan Kara:
      
       - support for path (instead of device) based quotactl syscall
         (quotactl_path(2))
      
       - ext2 conversion to kmap_local()
      
       - other minor cleanups & fixes
      
      * tag 'for_v5.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        fs/reiserfs/journal.c: delete useless variables
        fs/ext2: Replace kmap() with kmap_local_page()
        ext2: Match up ext2_put_page() with ext2_dotdot() and ext2_find_entry()
        fs/ext2/: fix misspellings using codespell tool
        quota: report warning limits for realtime space quotas
        quota: wire up quotactl_path
        quota: Add mountpath based quota support
      767fcbc8
    • Linus Torvalds's avatar
      Merge tag 'xfs-5.13-merge-3' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · d2b6f8a1
      Linus Torvalds authored
      Pull xfs updates from Darrick Wong:
       "The notable user-visible addition this cycle is ability to remove
        space from the last AG in a filesystem. This is the first of many
        changes needed for full-fledged support for shrinking a filesystem.
        Still needed are (a) the ability to reorganize files and metadata away
        from the end of the fs; (b) the ability to remove entire allocation
        groups; (c) shrink support for realtime volumes; and (d) thorough
        testing of (a-c).
      
        There are a number of performance improvements in this code drop: Dave
        streamlined various parts of the buffer logging code and reduced the
        cost of various debugging checks, and added the ability to pre-create
        the xattr structures while creating files. Brian eliminated
        transaction reservations that were being held across writeback (thus
        reducing livelock potential.
      
        Other random pieces: Pavel fixed the repetitve warnings about
        deprecated mount options, I fixed online fsck to behave itself when a
        readonly remount comes in during scrub, and refactored various other
        parts of that code, Christoph contributed a lot of refactoring this
        cycle. The xfs_icdinode structure has been absorbed into the (incore)
        xfs_inode structure, and the format and flags handling around
        xfs_inode_fork structures has been simplified. Chandan provided a
        number of fixes for extent count overflow related problems that have
        been shaken out by debugging knobs added during 5.12.
      
        Summary:
      
         - Various minor fixes in online scrub.
      
         - Prevent metadata files from being automatically inactivated.
      
         - Validate btree heights by the computed per-btree limits.
      
         - Don't warn about remounting with deprecated mount options.
      
         - Initialize attr forks at create time if we suspect we're going to
           need to store them.
      
         - Reduce memory reallocation workouts in the logging code.
      
         - Fix some theoretical math calculation errors in logged buffers that
           span multiple discontig memory ranges but contiguous ondisk
           regions.
      
         - Speedups in dirty buffer bitmap handling.
      
         - Make type verifier functions more inline-happy to reduce overhead.
      
         - Reduce debug overhead in directory checking code.
      
         - Many many typo fixes.
      
         - Begin to handle the permanent loss of the very end of a filesystem.
      
         - Fold struct xfs_icdinode into xfs_inode.
      
         - Deprecate the long defunct BMV_IF_NO_DMAPI_READ from the bmapx
           ioctl.
      
         - Remove a broken directory block format check from online scrub.
      
         - Fix a bug where we could produce an unnecessarily tall data fork
           btree when creating an attr fork.
      
         - Fix scrub and readonly remounts racing.
      
         - Fix a writeback ioend log deadlock problem by dropping the behavior
           where we could preallocate a setfilesize transaction.
      
         - Fix some bugs in the new extent count checking code.
      
         - Fix some bugs in the attr fork preallocation code.
      
         - Refactor if_flags out of the incore inode fork data structure"
      
      * tag 'xfs-5.13-merge-3' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux: (77 commits)
        xfs: remove xfs_quiesce_attr declaration
        xfs: remove XFS_IFEXTENTS
        xfs: remove XFS_IFINLINE
        xfs: remove XFS_IFBROOT
        xfs: only look at the fork format in xfs_idestroy_fork
        xfs: simplify xfs_attr_remove_args
        xfs: rename and simplify xfs_bmap_one_block
        xfs: move the XFS_IFEXTENTS check into xfs_iread_extents
        xfs: drop unnecessary setfilesize helper
        xfs: drop unused ioend private merge and setfilesize code
        xfs: open code ioend needs workqueue helper
        xfs: drop submit side trans alloc for append ioends
        xfs: fix return of uninitialized value in variable error
        xfs: get rid of the ip parameter to xchk_setup_*
        xfs: fix scrub and remount-ro protection when running scrub
        xfs: move the check for post-EOF mappings into xfs_can_free_eofblocks
        xfs: move the xfs_can_free_eofblocks call under the IOLOCK
        xfs: precalculate default inode attribute offset
        xfs: default attr fork size does not handle device inodes
        xfs: inode fork allocation depends on XFS_IFEXTENT flag
        ...
      d2b6f8a1