1. 09 1月, 2021 6 次提交
    • L
      Merge tag 'arm-fixes-5.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 95f05058
      Linus Torvalds 提交于
      Pull ARM SoC fixes from Arnd Bergmann:
       "These are a small number of bug fixes that all came in before or
        during the merge window, most for the omap platform:
      
         - One boot regression fix for Nokia N9 (OMAP3).
      
         - Two small defconfig changes for omap2, to reflect changes in
           drivers
      
         - Warning fixes for DT issues on omap2, picoxcell and bitmap SoCs.
      
           The picoxcell platform will be removed in v5.12, but fixing it
           first makes it easier to backport to the fix to stable kernels and
           get a clean build with new dtc versions"
      
      * tag 'arm-fixes-5.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:
        ARM: picoxcell: fix missing interrupt-parent properties
        ARM: dts: ux500/golden: Set display max brightness
        arm64: dts: bitmain: Use generic "ngpios" rather than "snps,nr-gpios"
        ARM: omap2: pmic-cpcap: fix maximum voltage to be consistent with defaults on xt875
        ARM: omap2plus_defconfig: enable SPI GPIO
        ARM: OMAP2+: omap_device: fix idling of devices during probe
        ARM: dts: OMAP3: disable AES on N950/N9
        ARM: omap2plus_defconfig: drop unused POWER_AVS option
      95f05058
    • L
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · 56ef24e5
      Linus Torvalds 提交于
      Pull arm64 fixes from Catalin Marinas:
      
       - Clean-ups following the merging window: remove unused variable,
         duplicate includes, superfluous barrier, move some inline asm to
         separate functions.
      
       - Disable top-byte-ignore on kernel code addresses with KASAN/MTE
         enabled (already done when MTE is disabled).
      
       - Fix ARCH_LOW_ADDRESS_LIMIT definition with CONFIG_ZONE_DMA disabled.
      
       - Compiler/linker flags: link with "-z norelno", discard .eh_frame_hdr
         instead of --no-eh-frame-hdr.
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64: Move PSTATE.TCO setting to separate functions
        arm64: kasan: Set TCR_EL1.TBID1 when KASAN_HW_TAGS is enabled
        arm64: vdso: disable .eh_frame_hdr via /DISCARD/ instead of --no-eh-frame-hdr
        arm64: traps: remove duplicate include statement
        arm64: link with -z norelro for LLD or aarch64-elf
        arm64: mm: Fix ARCH_LOW_ADDRESS_LIMIT when !CONFIG_ZONE_DMA
        arm64: mte: remove an ISB on kernel exit
        arm64/smp: Remove unused irq variable in arch_show_interrupts()
      56ef24e5
    • L
      Merge tag 'net-5.11-rc3-2' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · 6279d812
      Linus Torvalds 提交于
      Pull more networking fixes from Jakub Kicinski:
       "Slightly lighter pull request to get back into the Thursday cadence.
      
        Current release - always broken:
      
         - can: mcp251xfd: fix Tx/Rx ring buffer driver race conditions
      
         - dsa: hellcreek: fix led_classdev build errors
      
        Previous releases - regressions:
      
         - ipv6: fib: flush exceptions when purging route to avoid netdev
           reference leak
      
         - ip_tunnels: fix pmtu check in nopmtudisc mode
      
         - ip: always refragment ip defragmented packets to avoid MTU issues
           when forwarding through tunnels, correct "packet too big" message
           is prohibitively tricky to generate
      
         - s390/qeth: fix locking for discipline setup / removal and during
           recovery to prevent both deadlocks and races
      
         - mlx5: Use port_num 1 instead of 0 when delete a RoCE address
      
        Previous releases - always broken:
      
         - cdc_ncm: correct overhead calculation in delayed_ndp_size to
           prevent out of bound accesses with Huawei 909s-120 LTE module
      
         - fix stmmac dwmac-sun8i suspend/resume:
                 - PHY being left powered off
                 - MAC syscon configuration being reset
                 - reference to the reset controller being improperly dropped
      
         - qrtr: fix null-ptr-deref in qrtr_ns_remove
      
         - can: tcan4x5x: fix bittiming const, use common bittiming from m_can
           driver
      
         - mlx5e: CT: Use per flow counter when CT flow accounting is enabled
      
         - mlx5e: Fix SWP offsets when vlan inserted by driver
      
        Misc:
      
         - bpf: Fix a task_iter bug caused by a bpf -> net merge conflict
           resolution
      
        And the usual many fixes to various error paths"
      
      * tag 'net-5.11-rc3-2' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (69 commits)
        net: dsa: lantiq_gswip: Exclude RMII from modes that report 1 GbE
        s390/qeth: fix L2 header access in qeth_l3_osa_features_check()
        s390/qeth: fix locking for discipline setup / removal
        s390/qeth: fix deadlock during recovery
        selftests: fib_nexthops: Fix wrong mausezahn invocation
        nexthop: Bounce NHA_GATEWAY in FDB nexthop groups
        nexthop: Unlink nexthop group entry in error path
        nexthop: Fix off-by-one error in error path
        octeontx2-af: fix memory leak of lmac and lmac->name
        chtls: Fix chtls resources release sequence
        chtls: Added a check to avoid NULL pointer dereference
        chtls: Replace skb_dequeue with skb_peek
        chtls: Avoid unnecessary freeing of oreq pointer
        chtls: Fix panic when route to peer not configured
        chtls: Remove invalid set_tcb call
        chtls: Fix hardware tid leak
        net: ip: always refragment ip defragmented packets
        net: fix pmtu check in nopmtudisc mode
        selftests: netfilter: add selftest for ipip pmtu discovery with enabled connection tracking
        docs: octeontx2: tune rst markup
        ...
      6279d812
    • L
      Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · ea1c87c1
      Linus Torvalds 提交于
      Pull crypto fixes from Herbert Xu:
       "This fixes a functional bug in arm/chacha-neon as well as a potential
        buffer overflow in ecdh"
      
      * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
        crypto: ecdh - avoid buffer overflow in ecdh_set_secret()
        crypto: arm/chacha-neon - add missing counter increment
      ea1c87c1
    • L
      poll: fix performance regression due to out-of-line __put_user() · ef0ba055
      Linus Torvalds 提交于
      The kernel test robot reported a -5.8% performance regression on the
      "poll2" test of will-it-scale, and bisected it to commit d55564cf
      ("x86: Make __put_user() generate an out-of-line call").
      
      I didn't expect an out-of-line __put_user() to matter, because no normal
      core code should use that non-checking legacy version of user access any
      more.  But I had overlooked the very odd poll() usage, which does a
      __put_user() to update the 'revents' values of the poll array.
      
      Now, Al Viro correctly points out that instead of updating just the
      'revents' field, it would be much simpler to just copy the _whole_
      pollfd entry, and then we could just use "copy_to_user()" on the whole
      array of entries, the same way we use "copy_from_user()" a few lines
      earlier to get the original values.
      
      But that is not what we've traditionally done, and I worry that threaded
      applications might be concurrently modifying the other fields of the
      pollfd array.  So while Al's suggestion is simpler - and perhaps worth
      trying in the future - this instead keeps the "just update revents"
      model.
      
      To fix the performance regression, use the modern "unsafe_put_user()"
      instead of __put_user(), with the proper "user_write_access_begin()"
      guarding in place. This improves code generation enormously.
      
      Link: https://lore.kernel.org/lkml/20210107134723.GA28532@xsang-OptiPlex-9020/Reported-by: Nkernel test robot <oliver.sang@intel.com>
      Tested-by: NOliver Sang <oliver.sang@intel.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: David Laight <David.Laight@aculab.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      ef0ba055
    • P
      Revert "init/console: Use ttynull as a fallback when there is no console" · a91bd622
      Petr Mladek 提交于
      This reverts commit 757055ae.
      
      The commit caused that ttynull was used as the default console
      on several systems[1][2][3]. As a result, the console was
      blank even when a better alternative existed.
      
      It happened when there was no console configured
      on the command line and ttynull_init() was the first initcall
      calling register_console().
      
      Or it happened when /dev/ did not exist when console_on_rootfs()
      was called. It was not able to open /dev/console even though
      a console driver was registered. It tried to add ttynull console
      but it obviously did not help. But ttynull became the preferred
      console and was used by /dev/console when it was available later.
      
      The commit tried to fix a historical problem that have been there
      for ages. The primary motivation was the commit 3cffa06a
      ("printk/console: Allow to disable console output by using console=""
       or console=null"). It provided a clean solution for a workaround
       that was widely used and worked only by chance.
      
      This revert causes that the console="" or console=null command line
      options will again work only by chance. These options will cause that
      a particular console will be preferred and the default (tty) ones
      will not get enabled. There will be no console registered at
      all. As a result there won't be stdin, stdout, and stderr for
      the init process. But it worked exactly this way even before.
      
      The proper solution has to fulfill many conditions:
      
        + Register ttynull only when explicitly required or as
          the ultimate fallback.
      
        + ttynull should get associated with /dev/console but it must
          not become preferred console when used as a fallback.
          Especially, it must still be possible to replace it
          by a better console later.
      
      Such a change requires clean up of the register_console() code.
      Otherwise, it would be even harder to follow. Especially, the use
      of has_preferred_console and CON_CONSDEV flag is tricky. The clean
      up is risky. The ordering of consoles is not well defined. And
      any changes tend to break existing user settings.
      
      Do the revert at the least risky solution for now.
      
      [1] https://lore.kernel.org/linux-kselftest/20201221144302.GR4077@smile.fi.intel.com/
      [2] https://lore.kernel.org/lkml/d2a3b3c0-e548-7dd1-730f-59bc5c04e191@synopsys.com/
      [3] https://patchwork.ozlabs.org/project/linux-um/patch/20210105120128.10854-1-thomas@m3y3r.de/Reported-by: NAndy Shevchenko <andriy.shevchenko@linux.intel.com>
      Reported-by: NVineet Gupta <vgupta@synopsys.com>
      Reported-by: NThomas Meyer <thomas@m3y3r.de>
      Signed-off-by: NPetr Mladek <pmladek@suse.com>
      Acked-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      Acked-by: NSergey Senozhatsky <sergey.senozhatsky@gmail.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      a91bd622
  2. 08 1月, 2021 34 次提交