Open-Source Projects: Issueshttps://forge.ispras.ru/https://forge.ispras.ru/favicon.ico?16490126692022-03-29T17:22:12ZOpen-Source Projects
Redmine Klever - Feature #11513 (Closed): Add pattern search to error traces comparison functionshttps://forge.ispras.ru/issues/115132022-03-29T17:22:12ZAnton Vasilyevvasilyev@ispras.ru
<p>It will be good for verification tool research to have ability to specify error marks by pattern search within witness or CPAchecker log, like currently implemented for Unknowns.</p>
<p>Basic usecase: to have ability to distinguish different Unsafes within implementation of new features for verification tool by specifying error message.</p> Klever - Bug #11019 (Closed): Can't create new tags with 3d nesting levelhttps://forge.ispras.ru/issues/110192021-11-30T14:55:40ZAnton Vasilyevvasilyev@ispras.ru
<p>Warning "Tag name can't contains '-'" is thrown on creation of 3d nesting level tag.<br />Probably symbol '-' is taken from parent like "API models - Linux kernel".</p> C Instrumentation Framework - Bug #10871 (Closed): Incorrect line directives on struct with unionhttps://forge.ispras.ru/issues/108712021-06-30T12:10:22ZAnton Vasilyevvasilyev@ispras.ru
<p>Incorrect line directives on struct with union<br />struct fxregs_state is located from line 34 in /arch/x86/include/asm/fpu/types.h,<br />but produced cil file has wrong line 27</p>
<p>Problem could be reproduced on linux-5.12-rc3 drivers/usb/serial/ipw.ko</p> Klever - Bug #9393 (Rejected): Problem with memleak visualization on absent return from void func...https://forge.ispras.ru/issues/93932018-11-20T10:57:28ZAnton Vasilyevvasilyev@ispras.ru
<p>For void functions with absent return:<br /><pre><code class="c syntaxhl" data-language="c"><span class="cm">/*
* Use the Fisher-Yates shuffle algorithm on an array of lines.
*/</span>
<span class="k">static</span> <span class="kt">void</span> <span class="nf">shuffle_lines</span><span class="p">(</span><span class="kt">char</span> <span class="o">**</span><span class="n">lines</span><span class="p">,</span> <span class="kt">unsigned</span> <span class="n">numlines</span><span class="p">)</span>
<span class="p">{</span>
<span class="kt">unsigned</span> <span class="n">i</span><span class="p">;</span>
<span class="kt">unsigned</span> <span class="n">r</span><span class="p">;</span>
<span class="kt">char</span> <span class="o">*</span><span class="n">tmp</span><span class="p">;</span>
<span class="n">srand</span><span class="p">(</span><span class="n">monotonic_us</span><span class="p">());</span>
<span class="k">for</span> <span class="p">(</span><span class="n">i</span> <span class="o">=</span> <span class="n">numlines</span><span class="o">-</span><span class="mi">1</span><span class="p">;</span> <span class="n">i</span> <span class="o">></span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span><span class="o">--</span><span class="p">)</span> <span class="p">{</span>
<span class="n">r</span> <span class="o">=</span> <span class="n">rand</span><span class="p">();</span>
<span class="cm">/* RAND_MAX can be as small as 32767 */</span>
<span class="k">if</span> <span class="p">(</span><span class="n">i</span> <span class="o">></span> <span class="n">RAND_MAX</span><span class="p">)</span>
<span class="n">r</span> <span class="o">^=</span> <span class="n">rand</span><span class="p">()</span> <span class="o"><<</span> <span class="mi">15</span><span class="p">;</span>
<span class="n">r</span> <span class="o">%=</span> <span class="n">i</span> <span class="o">+</span> <span class="mi">1</span><span class="p">;</span>
<span class="n">tmp</span> <span class="o">=</span> <span class="n">lines</span><span class="p">[</span><span class="n">i</span><span class="p">];</span>
<span class="n">lines</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="o">=</span> <span class="n">lines</span><span class="p">[</span><span class="n">r</span><span class="p">];</span>
<span class="n">lines</span><span class="p">[</span><span class="n">r</span><span class="p">]</span> <span class="o">=</span> <span class="n">tmp</span><span class="p">;</span>
<span class="p">}</span>
<span class="p">}</span>
</code></pre></p>
<p>SMG generates warning edge without source code like:<br /><pre><code class="xml syntaxhl" data-language="xml"> <span class="nt"><edge</span> <span class="na">source=</span><span class="s">"A85098"</span> <span class="na">target=</span><span class="s">"A85104"</span><span class="nt">></span>
<span class="nt"><data</span> <span class="na">key=</span><span class="s">"returnFrom"</span><span class="nt">></span>shuffle_lines<span class="nt"></data></span>
<span class="nt"><data</span> <span class="na">key=</span><span class="s">"warning"</span><span class="nt">></span>Memory leak is detected<span class="nt"></data></span>
<span class="nt"></edge></span>
</code></pre></p>
<p>Require to specify Klever and SMG interaction for this corner case.</p> Klever - Bug #9378 (Closed): Wrong assume for ERR_PTR and PTR_ERRhttps://forge.ispras.ru/issues/93782018-11-08T15:24:32ZAnton Vasilyevvasilyev@ispras.ru
<p>Require to provide consistency of ldv_is_err with assumptions at ldv_err_ptr and ldv_ptr_err.</p> Klever - Feature #9137 (Closed): Specifications for linux v4.15https://forge.ispras.ru/issues/91372018-07-19T12:33:51ZAnton Vasilyevvasilyev@ispras.ru
<p>Require add model for v4.15 because of changes in<br />struct scsi_host_template<br />struct timer_list</p> Klever - Bug #9130 (Closed): Problems with building Linux 4.18https://forge.ispras.ru/issues/91302018-07-18T15:52:34ZAnton Vasilyevvasilyev@ispras.ru
<p>Require remove wrappers on configure kernel.</p>
<blockquote>
<p>Fixed on branch fix_linux_master_build <a class="changeset" title="Remove usage wrappers for kernel configure" href="https://forge.ispras.ru/projects/klever/repository/331/revisions/56d7b47b4c96c17a446958485f55e4db7315885f">56d7b47b4c</a></p>
</blockquote>
<p>Require add ignoring wrappers option.</p>
<blockquote>
<p>Fixed on branch fix_linux_master_build <a class="changeset" title="Add options for linux master build" href="https://forge.ispras.ru/projects/klever/repository/331/revisions/cec8a34d11ef8651cd5d3c7390533f706a3abfeb">cec8a34d11</a></p>
</blockquote>
<p>Need additional test.</p> Klever - Bug #9082 (Closed): Remove tag does not workhttps://forge.ispras.ru/issues/90822018-07-10T12:52:26ZAnton Vasilyevvasilyev@ispras.ru
<p>Tag remove opens confirmation dialogue,<br />But on "Remove" button of confirmation "Are you sure? All children of the selected tag will be also removed!" it shows "Ajax request error. Maybe connection refused." and doesn't perform tag removal.</p> Klever - Bug #8986 (Closed): Imprecise framebuffer_alloc initializationhttps://forge.ispras.ru/issues/89862018-06-21T18:51:00ZAnton Vasilyevvasilyev@ispras.ru
<p>Corresponding to source code framebuffer_alloc() should initialize info->par.</p>
<p><a class="external" href="http://ldvstore:8998/reports/component/1040963/unsafes/?tag=211">http://ldvstore:8998/reports/component/1040963/unsafes/?tag=211</a></p> Klever - Bug #8985 (Closed): Imprecise framebuffer_alloc initializationhttps://forge.ispras.ru/issues/89852018-06-21T18:50:45ZAnton Vasilyevvasilyev@ispras.ru
<p>Corresponding to source code framebuffer_alloc() should initialize info->par.</p>
<p><a class="external" href="http://ldvstore:8998/reports/component/1040963/unsafes/?tag=211">http://ldvstore:8998/reports/component/1040963/unsafes/?tag=211</a></p> Klever - Bug #8632 (Closed): Upload job archive is restricted while another job is runninghttps://forge.ispras.ru/issues/86322017-12-15T12:51:39ZAnton Vasilyevvasilyev@ispras.ru
<p>I'm trying to upload job archive on instance with one running job and catch error message:<br />"There are jobs in progress right now, uploading may corrupt it results. Please wait until it will be finished."</p>
<p>Does it really necessary to restrict this kind of uploading?</p> Klever - Feature #8562 (New): Add search for markshttps://forge.ispras.ru/issues/85622017-11-10T14:31:04ZAnton Vasilyevvasilyev@ispras.ru
<p>It will be useful for user to have ability to manual quick search through all marks.</p>
Possible search criteria for marks:
<ol>
<li>by some phrase at Description</li>
<li>function at error trace</li>
<li>tags, status</li>
</ol>
<p>It seems that functionality could extend View screen.</p> Klever - Bug #8302 (Closed): Collapse reports of Cancelled job loses number of taskshttps://forge.ispras.ru/issues/83022017-07-18T14:34:00ZAnton Vasilyevvasilyev@ispras.ru
<p>Cancelled Job doesn't report number of Unsafes, Safes and Unknowns after Collapse reports.<br />Corresponding job and screenshots are attached.</p> Klever - Feature #8292 (Closed): Modify permissions for tagshttps://forge.ispras.ru/issues/82922017-07-12T16:03:02ZAnton Vasilyevvasilyev@ispras.ru
<p>Require to change current permission model for tags.</p>
<p>Permissions separates into:<br /> 1. modification (edit, delete)<br /> 2. child creation</p>
<p>Each tag should have list of users with corresponding permissions.<br />Manager should have ability to modify these lists.<br />Author of tag will automatically assigned both permissions.</p> Klever - Bug #8275 (Rejected): Broken mark associations aren't properly shownhttps://forge.ispras.ru/issues/82752017-07-05T11:11:48ZAnton Vasilyevvasilyev@ispras.ru
<p>Creation mark for trace <a class="external" href="http://ldvstore:8998/reports/unsafe/1072782/">http://ldvstore:8998/reports/unsafe/1072782/</a> shows change list with several unchanged verdicts (on screen-shot).</p>
<p>Filter shows that mark exist and has 0 similarity, whereas log shows problem with comparison<br /><a class="external" href="http://ldvstore:8998/reports/unsafe/1248789/?view={%22columns%22%3A[%22verdict%22%2C%22similarity%22%2C%22status%22%2C%22source%22%2C%22tags%22%2C%22ass_type%22%2C%22ass_author%22%2C%22description%22]%2C%22similarity%22%3A[%220%22%2C%2250%22%2C%22100%22]}&view_type=10">http://ldvstore:8998/reports/unsafe/1248789/?view={%22columns%22%3A[%22verdict%22%2C%22similarity%22%2C%22status%22%2C%22source%22%2C%22tags%22%2C%22ass_type%22%2C%22ass_author%22%2C%22description%22]%2C%22similarity%22%3A[%220%22%2C%2250%22%2C%22100%22]}&view_type=10</a></p>
<p>The corresponding error:<br /><pre>
[05.Jul.2017 10:15:14] Global initialization edge can't contain enter
Traceback (most recent call last):
File "/var/www/bridge-new/reports/views.py", line 409, in report_unsafe
etv = GetETV(ArchiveFileContent(report, report.error_trace).content.decode('utf8'), request.user)
File "/var/www/bridge-new/reports/etv.py", line 474, in __init__
self.html_trace, self.assumes = self.__html_trace()
File "/var/www/bridge-new/reports/etv.py", line 487, in __html_trace
return self.__add_thread_lines(0, 0)[0:2]
File "/var/www/bridge-new/reports/etv.py", line 505, in __add_thread_lines
parsed_trace.add_line(edge_data)
File "/var/www/bridge-new/reports/etv.py", line 208, in add_line
raise ValueError("Global initialization edge can't contain enter")
ValueError: Global initialization edge can't contain enter
Stack (most recent call last):
File "/usr/local/bin/gunicorn", line 11, in <module>
sys.exit(run())
File "/usr/local/lib/python3.4/dist-packages/gunicorn/app/wsgiapp.py", line 74, in run
WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
File "/usr/local/lib/python3.4/dist-packages/gunicorn/app/base.py", line 192, in run
super(Application, self).run()
File "/usr/local/lib/python3.4/dist-packages/gunicorn/app/base.py", line 72, in run
Arbiter(self).run()
File "/usr/local/lib/python3.4/dist-packages/gunicorn/arbiter.py", line 189, in run
self.manage_workers()
File "/usr/local/lib/python3.4/dist-packages/gunicorn/arbiter.py", line 524, in manage_workers
self.spawn_workers()
File "/usr/local/lib/python3.4/dist-packages/gunicorn/arbiter.py", line 590, in spawn_workers
self.spawn_worker()
File "/usr/local/lib/python3.4/dist-packages/gunicorn/arbiter.py", line 557, in spawn_worker
worker.init_process()
File "/usr/local/lib/python3.4/dist-packages/gunicorn/workers/base.py", line 132, in init_process
self.run()
File "/usr/local/lib/python3.4/dist-packages/gunicorn/workers/sync.py", line 124, in run
self.run_for_one(timeout)
File "/usr/local/lib/python3.4/dist-packages/gunicorn/workers/sync.py", line 68, in run_for_one
self.accept(listener)
File "/usr/local/lib/python3.4/dist-packages/gunicorn/workers/sync.py", line 30, in accept
self.handle(listener, client, addr)
File "/usr/local/lib/python3.4/dist-packages/gunicorn/workers/sync.py", line 135, in handle
self.handle_request(listener, req, client, addr)
File "/usr/local/lib/python3.4/dist-packages/gunicorn/workers/sync.py", line 176, in handle_request
respiter = self.wsgi(environ, resp.start_response)
File "/usr/local/lib/python3.4/dist-packages/django/core/handlers/wsgi.py", line 177, in __call__
response = self.get_response(request)
File "/usr/local/lib/python3.4/dist-packages/django/core/handlers/base.py", line 147, in get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/usr/local/lib/python3.4/dist-packages/django/contrib/auth/decorators.py", line 23, in _wrapped_view
return view_func(request, *args, **kwargs)
File "/var/www/bridge-new/tools/profiling.py", line 133, in wait
res = f(*args, **kwargs)
File "/var/www/bridge-new/reports/views.py", line 411, in report_unsafe
logger.exception(e, stack_info=True)
</pre></p>