Patch "selftests/mm: Fix build with _FORTIFY_SOURCE" has been added to the 6.7-stable tree

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

 



This is a note to let you know that I've just added the patch titled

    selftests/mm: Fix build with _FORTIFY_SOURCE

to the 6.7-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     selftests-mm-fix-build-with-_fortify_source.patch
and it can be found in the queue-6.7 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 843071c030ca3a2a84dd09b166983986a33e2e5d
Author: Vitaly Chikunov <vt@xxxxxxxxxxxx>
Date:   Mon Mar 18 05:34:44 2024 +0300

    selftests/mm: Fix build with _FORTIFY_SOURCE
    
    [ Upstream commit 8b65ef5ad4862904e476a8f3d4e4418c950ddb90 ]
    
    Add missing flags argument to open(2) call with O_CREAT.
    
    Some tests fail to compile if _FORTIFY_SOURCE is defined (to any valid
    value) (together with -O), resulting in similar error messages such as:
    
      In file included from /usr/include/fcntl.h:342,
                       from gup_test.c:1:
      In function 'open',
          inlined from 'main' at gup_test.c:206:10:
      /usr/include/bits/fcntl2.h:50:11: error: call to '__open_missing_mode' declared with attribute error: open with O_CREAT or O_TMPFILE in second argument needs 3 arguments
         50 |           __open_missing_mode ();
            |           ^~~~~~~~~~~~~~~~~~~~~~
    
    _FORTIFY_SOURCE is enabled by default in some distributions, so the
    tests are not built by default and are skipped.
    
    open(2) man-page warns about missing flags argument: "if it is not
    supplied, some arbitrary bytes from the stack will be applied as the
    file mode."
    
    Link: https://lkml.kernel.org/r/20240318023445.3192922-1-vt@xxxxxxxxxxxx
    Fixes: aeb85ed4f41a ("tools/testing/selftests/vm/gup_benchmark.c: allow user specified file")
    Fixes: fbe37501b252 ("mm: huge_memory: debugfs for file-backed THP split")
    Fixes: c942f5bd17b3 ("selftests: soft-dirty: add test for mprotect")
    Signed-off-by: Vitaly Chikunov <vt@xxxxxxxxxxxx>
    Reviewed-by: Zi Yan <ziy@xxxxxxxxxx>
    Reviewed-by: David Hildenbrand <david@xxxxxxxxxx>
    Cc: Keith Busch <kbusch@xxxxxxxxxx>
    Cc: Peter Xu <peterx@xxxxxxxxxx>
    Cc: Yang Shi <shy828301@xxxxxxxxx>
    Cc: Andrea Arcangeli <aarcange@xxxxxxxxxx>
    Cc: Nadav Amit <nadav.amit@xxxxxxxxx>
    Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/tools/testing/selftests/mm/gup_test.c b/tools/testing/selftests/mm/gup_test.c
index cbe99594d319b..18a49c70d4c63 100644
--- a/tools/testing/selftests/mm/gup_test.c
+++ b/tools/testing/selftests/mm/gup_test.c
@@ -203,7 +203,7 @@ int main(int argc, char **argv)
 	ksft_print_header();
 	ksft_set_plan(nthreads);
 
-	filed = open(file, O_RDWR|O_CREAT);
+	filed = open(file, O_RDWR|O_CREAT, 0664);
 	if (filed < 0)
 		ksft_exit_fail_msg("Unable to open %s: %s\n", file, strerror(errno));
 
diff --git a/tools/testing/selftests/mm/soft-dirty.c b/tools/testing/selftests/mm/soft-dirty.c
index cc5f144430d4d..7dbfa53d93a05 100644
--- a/tools/testing/selftests/mm/soft-dirty.c
+++ b/tools/testing/selftests/mm/soft-dirty.c
@@ -137,7 +137,7 @@ static void test_mprotect(int pagemap_fd, int pagesize, bool anon)
 		if (!map)
 			ksft_exit_fail_msg("anon mmap failed\n");
 	} else {
-		test_fd = open(fname, O_RDWR | O_CREAT);
+		test_fd = open(fname, O_RDWR | O_CREAT, 0664);
 		if (test_fd < 0) {
 			ksft_test_result_skip("Test %s open() file failed\n", __func__);
 			return;
diff --git a/tools/testing/selftests/mm/split_huge_page_test.c b/tools/testing/selftests/mm/split_huge_page_test.c
index 0e74635c8c3d9..dff3be23488b4 100644
--- a/tools/testing/selftests/mm/split_huge_page_test.c
+++ b/tools/testing/selftests/mm/split_huge_page_test.c
@@ -253,7 +253,7 @@ void split_file_backed_thp(void)
 		goto cleanup;
 	}
 
-	fd = open(testfile, O_CREAT|O_WRONLY);
+	fd = open(testfile, O_CREAT|O_WRONLY, 0664);
 	if (fd == -1) {
 		perror("Cannot open testing file\n");
 		goto cleanup;




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux