than mailing the developers (or mailing lists) directly -- bugs that
are not entered into bugzilla tend to get forgotten about or ignored.
+131186 writev reports error in (vector[...])
434764 iconv_open causes ld.so v2.28+ to use optimised strncmp
446754 Improve error codes from alloc functions under memcheck
452274 memcheck crashes with Assertion 'sci->status.what == SsIdle' failed
{
Int i;
struct vki_iovec * vec;
+ char buf[sizeof("writev(vector[])") + 11];
*flags |= SfMayBlock;
PRINT("sys_readv ( %" FMT_REGWORD "u, %#" FMT_REGWORD "x, %"
FMT_REGWORD "u )", ARG1, ARG2, ARG3);
if (ML_(safe_to_deref)((const void*)ARG2, ARG3*sizeof(struct vki_iovec *))) {
vec = (struct vki_iovec *)(Addr)ARG2;
- for (i = 0; i < (Int)ARG3; i++)
- PRE_MEM_WRITE( "readv(vector[...])",
- (Addr)vec[i].iov_base, vec[i].iov_len );
+ for (i = 0; i < (Int)ARG3; i++) {
+ VG_(sprintf)(buf, "writev(vector[%d])", i);
+ PRE_MEM_WRITE(buf, (Addr)vec[i].iov_base, vec[i].iov_len );
+ }
}
}
}
{
Int i;
struct vki_iovec * vec;
+ char buf[sizeof("writev(vector[])") + 11];
*flags |= SfMayBlock;
PRINT("sys_writev ( %" FMT_REGWORD "u, %#" FMT_REGWORD "x, %"
FMT_REGWORD "u )", ARG1, ARG2, ARG3);
if (ML_(safe_to_deref)((const void*)ARG2, ARG3*sizeof(struct vki_iovec *))) {
vec = (struct vki_iovec *)(Addr)ARG2;
- for (i = 0; i < (Int)ARG3; i++)
- PRE_MEM_READ( "writev(vector[...])",
- (Addr)vec[i].iov_base, vec[i].iov_len );
+ for (i = 0; i < (Int)ARG3; i++) {
+ VG_(sprintf)(buf, "writev(vector[%d])", i);
+ PRE_MEM_READ( buf, (Addr)vec[i].iov_base, vec[i].iov_len );
+ }
}
}
}