]> Git Repo - linux.git/commitdiff
Merge branch 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
authorLinus Torvalds <[email protected]>
Fri, 15 Dec 2017 19:44:59 +0000 (11:44 -0800)
committerLinus Torvalds <[email protected]>
Fri, 15 Dec 2017 19:44:59 +0000 (11:44 -0800)
Pull locking fixes from Ingo Molnar:
 "Misc fixes:

   - Fix a S390 boot hang that was caused by the lock-break logic.
     Remove lock-break to begin with, as review suggested it was
     unreasonably fragile and our confidence in its continued good
     health is lower than our confidence in its removal.

   - Remove the lockdep cross-release checking code for now, because of
     unresolved false positive warnings. This should make lockdep work
     well everywhere again.

   - Get rid of the final (and single) ACCESS_ONCE() straggler and
     remove the API from v4.15.

   - Fix a liblockdep build warning"

* 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  tools/lib/lockdep: Add missing declaration of 'pr_cont()'
  checkpatch: Remove ACCESS_ONCE() warning
  compiler.h: Remove ACCESS_ONCE()
  tools/include: Remove ACCESS_ONCE()
  tools/perf: Convert ACCESS_ONCE() to READ_ONCE()
  locking/lockdep: Remove the cross-release locking checks
  locking/core: Remove break_lock field when CONFIG_GENERIC_LOCKBREAK=y
  locking/core: Fix deadlock during boot on systems with GENERIC_LOCKBREAK

1  2 
include/linux/sched.h

diff --combined include/linux/sched.h
index 5124ba7098301622af1a0f2217b31b462d0538b3,9ce6c3001e9fe542752b5c789a306eb842a9e9e9..d2588263a9893caa04d8854607207c41080927cc
@@@ -849,17 -849,6 +849,6 @@@ struct task_struct 
        struct held_lock                held_locks[MAX_LOCK_DEPTH];
  #endif
  
- #ifdef CONFIG_LOCKDEP_CROSSRELEASE
- #define MAX_XHLOCKS_NR 64UL
-       struct hist_lock *xhlocks; /* Crossrelease history locks */
-       unsigned int xhlock_idx;
-       /* For restoring at history boundaries */
-       unsigned int xhlock_idx_hist[XHLOCK_CTX_NR];
-       unsigned int hist_id;
-       /* For overwrite check at each context exit */
-       unsigned int hist_id_save[XHLOCK_CTX_NR];
- #endif
  #ifdef CONFIG_UBSAN
        unsigned int                    in_ubsan;
  #endif
@@@ -1503,11 -1492,7 +1492,11 @@@ static inline void set_task_comm(struc
        __set_task_comm(tsk, from, false);
  }
  
 -extern char *get_task_comm(char *to, struct task_struct *tsk);
 +extern char *__get_task_comm(char *to, size_t len, struct task_struct *tsk);
 +#define get_task_comm(buf, tsk) ({                    \
 +      BUILD_BUG_ON(sizeof(buf) != TASK_COMM_LEN);     \
 +      __get_task_comm(buf, sizeof(buf), tsk);         \
 +})
  
  #ifdef CONFIG_SMP
  void scheduler_ipi(void);
This page took 0.067409 seconds and 4 git commands to generate.