On 29.08.24 16:31, Cyril Hrubis wrote:
Hi!
Also I think there is a third case that we do not cover either, what
happens when we pass an address that is not mapped at all, e.g. NULL? Do
we get EFAULT as well?
Yes, that's documented as EFAULT and should behave that way. I can
extend the test to handle that as well.
Ideally the test should be ported to the new test API as well, but I can
do that later on the top of your work.
I tried, and it all looked easy, until I realized that these tests use a
share code-base:
testcases/kernel/syscalls/move_pages/move_pages_support.c
That is also written using the old API. I assume mixing APIs might not
work as expected ...
The tst_resm() and tst_brkm() calls are redirected proplery in the case
that the test runs with a new API so generally it should work fine as
long as the cleanup callback is set to NULL for the tst_brkm(). That
was one of the design decision we took years ago, because we knew that
we are not going to reimplement thousands of tests instantly and that
the old and new API would have to live alongside for a decade.
Ah, the "NULL" is the magic bit.
I glanced over the code and I do not see anything in the
move_paves_support.c or in the kernel/lib/numa_helper.c that would break
when executed under the new library test.
Okay, good. I can send a follow up to convert that file once the
fix/extension was reviewed.
--
Cheers,
David / dhildenb