aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/lockdep.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/lockdep.h')
-rw-r--r--include/linux/lockdep.h17
1 files changed, 16 insertions, 1 deletions
diff --git a/include/linux/lockdep.h b/include/linux/lockdep.h
index 3d3386b88b6a..0e843bf65877 100644
--- a/include/linux/lockdep.h
+++ b/include/linux/lockdep.h
@@ -130,12 +130,24 @@ struct lock_time {
130 unsigned long nr; 130 unsigned long nr;
131}; 131};
132 132
133enum bounce_type {
134 bounce_acquired_write,
135 bounce_acquired_read,
136 bounce_contended_write,
137 bounce_contended_read,
138 nr_bounce_types,
139
140 bounce_acquired = bounce_acquired_write,
141 bounce_contended = bounce_contended_write,
142};
143
133struct lock_class_stats { 144struct lock_class_stats {
134 unsigned long contention_point[4]; 145 unsigned long contention_point[4];
135 struct lock_time read_waittime; 146 struct lock_time read_waittime;
136 struct lock_time write_waittime; 147 struct lock_time write_waittime;
137 struct lock_time read_holdtime; 148 struct lock_time read_holdtime;
138 struct lock_time write_holdtime; 149 struct lock_time write_holdtime;
150 unsigned long bounces[nr_bounce_types];
139}; 151};
140 152
141struct lock_class_stats lock_stats(struct lock_class *class); 153struct lock_class_stats lock_stats(struct lock_class *class);
@@ -150,6 +162,9 @@ struct lockdep_map {
150 struct lock_class_key *key; 162 struct lock_class_key *key;
151 struct lock_class *class_cache; 163 struct lock_class *class_cache;
152 const char *name; 164 const char *name;
165#ifdef CONFIG_LOCK_STAT
166 int cpu;
167#endif
153}; 168};
154 169
155/* 170/*
@@ -321,8 +336,8 @@ do { \
321 if (!try(_lock)) { \ 336 if (!try(_lock)) { \
322 lock_contended(&(_lock)->dep_map, _RET_IP_); \ 337 lock_contended(&(_lock)->dep_map, _RET_IP_); \
323 lock(_lock); \ 338 lock(_lock); \
324 lock_acquired(&(_lock)->dep_map); \
325 } \ 339 } \
340 lock_acquired(&(_lock)->dep_map); \
326} while (0) 341} while (0)
327 342
328#else /* CONFIG_LOCK_STAT */ 343#else /* CONFIG_LOCK_STAT */