Commit bd780f3
committed
drm/i915: Track all held rpm wakerefs
Everytime we take a wakeref, record the stack trace of where it was
taken; clearing the set if we ever drop back to no owners. For debugging
a rpm leak, we can look at all the current wakerefs and check if they
have a matching rpm_put.
v2: Use skip=0 for unwinding the stack as it appears our noinline
function doesn't appear on the stack (nor does save_stack_trace itself!)
v3: Allow rpm->debug_count to disappear between inspections and so
avoid calling krealloc(0) as that may return a ZERO_PTR not NULL! (Mika)
v4: Show who last acquire/released the runtime pm
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Jani Nikula <jani.nikula@intel.com>
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Tested-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190114142129.24398-1-chris@chris-wilson.co.uk1 parent 74256b7 commit bd780f3
File tree
7 files changed
+324
-50
lines changed- drivers/gpu/drm/i915
- selftests
7 files changed
+324
-50
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
| 24 | + | |
24 | 25 | | |
25 | 26 | | |
26 | 27 | | |
27 | 28 | | |
28 | | - | |
29 | 29 | | |
30 | 30 | | |
31 | 31 | | |
| |||
173 | 173 | | |
174 | 174 | | |
175 | 175 | | |
| 176 | + | |
176 | 177 | | |
177 | 178 | | |
178 | 179 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2702 | 2702 | | |
2703 | 2703 | | |
2704 | 2704 | | |
| 2705 | + | |
| 2706 | + | |
| 2707 | + | |
| 2708 | + | |
| 2709 | + | |
| 2710 | + | |
2705 | 2711 | | |
2706 | 2712 | | |
2707 | 2713 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
905 | 905 | | |
906 | 906 | | |
907 | 907 | | |
| 908 | + | |
908 | 909 | | |
909 | 910 | | |
910 | 911 | | |
| |||
1807 | 1808 | | |
1808 | 1809 | | |
1809 | 1810 | | |
1810 | | - | |
1811 | | - | |
| 1811 | + | |
1812 | 1812 | | |
1813 | 1813 | | |
1814 | 1814 | | |
| |||
2010 | 2010 | | |
2011 | 2011 | | |
2012 | 2012 | | |
| 2013 | + | |
| 2014 | + | |
2013 | 2015 | | |
2014 | 2016 | | |
2015 | 2017 | | |
| |||
2965 | 2967 | | |
2966 | 2968 | | |
2967 | 2969 | | |
2968 | | - | |
| 2970 | + | |
2969 | 2971 | | |
2970 | 2972 | | |
2971 | 2973 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
45 | 45 | | |
46 | 46 | | |
47 | 47 | | |
| 48 | + | |
48 | 49 | | |
49 | 50 | | |
50 | 51 | | |
| |||
1156 | 1157 | | |
1157 | 1158 | | |
1158 | 1159 | | |
| 1160 | + | |
| 1161 | + | |
| 1162 | + | |
| 1163 | + | |
| 1164 | + | |
| 1165 | + | |
| 1166 | + | |
| 1167 | + | |
| 1168 | + | |
| 1169 | + | |
| 1170 | + | |
| 1171 | + | |
| 1172 | + | |
| 1173 | + | |
| 1174 | + | |
| 1175 | + | |
| 1176 | + | |
| 1177 | + | |
| 1178 | + | |
1159 | 1179 | | |
1160 | 1180 | | |
1161 | 1181 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
41 | 41 | | |
42 | 42 | | |
43 | 43 | | |
| 44 | + | |
| 45 | + | |
44 | 46 | | |
45 | 47 | | |
46 | 48 | | |
| |||
2084 | 2086 | | |
2085 | 2087 | | |
2086 | 2088 | | |
| 2089 | + | |
2087 | 2090 | | |
2088 | 2091 | | |
2089 | 2092 | | |
| |||
2106 | 2109 | | |
2107 | 2110 | | |
2108 | 2111 | | |
| 2112 | + | |
2109 | 2113 | | |
2110 | 2114 | | |
2111 | 2115 | | |
| |||
2123 | 2127 | | |
2124 | 2128 | | |
2125 | 2129 | | |
2126 | | - | |
| 2130 | + | |
2127 | 2131 | | |
2128 | | - | |
| 2132 | + | |
2129 | 2133 | | |
2130 | 2134 | | |
2131 | 2135 | | |
2132 | 2136 | | |
2133 | | - | |
| 2137 | + | |
2134 | 2138 | | |
2135 | | - | |
2136 | | - | |
| 2139 | + | |
| 2140 | + | |
2137 | 2141 | | |
2138 | 2142 | | |
2139 | 2143 | | |
2140 | 2144 | | |
2141 | 2145 | | |
2142 | | - | |
| 2146 | + | |
2143 | 2147 | | |
2144 | 2148 | | |
2145 | 2149 | | |
| |||
2156 | 2160 | | |
2157 | 2161 | | |
2158 | 2162 | | |
2159 | | - | |
| 2163 | + | |
2160 | 2164 | | |
2161 | | - | |
| 2165 | + | |
2162 | 2166 | | |
2163 | 2167 | | |
2164 | 2168 | | |
2165 | 2169 | | |
2166 | | - | |
| 2170 | + | |
2167 | 2171 | | |
2168 | 2172 | | |
2169 | 2173 | | |
| |||
2173 | 2177 | | |
2174 | 2178 | | |
2175 | 2179 | | |
2176 | | - | |
| 2180 | + | |
2177 | 2181 | | |
2178 | | - | |
| 2182 | + | |
2179 | 2183 | | |
2180 | 2184 | | |
2181 | | - | |
2182 | | - | |
2183 | | - | |
2184 | | - | |
| 2185 | + | |
| 2186 | + | |
| 2187 | + | |
| 2188 | + | |
| 2189 | + | |
| 2190 | + | |
| 2191 | + | |
| 2192 | + | |
| 2193 | + | |
| 2194 | + | |
| 2195 | + | |
| 2196 | + | |
| 2197 | + | |
| 2198 | + | |
2185 | 2199 | | |
2186 | 2200 | | |
2187 | 2201 | | |
| |||
0 commit comments