|
From: Tom H. <th...@cy...> - 2004-01-05 22:33:25
|
In message <3FF...@Bi...>
John Reiser <jr...@Bi...> wrote:
> so that legal but uncommon usage does not get a "false positive"
> error report. I also do not like "false negative" reports (undiagnosed
> actual errors.) I have been disappointed by Valgrind/memcheck
> several times in these regards:
Problems are more likely to fixed if you report them, and I don't
recall seeing any mention of most of the things you refer to. In fact
now we have a bug tracker the best was to ensure they are known about
is to raise a bug.
> scalar args to syscalls are not
> checked for being defined,
An interesting point, and one that had crossed my mind in the past. It
ought to be doable but requires a bit of effort to work out the number
of arguments for each call and deal with varargs syscalls.
> memcheck rounds the byte array args to
> select() _down_ to a multiple of 8 bits while the kernel rounds them
> _up_ to a multiple of 32 bits,
The kernel may round up and read whole words, but I bet it doesn't pay
attention to the extra bits in the last word as that would appear to be
wrong to me. The interface that valgrind uses to check syscall args can
currently only check to byte granularity, hence it rounds down to the
nearest byte and ignores any odd bits. That is indeed a bug, but one that
is slightly finicky to fix.
> the appearance of the immediate constant
> 0x01010101 suppresses all errors even if the basic block is not doing
> optimistic memory scanning [such as strlen(), etc.],
I do remember that one being mentioned but I'm not aware that anybody
has come up with a good alternative to the current behaviour.
> and the continuing
> unimplemented SSE/SSE2/3DNow! opcodes (including prefixes 0x66, 0xF2, 0xF3).
There is pretty good coverage of these now I think. We certainly don't
seem to be seeing many reports of this now and the ones we do get are
usually patched fairly quickly and short of a volunteer to go through
the architecture reference manual and implement any missing instructions
it isn't clear what more could be done.
As with all free software, you get out what you put in.
Tom
--
Tom Hughes (th...@cy...)
Software Engineer, Cyberscience Corporation
http://www.cyberscience.com/
|