Hallo,
While testing FreeBSD Linux ABI emulation layer with
LTP I got two false positives on writev03 and writev04.
First, FreeBSD writev() will return EFAULT:
[EFAULT] Part of iov or data to be written to the file
points outside the process's allocated address space.
We need to provide Linux behaviour in our emulation layer.
However this problem went unnoticed until we fixed our
emulator mmap(2) to match exactly Linux behaviour.
We used to have PROT_READ silently added to every
mmap() call - this caused many "bad memory regions" to
be actually valid memory areas for LTP. Needless to say
this caused lots of testcases to fail, but this allowed
writev03 and writev04 to happily access whole iovec
memory and PASS.
Logged In: YES
user_id=1737361
Originator: NO
I do not know how to re-produce your errors exactly and i do not see any deviation in LTP code regarding the same. It would be great if you can point that out, beacuse of which LTP is passing in your emulation layer although it should not have passed. Encourage you also to submit patch in this regard.
Regards--
Subrata