Bug #680
closedBLAST should not ignore __blast_assert "function call" on stack overflow
0%
Description
BLAST's -fdepth
option, which makes it cut paths that are 6 or more function calls deeper than the entry point, was introduced to optimize its work with GIT. However, it was found out (see bug #666) that BLAST misses the opportunity to "enter" this "function", because the available depth is exhausted.
That's a good optimization opportunity, and we should take an advantage of it.
Updated by Vadim Mutilin almost 14 years ago
Examples (ldv-git on Kernel-59365d136d205cc20fe666ca7f89b1c5001b0d5a)
- bttv-vbi.ko ldv_main0_plain_sorted_withcheck blast
lock without unlock at the end actions of spin_unlock is out of the depth ldv_spin_unlock_irqrestore_1(blast_must_tmp__11639, blast_must_tmp__11640) { /* The function body is undefined. */ };
- cm.ko ldv_main0_plain_sorted_withcheck blast
depth
- cs5535-mfgpt.ko ldv_main0_plain_sorted_withcheck blast
depth
Updated by Alexey Khoroshilov almost 14 years ago
- Priority changed from Normal to High
It is really frustrating for end user and I see this problem rather often, so it should be fixed soon.
Updated by Alexey Khoroshilov almost 14 years ago
My idea is that we should ignore fdepth option for model functions at all.
For now, we can consider a function is model if it starts from ldv_.
Updated by Pavel Shved almost 14 years ago
...and does the __blast_assert
start with ldv_
? ;-)
Yes, enforcing depth inside the model functions is nonsense. We should fix it asap.
Would an option -ignore-depth-for ldv_
, with an additional fix to ignore depth for BLAST's internal pseudo-functions, suffice?
Updated by Alexey Khoroshilov almost 14 years ago
Pavel Shved wrote:
Would an option
-ignore-depth-for ldv_
, with an additional fix to ignore depth for BLAST's internal pseudo-functions, suffice?
Yes, that would be great.
Updated by Pavel Shved almost 14 years ago
- Status changed from New to Resolved
- Assignee changed from Pavel Shved to Alexandr Strakh
- Published in build set to 6032b92
Alexander fixed BLAST, and the fix that turns this option on for LDV-Git is in 6032b92.
Updated by Evgeny Novikov over 13 years ago
Why is it not closed? Because of blast_assert that doesn't begin with _ldv is ignored?
Updated by Pavel Shved over 13 years ago
- Status changed from Resolved to Closed
It now does contain this prefix, and error-trace-visualizer seems to work well with it. Yes, the bug may be closed now.
Updated by Pavel Shved about 13 years ago
- Project changed from Linux Driver Verification to BLAST
- Category deleted (
BLAST)
Updated by Pavel Shved about 13 years ago
- Project changed from BLAST to Linux Driver Verification
- Target version deleted (
2.6)