|
@@ -47,8 +47,13 @@ static int ds_selftest_bts_consistency(const struct bts_trace *trace)
|
|
|
printk(KERN_CONT "bad bts buffer setup...");
|
|
|
error = -1;
|
|
|
}
|
|
|
+ /*
|
|
|
+ * We allow top in [begin; end], since its not clear when the
|
|
|
+ * overflow adjustment happens: after the increment or before the
|
|
|
+ * write.
|
|
|
+ */
|
|
|
if ((trace->ds.top < trace->ds.begin) ||
|
|
|
- (trace->ds.end <= trace->ds.top)) {
|
|
|
+ (trace->ds.end < trace->ds.top)) {
|
|
|
printk(KERN_CONT "bts top out of bounds...");
|
|
|
error = -1;
|
|
|
}
|