Skip to content
  1. Nov 14, 2020
  2. Nov 11, 2020
  3. Nov 06, 2020
    • Steven Rostedt (VMware)'s avatar
      ftrace: Add recording of functions that caused recursion · 773c1670
      Steven Rostedt (VMware) authored
      
      
      This adds CONFIG_FTRACE_RECORD_RECURSION that will record to a file
      "recursed_functions" all the functions that caused recursion while a
      callback to the function tracer was running.
      
      Link: https://lkml.kernel.org/r/20201106023548.102375687@goodmis.org
      
      Cc: Masami Hiramatsu <mhiramat@kernel.org>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Jonathan Corbet <corbet@lwn.net>
      Cc: Guo Ren <guoren@kernel.org>
      Cc: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>
      Cc: Helge Deller <deller@gmx.de>
      Cc: Michael Ellerman <mpe@ellerman.id.au>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Heiko Carstens <hca@linux.ibm.com>
      Cc: Vasily Gorbik <gor@linux.ibm.com>
      Cc: Christian Borntraeger <borntraeger@de.ibm.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: x86@kernel.org
      Cc: "H. Peter Anvin" <hpa@zytor.com>
      Cc: Kees Cook <keescook@chromium.org>
      Cc: Anton Vorontsov <anton@enomsg.org>
      Cc: Colin Cross <ccross@android.com>
      Cc: Tony Luck <tony.luck@intel.com>
      Cc: Josh Poimboeuf <jpoimboe@redhat.com>
      Cc: Jiri Kosina <jikos@kernel.org>
      Cc: Miroslav Benes <mbenes@suse.cz>
      Cc: Petr Mladek <pmladek@suse.com>
      Cc: Joe Lawrence <joe.lawrence@redhat.com>
      Cc: Kamalesh Babulal <kamalesh@linux.vnet.ibm.com>
      Cc: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
      Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
      Cc: linux-doc@vger.kernel.org
      Cc: linux-kernel@vger.kernel.org
      Cc: linux-csky@vger.kernel.org
      Cc: linux-parisc@vger.kernel.org
      Cc: linuxppc-dev@lists.ozlabs.org
      Cc: linux-s390@vger.kernel.org
      Cc: live-patching@vger.kernel.org
      Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
      773c1670
    • Steven Rostedt (VMware)'s avatar
      ftrace: Reverse what the RECURSION flag means in the ftrace_ops · a25d036d
      Steven Rostedt (VMware) authored
      
      
      Now that all callbacks are recursion safe, reverse the meaning of the
      RECURSION flag and rename it from RECURSION_SAFE to simply RECURSION.
      Now only callbacks that request to have recursion protecting it will
      have the added trampoline to do so.
      
      Also remove the outdated comment about "PER_CPU" when determining to
      use the ftrace_ops_assist_func.
      
      Link: https://lkml.kernel.org/r/20201028115613.742454631@goodmis.org
      Link: https://lkml.kernel.org/r/20201106023547.904270143@goodmis.org
      
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Josh  Poimboeuf <jpoimboe@redhat.com>
      Cc: Jiri Kosina <jikos@kernel.org>
      Cc: Masami Hiramatsu <mhiramat@kernel.org>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Jonathan Corbet <corbet@lwn.net>
      Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
      Cc: Miroslav Benes <mbenes@suse.cz>
      Cc: Kamalesh Babulal <kamalesh@linux.vnet.ibm.com>
      Cc: Petr Mladek <pmladek@suse.com>
      Cc: linux-doc@vger.kernel.org
      Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
      a25d036d
    • Steven Rostedt (VMware)'s avatar
      perf/ftrace: Check for rcu_is_watching() in callback function · 5d029b03
      Steven Rostedt (VMware) authored
      
      
      If a ftrace callback requires "rcu_is_watching", then it adds the
      FTRACE_OPS_FL_RCU flag and it will not be called if RCU is not "watching".
      But this means that it will use a trampoline when called, and this slows
      down the function tracing a tad. By checking rcu_is_watching() from within
      the callback, it no longer needs the RCU flag set in the ftrace_ops and it
      can be safely called directly.
      
      Link: https://lkml.kernel.org/r/20201028115613.591878956@goodmis.org
      Link: https://lkml.kernel.org/r/20201106023547.711035826@goodmis.org
      
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Josh  Poimboeuf <jpoimboe@redhat.com>
      Cc: Jiri Kosina <jikos@kernel.org>
      Cc: Miroslav Benes <mbenes@suse.cz>
      Cc: Petr Mladek <pmladek@suse.com>
      Cc: Masami Hiramatsu <mhiramat@kernel.org>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
      5d029b03
    • Steven Rostedt (VMware)'s avatar
      perf/ftrace: Add recursion protection to the ftrace callback · 5d15a624
      Steven Rostedt (VMware) authored
      
      
      If a ftrace callback does not supply its own recursion protection and
      does not set the RECURSION_SAFE flag in its ftrace_ops, then ftrace will
      make a helper trampoline to do so before calling the callback instead of
      just calling the callback directly.
      
      The default for ftrace_ops is going to change. It will expect that handlers
      provide their own recursion protection, unless its ftrace_ops states
      otherwise.
      
      Link: https://lkml.kernel.org/r/20201028115613.444477858@goodmis.org
      Link: https://lkml.kernel.org/r/20201106023547.466892083@goodmis.org
      
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Josh  Poimboeuf <jpoimboe@redhat.com>
      Cc: Jiri Kosina <jikos@kernel.org>
      Cc: Miroslav Benes <mbenes@suse.cz>
      Cc: Petr Mladek <pmladek@suse.com>
      Cc: Masami Hiramatsu <mhiramat@kernel.org>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
      5d15a624
    • Steven Rostedt (VMware)'s avatar
      livepatch: Trigger WARNING if livepatch function fails due to recursion · 4b750b57
      Steven Rostedt (VMware) authored
      
      
      If for some reason a function is called that triggers the recursion
      detection of live patching, trigger a warning. By not executing the live
      patch code, it is possible that the old unpatched function will be called
      placing the system into an unknown state.
      
      Link: https://lore.kernel.org/r/20201029145709.GD16774@alley
      Link: https://lkml.kernel.org/r/20201106023547.312639435@goodmis.org
      
      Cc: Masami Hiramatsu <mhiramat@kernel.org>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Josh Poimboeuf <jpoimboe@redhat.com>
      Cc: Jiri Kosina <jikos@kernel.org>
      Cc: Joe Lawrence <joe.lawrence@redhat.com>
      Cc: live-patching@vger.kernel.org
      Suggested-by: default avatarMiroslav Benes <mbenes@suse.cz>
      Reviewed-by: default avatarPetr Mladek <pmladek@suse.com>
      Acked-by: default avatarMiroslav Benes <mbenes@suse.cz>
      Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
      4b750b57
    • Steven Rostedt (VMware)'s avatar
      livepatch/ftrace: Add recursion protection to the ftrace callback · 13f3ea9a
      Steven Rostedt (VMware) authored
      
      
      If a ftrace callback does not supply its own recursion protection and
      does not set the RECURSION_SAFE flag in its ftrace_ops, then ftrace will
      make a helper trampoline to do so before calling the callback instead of
      just calling the callback directly.
      
      The default for ftrace_ops is going to change. It will expect that handlers
      provide their own recursion protection, unless its ftrace_ops states
      otherwise.
      
      Link: https://lkml.kernel.org/r/20201028115613.291169246@goodmis.org
      Link: https://lkml.kernel.org/r/20201106023547.122802424@goodmis.org
      
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Masami Hiramatsu <mhiramat@kernel.org>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Josh Poimboeuf <jpoimboe@redhat.com>
      Cc: Jiri Kosina <jikos@kernel.org>
      Cc: Joe Lawrence <joe.lawrence@redhat.com>
      Cc: live-patching@vger.kernel.org
      Reviewed-by: default avatarPetr Mladek <pmladek@suse.com>
      Acked-by: default avatarMiroslav Benes <mbenes@suse.cz>
      Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
      13f3ea9a
    • Steven Rostedt (VMware)'s avatar
      kprobes/ftrace: Add recursion protection to the ftrace callback · c536aa1c
      Steven Rostedt (VMware) authored
      
      
      If a ftrace callback does not supply its own recursion protection and
      does not set the RECURSION_SAFE flag in its ftrace_ops, then ftrace will
      make a helper trampoline to do so before calling the callback instead of
      just calling the callback directly.
      
      The default for ftrace_ops is going to change. It will expect that handlers
      provide their own recursion protection, unless its ftrace_ops states
      otherwise.
      
      Link: https://lkml.kernel.org/r/20201028115613.140212174@goodmis.org
      Link: https://lkml.kernel.org/r/20201106023546.944907560@goodmis.org
      
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Josh  Poimboeuf <jpoimboe@redhat.com>
      Cc: Jiri Kosina <jikos@kernel.org>
      Cc: Miroslav Benes <mbenes@suse.cz>
      Cc: Petr Mladek <pmladek@suse.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Guo Ren <guoren@kernel.org>
      Cc: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>
      Cc: Helge Deller <deller@gmx.de>
      Cc: Michael Ellerman <mpe@ellerman.id.au>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Heiko Carstens <hca@linux.ibm.com>
      Cc: Vasily Gorbik <gor@linux.ibm.com>
      Cc: Christian Borntraeger <borntraeger@de.ibm.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: x86@kernel.org
      Cc: "H. Peter Anvin" <hpa@zytor.com>
      Cc: "Naveen N. Rao" <naveen.n.rao@linux.ibm.com>
      Cc: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: linux-csky@vger.kernel.org
      Cc: linux-parisc@vger.kernel.org
      Cc: linuxppc-dev@lists.ozlabs.org
      Cc: linux-s390@vger.kernel.org
      Acked-by: default avatarMasami Hiramatsu <mhiramat@kernel.org>
      Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
      c536aa1c
    • Steven Rostedt (VMware)'s avatar
      pstore/ftrace: Add recursion protection to the ftrace callback · 6cdf9418
      Steven Rostedt (VMware) authored
      
      
      If a ftrace callback does not supply its own recursion protection and
      does not set the RECURSION_SAFE flag in its ftrace_ops, then ftrace will
      make a helper trampoline to do so before calling the callback instead of
      just calling the callback directly.
      
      The default for ftrace_ops is going to change. It will expect that handlers
      provide their own recursion protection, unless its ftrace_ops states
      otherwise.
      
      Link: https://lkml.kernel.org/r/20201028115612.990886844@goodmis.org
      Link: https://lkml.kernel.org/r/20201106023546.720372267@goodmis.org
      
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Josh  Poimboeuf <jpoimboe@redhat.com>
      Cc: Jiri Kosina <jikos@kernel.org>
      Cc: Miroslav Benes <mbenes@suse.cz>
      Cc: Petr Mladek <pmladek@suse.com>
      Cc: Masami Hiramatsu <mhiramat@kernel.org>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Thomas Meyer <thomas@m3y3r.de>
      Reviewed-by: default avatarKees Cook <keescook@chromium.org>
      Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
      6cdf9418
    • Steven Rostedt (VMware)'s avatar
      ftrace: Optimize testing what context current is in · da5afbeb
      Steven Rostedt (VMware) authored
      
      
      The preempt_count() is not a simple location in memory, it could be part of
      per_cpu code or more. Each access to preempt_count(), or one of its accessor
      functions (like in_interrupt()) takes several cycles. By reading
      preempt_count() once, and then doing tests to find the context against the
      value return is slightly faster than using in_nmi() and in_interrupt().
      
      Link: https://lkml.kernel.org/r/20201028115612.780796355@goodmis.org
      Link: https://lkml.kernel.org/r/20201106023546.558881845@goodmis.org
      
      Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
      da5afbeb
    • Steven Rostedt (VMware)'s avatar
      ftrace: Add ftrace_test_recursion_trylock() helper function · 6e4eb9cb
      Steven Rostedt (VMware) authored
      
      
      To make it easier for ftrace callbacks to have recursion protection, provide
      a ftrace_test_recursion_trylock() and ftrace_test_recursion_unlock() helper
      that tests for recursion.
      
      Link: https://lkml.kernel.org/r/20201028115612.634927593@goodmis.org
      Link: https://lkml.kernel.org/r/20201106023546.378584067@goodmis.org
      
      Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
      6e4eb9cb
    • Steven Rostedt (VMware)'s avatar
      ftrace: Move the recursion testing into global headers · 0264c8c9
      Steven Rostedt (VMware) authored
      
      
      Currently, if a callback is registered to a ftrace function and its
      ftrace_ops does not have the RECURSION flag set, it is encapsulated in a
      helper function that does the recursion for it.
      
      Really, all the callbacks should have their own recursion protection for
      performance reasons. But they should not all implement their own. Move the
      recursion helpers to global headers, so that all callbacks can use them.
      
      Link: https://lkml.kernel.org/r/20201028115612.460535535@goodmis.org
      Link: https://lkml.kernel.org/r/20201106023546.166456258@goodmis.org
      
      Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
      0264c8c9
  4. Nov 04, 2020
    • Steven Rostedt (VMware)'s avatar
      kprobes: Tell lockdep about kprobe nesting · 645f224e
      Steven Rostedt (VMware) authored
      
      
      Since the kprobe handlers have protection that prohibits other handlers from
      executing in other contexts (like if an NMI comes in while processing a
      kprobe, and executes the same kprobe, it will get fail with a "busy"
      return). Lockdep is unaware of this protection. Use lockdep's nesting api to
      differentiate between locks taken in INT3 context and other context to
      suppress the false warnings.
      
      Link: https://lore.kernel.org/r/20201102160234.fa0ae70915ad9e2b21c08b85@kernel.org
      
      Cc: Peter Zijlstra <peterz@infradead.org>
      Acked-by: default avatarMasami Hiramatsu <mhiramat@kernel.org>
      Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
      645f224e
  5. Nov 03, 2020
  6. Nov 02, 2020
    • Steven Rostedt (VMware)'s avatar
      ftrace: Handle tracing when switching between context · 726b3d3f
      Steven Rostedt (VMware) authored
      When an interrupt or NMI comes in and switches the context, there's a delay
      from when the preempt_count() shows the update. As the preempt_count() is
      used to detect recursion having each context have its own bit get set when
      tracing starts, and if that bit is already set, it is considered a recursion
      and the function exits. But if this happens in that section where context
      has changed but preempt_count() has not been updated, this will be
      incorrectly flagged as a recursion.
      
      To handle this case, create another bit call TRANSITION and test it if the
      current context bit is already set. Flag the call as a recursion if the
      TRANSITION bit is already set, and if not, set it and continue. The
      TRANSITION bit will be cleared normally on the return of the function that
      set it, or if the current context bit is clear, set it and clear the
      TRANSITION bit to allow for another transition between the current context
      and an even higher one.
      
      Cc: stable@vger.kernel.org
      Fixes: edc15caf
      
       ("tracing: Avoid unnecessary multiple recursion checks")
      Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
      726b3d3f
    • Steven Rostedt (VMware)'s avatar
      ftrace: Fix recursion check for NMI test · ee11b93f
      Steven Rostedt (VMware) authored
      The code that checks recursion will work to only do the recursion check once
      if there's nested checks. The top one will do the check, the other nested
      checks will see recursion was already checked and return zero for its "bit".
      On the return side, nothing will be done if the "bit" is zero.
      
      The problem is that zero is returned for the "good" bit when in NMI context.
      This will set the bit for NMIs making it look like *all* NMI tracing is
      recursing, and prevent tracing of anything in NMI context!
      
      The simple fix is to return "bit + 1" and subtract that bit on the end to
      get the real bit.
      
      Cc: stable@vger.kernel.org
      Fixes: edc15caf
      
       ("tracing: Avoid unnecessary multiple recursion checks")
      Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
      ee11b93f
    • Qiujun Huang's avatar
      tracing: Fix out of bounds write in get_trace_buf · c1acb4ac
      Qiujun Huang authored
      The nesting count of trace_printk allows for 4 levels of nesting. The
      nesting counter starts at zero and is incremented before being used to
      retrieve the current context's buffer. But the index to the buffer uses the
      nesting counter after it was incremented, and not its original number,
      which in needs to do.
      
      Link: https://lkml.kernel.org/r/20201029161905.4269-1-hqjagain@gmail.com
      
      Cc: stable@vger.kernel.org
      Fixes: 3d9622c1
      
       ("tracing: Add barrier to trace_printk() buffer nesting modification")
      Signed-off-by: default avatarQiujun Huang <hqjagain@gmail.com>
      Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
      c1acb4ac
    • Linus Torvalds's avatar
      Linux 5.10-rc2 · 3cea11cd
      Linus Torvalds authored
      v5.10-rc2
      3cea11cd
    • Linus Torvalds's avatar
      Merge tag 'x86-urgent-2020-11-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 7b56fbd8
      Linus Torvalds authored
      Pull x86 fixes from Thomas Gleixner:
       "Three fixes all related to #DB:
      
         - Handle the BTF bit correctly so it doesn't get lost due to a kernel
           #DB
      
         - Only clear and set the virtual DR6 value used by ptrace on user
           space triggered #DB. A kernel #DB must leave it alone to ensure
           data consistency for ptrace.
      
         - Make the bitmasking of the virtual DR6 storage correct so it does
           not lose DR_STEP"
      
      * tag 'x86-urgent-2020-11-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/debug: Fix DR_STEP vs ptrace_get_debugreg(6)
        x86/debug: Only clear/set ->virtual_dr6 for userspace #DB
        x86/debug: Fix BTF handling
      7b56fbd8
    • Linus Torvalds's avatar
      Merge tag 'timers-urgent-2020-11-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 4312e0e8
      Linus Torvalds authored
      Pull timer fixes from Thomas Gleixner:
       "A few fixes for timers/timekeeping:
      
         - Prevent undefined behaviour in the timespec64_to_ns() conversion
           which is used for converting user supplied time input to
           nanoseconds. It lacked overflow protection.
      
         - Mark sched_clock_read_begin/retry() to prevent recursion in the
           tracer
      
         - Remove unused debug functions in the hrtimer and timerlist code"
      
      * tag 'timers-urgent-2020-11-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        time: Prevent undefined behaviour in timespec64_to_ns()
        timers: Remove unused inline funtion debug_timer_free()
        hrtimer: Remove unused inline function debug_hrtimer_free()
        time/sched_clock: Mark sched_clock_read_begin/retry() as notrace
      4312e0e8
    • Linus Torvalds's avatar
      Merge tag 'smp-urgent-2020-11-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 82423b46
      Linus Torvalds authored
      Pull smp fix from Thomas Gleixner:
       "A single fix for stop machine.
      
        Mark functions no trace to prevent a crash caused by recursion when
        enabling or disabling a tracer on RISC-V (probably all architectures
        which patch through stop machine)"
      
      * tag 'smp-urgent-2020-11-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        stop_machine, rcu: Mark functions as notrace
      82423b46
    • Linus Torvalds's avatar
      Merge tag 'locking-urgent-2020-11-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 8d99084e
      Linus Torvalds authored
      Pull locking fixes from Thomas Gleixner:
       "A couple of locking fixes:
      
         - Fix incorrect failure injection handling in the fuxtex code
      
         - Prevent a preemption warning in lockdep when tracking
           local_irq_enable() and interrupts are already enabled
      
         - Remove more raw_cpu_read() usage from lockdep which causes state
           corruption on !X86 architectures.
      
         - Make the nr_unused_locks accounting in lockdep correct again"
      
      * tag 'locking-urgent-2020-11-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        lockdep: Fix nr_unused_locks accounting
        locking/lockdep: Remove more raw_cpu_read() usage
        futex: Fix incorrect should_fail_futex() handling
        lockdep: Fix preemption WARN for spurious IRQ-enable
      8d99084e
    • Linus Torvalds's avatar
      Merge tag 'char-misc-5.10-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 31f02006
      Linus Torvalds authored
      Pull char/misc fixes/removals from Greg KH:
       "Here's some small fixes for 5.10-rc2 and a big driver removal.
      
        The fixes are for some reported issues in the interconnect and
        coresight drivers, nothing major.
      
        The "big" driver removal is the MIC drivers have been asked to be
        removed as the hardware never shipped and Intel no longer wants to
        maintain something that no one can use. This is welcomed by many as
        the DMA usage of these drivers was "interesting" and the security
        people were starting to question some issues that were starting to be
        found in the codebase.
      
        Note, one of the subsystems for this driver, the "VOP" code, will
        probably come back in future kernel versions as it was looking to
        potentially solve some PCIe virtualization issues that a number of
        other vendors were wanting to solve. But as-is, this codebase didn't
        work for anyone else so no actual functionality is being removed.
      
        All of these have been in linux-next with no reported issues"
      
      * tag 'char-misc-5.10-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
        coresight: cti: Initialize dynamic sysfs attributes
        coresight: Fix uninitialised pointer bug in etm_setup_aux()
        coresight: add module license
        misc: mic: remove the MIC drivers
        interconnect: qcom: use icc_sync state for sm8[12]50
        interconnect: qcom: Ensure that the floor bandwidth value is enforced
        interconnect: qcom: sc7180: Init BCMs before creating the nodes
        interconnect: qcom: sdm845: Init BCMs before creating the nodes
        interconnect: Aggregate before setting initial bandwidth
        interconnect: qcom: sdm845: Enable keepalive for the MM1 BCM
      31f02006
    • Linus Torvalds's avatar
      Merge tag 'driver-core-5.10-rc2' of... · 9c75b68b
      Linus Torvalds authored
      Merge tag 'driver-core-5.10-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core and documentation fixes from Greg KH:
       "Here is one tiny debugfs change to fix up an API where the last user
        was successfully fixed up in 5.10-rc1 (so it couldn't be merged
        earlier), and a much larger Documentation/ABI/ update to the files so
        they can be automatically parsed by our tools.
      
        The Documentation/ABI/ updates are just formatting issues, small ones
        to bring the files into parsable format, and have been acked by
        numerous subsystem maintainers and the documentation maintainer. I
        figured it was good to get this into 5.10-rc2 to help wih the merge
        issues that would arise if these were to stick in linux-next until
        5.11-rc1.
      
        The debugfs change has been in linux-next for a long time, and the
        Documentation updates only for the last linux-next release"
      
      * tag 'driver-core-5.10-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (40 commits)
        scripts: get_abi.pl: assume ReST format by default
        docs: ABI: sysfs-class-led-trigger-pattern: remove hw_pattern duplication
        docs: ABI: sysfs-class-backlight: unify ABI documentation
        docs: ABI: sysfs-c2port: remove a duplicated entry
        docs: ABI: sysfs-class-power: unify duplicated properties
        docs: ABI: unify /sys/class/leds/<led>/brightness documentation
        docs: ABI: stable: remove a duplicated documentation
        docs: ABI: change read/write attributes
        docs: ABI: cleanup several ABI documents
        docs: ABI: sysfs-bus-nvdimm: use the right format for ABI
        docs: ABI: vdso: use the right format for ABI
        docs: ABI: fix syntax to be parsed using ReST notation
        docs: ABI: convert testing/configfs-acpi to ReST
        docs: Kconfig/Makefile: add a check for broken ABI files
        docs: abi-testing.rst: enable --rst-sources when building docs
        docs: ABI: don't escape ReST-incompatible chars from obsolete and removed
        docs: ABI: create a 2-depth index for ABI
        docs: ABI: make it parse ABI/stable as ReST-compatible files
        docs: ABI: sysfs-uevent: make it compatible with ReST output
        docs: ABI: testing: make the files compatible with ReST output
        ...
      9c75b68b
    • Linus Torvalds's avatar
      Merge tag 'staging-5.10-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · 2376cca0
      Linus Torvalds authored
      Pull staging driver fixes from Greg KH:
       "Here are some small staging driver fixes for issues that have been
        reported in 5.10-rc1:
      
         - octeon driver fixes
      
         - wfx driver fixes
      
         - memory leak fix in vchiq driver
      
         - fieldbus driver bugfix
      
         - comedi driver bugfix
      
        All of these have been in linux-next with no reported issues"
      
      * tag 'staging-5.10-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
        staging: fieldbus: anybuss: jump to correct label in an error path
        staging: wfx: fix test on return value of gpiod_get_value()
        staging: wfx: fix use of uninitialized pointer
        staging: mmal-vchiq: Fix memory leak for vchiq_instance
        staging: comedi: cb_pcidas: Allow 2-channel commands for AO subdevice
        staging: octeon: Drop on uncorrectable alignment or FCS error
        staging: octeon: repair "fixed-link" support
      2376cca0
    • Linus Torvalds's avatar
      Merge tag 'tty-5.10-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · 2754a42e
      Linus Torvalds authored
      Pull tty/serial fixes from Greg KH:
       "Here are some small TTY and Serial driver fixes for reported issues
        for 5.10-rc2. They include:
      
         - vt ioctl bugfix for reported problems
      
         - fsl_lpuart serial driver fix
      
         - 21285 serial driver bugfix
      
        All have been in linux-next with no reported issues"
      
      * tag 'tty-5.10-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
        vt_ioctl: fix GIO_UNIMAP regression
        vt: keyboard, extend func_buf_lock to readers
        vt: keyboard, simplify vt_kdgkbsent
        tty: serial: fsl_lpuart: LS1021A has a FIFO size of 16 words, like LS1028A
        tty: serial: 21285: fix lockup on open
      2754a42e
    • Linus Torvalds's avatar
      Merge tag 'usb-5.10-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 9b5ff3c9
      Linus Torvalds authored
      Pull USB driver fixes from Greg KH:
       "Here are a number of small bugfixes for reported issues in some USB
        drivers. They include:
      
         - typec bugfixes
      
         - xhci bugfixes and lockdep warning fixes
      
         - cdc-acm driver regression fix
      
         - kernel doc fixes
      
         - cdns3 driver bugfixes for a bunch of reported issues
      
         - other tiny USB driver fixes
      
        All have been in linux-next with no reported issues"
      
      * tag 'usb-5.10-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
        usb: cdns3: gadget: own the lock wrongly at the suspend routine
        usb: cdns3: Fix on-chip memory overflow issue
        usb: cdns3: gadget: suspicious implicit sign extension
        xhci: Don't create stream debugfs files with spinlock held.
        usb: xhci: Workaround for S3 issue on AMD SNPS 3.0 xHC
        xhci: Fix sizeof() mismatch
        usb: typec: stusb160x: fix signedness comparison issue with enum variables
        usb: typec: add missing MODULE_DEVICE_TABLE() to stusb160x
        USB: apple-mfi-fastcharge: don't probe unhandled devices
        usbcore: Check both id_table and match() when both available
        usb: host: ehci-tegra: Fix error handling in tegra_ehci_probe()
        usb: typec: stusb160x: fix an IS_ERR() vs NULL check in probe
        usb: typec: tcpm: reset hard_reset_count for any disconnect
        usb: cdc-acm: fix cooldown mechanism
        usb: host: fsl-mph-dr-of: check return of dma_set_mask()
        usb: fix kernel-doc markups
        usb: typec: stusb160x: fix some signedness bugs
        usb: cdns3: Variable 'length' set but not used
      9b5ff3c9
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 2d38c80d
      Linus Torvalds authored
      Pull kvm fixes from Paolo Bonzini:
       "ARM:
         - selftest fix
         - force PTE mapping on device pages provided via VFIO
         - fix detection of cacheable mapping at S2
         - fallback to PMD/PTE mappings for composite huge pages
         - fix accounting of Stage-2 PGD allocation
         - fix AArch32 handling of some of the debug registers
         - simplify host HYP entry
         - fix stray pointer conversion on nVHE TLB invalidation
         - fix initialization of the nVHE code
         - simplify handling of capabilities exposed to HYP
         - nuke VCPUs caught using a forbidden AArch32 EL0
      
        x86:
         - new nested virtualization selftest
         - miscellaneous fixes
         - make W=1 fixes
         - reserve new CPUID bit in the KVM leaves"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        KVM: vmx: remove unused variable
        KVM: selftests: Don't require THP to run tests
        KVM: VMX: eVMCS: make evmcs_sanitize_exec_ctrls() work again
        KVM: selftests: test behavior of unmapped L2 APIC-access address
        KVM: x86: Fix NULL dereference at kvm_msr_ignored_check()
        KVM: x86: replace static const variables with macros
        KVM: arm64: Handle Asymmetric AArch32 systems
        arm64: cpufeature: upgrade hyp caps to final
        arm64: cpufeature: reorder cpus_have_{const, final}_cap()
        KVM: arm64: Factor out is_{vhe,nvhe}_hyp_code()
        KVM: arm64: Force PTE mapping on fault resulting in a device mapping
        KVM: arm64: Use fallback mapping sizes for contiguous huge page sizes
        KVM: arm64: Fix masks in stage2_pte_cacheable()
        KVM: arm64: Fix AArch32 handling of DBGD{CCINT,SCRext} and DBGVCR
        KVM: arm64: Allocate stage-2 pgd pages with GFP_KERNEL_ACCOUNT
        KVM: arm64: Drop useless PAN setting on host EL1 to EL2 transition
        KVM: arm64: Remove leftover kern_hyp_va() in nVHE TLB invalidation
        KVM: arm64: Don't corrupt tpidr_el2 on failed HVC call
        x86/kvm: Reserve KVM_FEATURE_MSI_EXT_DEST_ID
      2d38c80d
  7. Nov 01, 2020
    • Linus Torvalds's avatar
      Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost · c2dc4c07
      Linus Torvalds authored
      Pull vhost fixes from Michael Tsirkin:
       "Fixes all over the place.
      
        A new UAPI is borderline: can also be considered a new feature but
        also seems to be the only way we could come up with to fix addressing
        for userspace - and it seems important to switch to it now before
        userspace making assumptions about addressing ability of devices is
        set in stone"
      
      * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost:
        vdpasim: allow to assign a MAC address
        vdpasim: fix MAC address configuration
        vdpa: handle irq bypass register failure case
        vdpa_sim: Fix DMA mask
        Revert "vhost-vdpa: fix page pinning leakage in error path"
        vdpa/mlx5: Fix error return in map_direct_mr()
        vhost_vdpa: Return -EFAULT if copy_from_user() fails
        vdpa_sim: implement get_iova_range()
        vhost: vdpa: report iova range
        vdpa: introduce config op to get valid iova range
      c2dc4c07