Re: [PATCH] selftests/mm: Fixed incorrect buffer->mirror size in hmm2 double_map test

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 9/27/24 12:48, Muhammad Usama Anjum wrote:
On 9/27/24 10:07 AM, Donet Tom wrote:
The hmm2 double_map test was failing due to an incorrect
buffer->mirror size. The buffer->mirror size was 6, while buffer->ptr
size was 6 * PAGE_SIZE. The test failed because the kernel's
copy_to_user function was attempting to copy a 6 * PAGE_SIZE buffer
to buffer->mirror. Since the size of buffer->mirror was incorrect,
copy_to_user failed.

This patch corrects the buffer->mirror size to 6 * PAGE_SIZE.

Test Result without this patch
==============================
  #  RUN           hmm2.hmm2_device_private.double_map ...
  # hmm-tests.c:1680:double_map:Expected ret (-14) == 0 (0)
  # double_map: Test terminated by assertion
  #          FAIL  hmm2.hmm2_device_private.double_map
  not ok 53 hmm2.hmm2_device_private.double_map

Test Result with this patch
===========================
  #  RUN           hmm2.hmm2_device_private.double_map ...
  #            OK  hmm2.hmm2_device_private.double_map
  ok 53 hmm2.hmm2_device_private.double_map

Signed-off-by: Donet Tom <donettom@xxxxxxxxxxxxx>
Please add Fixes-by tag. Other than this, LGTM

Fixes-by : Donet Tom <donettom@xxxxxxxxxxxxx>

I have added the Fixes-by tag here. Please let me know if you would prefer that I send a V2 with this tag.


Reviewed-by: Muhammad Usama Anjum <usama.anjum@xxxxxxxxxxxxx>

Thank you
Donet


---
  tools/testing/selftests/mm/hmm-tests.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/testing/selftests/mm/hmm-tests.c b/tools/testing/selftests/mm/hmm-tests.c
index d2cfc9b494a0..141bf63cbe05 100644
--- a/tools/testing/selftests/mm/hmm-tests.c
+++ b/tools/testing/selftests/mm/hmm-tests.c
@@ -1657,7 +1657,7 @@ TEST_F(hmm2, double_map)
buffer->fd = -1;
  	buffer->size = size;
-	buffer->mirror = malloc(npages);
+	buffer->mirror = malloc(size);
  	ASSERT_NE(buffer->mirror, NULL);
/* Reserve a range of addresses. */




[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux