Necessary to annotate functions where we might acquire a mutex_lock_nested() or similar. Needed by i915.
Showing the changes to include/linux (1 of 1 file). Show all
Unified · Split
| @@ -628,6 +628,13 @@ do { \ · 627 unmodified lines | ||
| 628 | 628 | lock_acquire(&(lock)->dep_map, 0, 0, 1, 1, NULL, _THIS_IP_); \ |
| 629 | 629 | lock_release(&(lock)->dep_map, 0, _THIS_IP_); \ |
| 630 | 630 | } while (0) |
| 631 | +# define might_lock_nested(lock, subclass) \ | |
| 632 | +do { \ | |
| 633 | + typecheck(struct lockdep_map *, &(lock)->dep_map); \ | |
| 634 | + lock_acquire(&(lock)->dep_map, subclass, 0, 1, 1, NULL, \ | |
| 635 | + _THIS_IP_); \ | |
| 636 | + lock_release(&(lock)->dep_map, 0, _THIS_IP_); \ | |
| 637 | +} while (0) | |
| 631 | 638 | |
| 632 | 639 | #define lockdep_assert_irqs_enabled() do { \ |
| 633 | 640 | WARN_ONCE(debug_locks && !current->lockdep_recursion && \ |
| @@ -650,6 +657,7 @@ do { \ · 16 unmodified lines | ||
| 650 | 657 | #else |
| 651 | 658 | # define might_lock(lock) do { } while (0) |
| 652 | 659 | # define might_lock_read(lock) do { } while (0) |
| 660 | +# define might_lock_nested(lock, subclass) do { } while (0) | |
| 653 | 661 | # define lockdep_assert_irqs_enabled() do { } while (0) |
| 654 | 662 | # define lockdep_assert_irqs_disabled() do { } while (0) |
| 655 | 663 | # define lockdep_assert_in_irq() do { } while (0) |