Hi, On 11/08/16 22:08, Dmitry V. Levin wrote: > On Thu, Aug 11, 2016 at 04:33:00PM +0000, James Cowgill wrote: >> These patches fix most of the testsuite failures which happen on 64-bit mips >> (n32 and n64). None of the failures were bugs in strace, but rather bugs in >> the testsuite. >> >> An example of the failures can be seen here: >> https://buildd.debian.org/status/fetch.php?pkg=strace&arch=mips64el&ver=4.12-3&stamp=1468671031 > > Merged, thanks!
Thanks a lot! >> The only test which still seems to fail on my machine is the "pwritev" test, >> but I believe that's caused by a kernel bug (which I haven't tracked down >> yet). > > Does this patch changes something with the test result? > (also add #include <errno.h> to make it buildable) > > --- a/tests/pwritev.c > +++ b/tests/pwritev.c > @@ -113,6 +113,7 @@ main(void) > unsigned int n = LEN + 1 - i; > fputs("pwritev(0, ", stdout); > print_iovec(iov + i, n, LEN - i); > + errno = 0; > rc = pwritev(0, iov + i, n, offset + LEN + i); > printf(", %u, %lld) = %ld %s (%m)\n", > n, (long long) offset + LEN + i, rc, errno2name()); So before it was failing with: 10c10 < pwritev(0, [{iov_base="\1\2\3\4\5\6\7", iov_len=7}, {iov_base="\2\3\4\5\6\7", iov_len=6}, {iov_base="\3\4\5\6\7", iov_len=5}, {iov_base="\4\5\6\7", iov_len=4}, {iov_base="\5\6\7", iov_len=3}, {iov_base="\6\7", iov_len=2}, {iov_base="\7", iov_len=1}, 0xfff0fb8000], 8, 1004211379570065144) = 27 EFAULT (Bad address) --- > pwritev(0, [{iov_base="\1\2\3\4\5\6\7", iov_len=7}, {iov_base="\2\3\4\5\6\7", iov_len=6}, {iov_base="\3\4\5\6\7", iov_len=5}, {iov_base="\4\5\6\7", iov_len=4}, {iov_base="\5\6\7", iov_len=3}, {iov_base="\6\7", iov_len=2}, {iov_base="\7", iov_len=1}, 0xfff0fb8000], 8, 1004211379570065144) = 27 pwritev.test: failed test: ../strace -e trace=pwritev -a22 -s7 ./pwritev output mismatch After adding errno = 0 it fails with: unknown errno 0 How did you know that was where my error was :) I thought it was a kernel bug since I think the pwritev call should fail with EFAULT. I also noticed that the call only succeeds if the process is being ptraced. James
signature.asc
Description: OpenPGP digital signature
------------------------------------------------------------------------------ What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic patterns at an interface-level. Reveals which users, apps, and protocols are consuming the most bandwidth. Provides multi-vendor support for NetFlow, J-Flow, sFlow and other flows. Make informed decisions using capacity planning reports. http://sdm.link/zohodev2dev
_______________________________________________ Strace-devel mailing list Strace-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/strace-devel