aboutsummaryrefslogtreecommitdiffstats
diff options
-rw-r--r--0001-readfile-implement-readfile-syscall.patch11
-rw-r--r--0002-arch-wire-up-the-readfile-syscall.patch211
-rw-r--r--0003-selftests-add-readfile-2-selftests.patch38
-rw-r--r--0004-readfile.2-new-page-describing-readfile-2.patch10
4 files changed, 168 insertions, 102 deletions
diff --git a/0001-readfile-implement-readfile-syscall.patch b/0001-readfile-implement-readfile-syscall.patch
index 4e3047d897ddbc..e5822f83eca4f1 100644
--- a/0001-readfile-implement-readfile-syscall.patch
+++ b/0001-readfile-implement-readfile-syscall.patch
@@ -1,4 +1,4 @@
-From 0ebe2101d6920e27137ac6706bf97803f78ce415 Mon Sep 17 00:00:00 2001
+From 418a5f09e91ec5b67c1bd746f577e79ae2544cd1 Mon Sep 17 00:00:00 2001
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Date: Sun, 24 May 2020 12:37:15 +0200
Subject: [PATCH 1/4] readfile: implement readfile syscall
@@ -15,12 +15,14 @@ overhead.
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
- fs/open.c | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
+ fs/open.c | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+)
+diff --git a/fs/open.c b/fs/open.c
+index 3d64372ecc67..80e3284bd429 100644
--- a/fs/open.c
+++ b/fs/open.c
-@@ -1653,3 +1653,53 @@ int stream_open(struct inode *inode, str
+@@ -1661,3 +1661,53 @@ int stream_open(struct inode *inode, struct file *filp)
}
EXPORT_SYMBOL(stream_open);
@@ -74,3 +76,6 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+ return retval;
+}
+--
+2.52.0
+
diff --git a/0002-arch-wire-up-the-readfile-syscall.patch b/0002-arch-wire-up-the-readfile-syscall.patch
index c8a78c94d3733a..690704f636f386 100644
--- a/0002-arch-wire-up-the-readfile-syscall.patch
+++ b/0002-arch-wire-up-the-readfile-syscall.patch
@@ -1,4 +1,4 @@
-From b1c4dc1ba255fb1eac6f11532bdb8d41173624df Mon Sep 17 00:00:00 2001
+From 2769ff130aa11ba1b9194fe4b9c06d0ae5f8dfda Mon Sep 17 00:00:00 2001
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Date: Wed, 10 Aug 2022 13:07:37 +0200
Subject: [PATCH 2/4] arch: wire up the readfile syscall
@@ -7,138 +7,168 @@ This wires up the readfile syscall for all architectures
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
- arch/alpha/kernel/syscalls/syscall.tbl | 2 ++
- arch/arm/tools/syscall.tbl | 1 +
- arch/m68k/kernel/syscalls/syscall.tbl | 1 +
- arch/microblaze/kernel/syscalls/syscall.tbl | 1 +
- arch/mips/kernel/syscalls/syscall_n32.tbl | 2 ++
- arch/mips/kernel/syscalls/syscall_n64.tbl | 1 +
- arch/mips/kernel/syscalls/syscall_o32.tbl | 1 +
- arch/parisc/kernel/syscalls/syscall.tbl | 1 +
- arch/powerpc/kernel/syscalls/syscall.tbl | 1 +
- arch/s390/kernel/syscalls/syscall.tbl | 1 +
- arch/sh/kernel/syscalls/syscall.tbl | 1 +
- arch/sparc/kernel/syscalls/syscall.tbl | 1 +
- arch/x86/entry/syscalls/syscall_32.tbl | 1 +
- arch/x86/entry/syscalls/syscall_64.tbl | 1 +
- arch/xtensa/kernel/syscalls/syscall.tbl | 1 +
- include/linux/syscalls.h | 2 ++
- include/uapi/asm-generic/unistd.h | 5 ++++-
- 17 files changed, 23 insertions(+), 1 deletion(-)
+ arch/alpha/kernel/syscalls/syscall.tbl | 1 +
+ arch/arm/tools/syscall.tbl | 1 +
+ arch/m68k/kernel/syscalls/syscall.tbl | 1 +
+ arch/microblaze/kernel/syscalls/syscall.tbl | 1 +
+ arch/mips/kernel/syscalls/syscall_n32.tbl | 1 +
+ arch/mips/kernel/syscalls/syscall_n64.tbl | 1 +
+ arch/mips/kernel/syscalls/syscall_o32.tbl | 1 +
+ arch/parisc/kernel/syscalls/syscall.tbl | 1 +
+ arch/powerpc/kernel/syscalls/syscall.tbl | 1 +
+ arch/s390/kernel/syscalls/syscall.tbl | 1 +
+ arch/sh/kernel/syscalls/syscall.tbl | 1 +
+ arch/sparc/kernel/syscalls/syscall.tbl | 1 +
+ arch/x86/entry/syscalls/syscall_32.tbl | 1 +
+ arch/x86/entry/syscalls/syscall_64.tbl | 1 +
+ arch/xtensa/kernel/syscalls/syscall.tbl | 1 +
+ include/linux/syscalls.h | 2 ++
+ include/uapi/asm-generic/unistd.h | 5 ++++-
+ 17 files changed, 21 insertions(+), 1 deletion(-)
+diff --git a/arch/alpha/kernel/syscalls/syscall.tbl b/arch/alpha/kernel/syscalls/syscall.tbl
+index 16dca28ebf17..21282c0546eb 100644
--- a/arch/alpha/kernel/syscalls/syscall.tbl
+++ b/arch/alpha/kernel/syscalls/syscall.tbl
-@@ -507,3 +507,5 @@
- 575 common listxattrat sys_listxattrat
- 576 common removexattrat sys_removexattrat
+@@ -509,3 +509,4 @@
577 common open_tree_attr sys_open_tree_attr
-+578 common readfile sys_readfile
-+
+ 578 common file_getattr sys_file_getattr
+ 579 common file_setattr sys_file_setattr
++580 common readfile sys_readfile
+diff --git a/arch/arm/tools/syscall.tbl b/arch/arm/tools/syscall.tbl
+index b07e699aaa3c..a7a158155655 100644
--- a/arch/arm/tools/syscall.tbl
+++ b/arch/arm/tools/syscall.tbl
-@@ -482,3 +482,4 @@
- 465 common listxattrat sys_listxattrat
- 466 common removexattrat sys_removexattrat
+@@ -484,3 +484,4 @@
467 common open_tree_attr sys_open_tree_attr
-+468 common readfile sys_readfile
+ 468 common file_getattr sys_file_getattr
+ 469 common file_setattr sys_file_setattr
++470 common readfile sys_readfile
+diff --git a/arch/m68k/kernel/syscalls/syscall.tbl b/arch/m68k/kernel/syscalls/syscall.tbl
+index f41d38dfbf13..c91c6846c619 100644
--- a/arch/m68k/kernel/syscalls/syscall.tbl
+++ b/arch/m68k/kernel/syscalls/syscall.tbl
-@@ -467,3 +467,4 @@
- 465 common listxattrat sys_listxattrat
- 466 common removexattrat sys_removexattrat
+@@ -469,3 +469,4 @@
467 common open_tree_attr sys_open_tree_attr
-+468 common readfile sys_readfile
+ 468 common file_getattr sys_file_getattr
+ 469 common file_setattr sys_file_setattr
++470 common readfile sys_readfile
+diff --git a/arch/microblaze/kernel/syscalls/syscall.tbl b/arch/microblaze/kernel/syscalls/syscall.tbl
+index 580af574fe73..d4fb48f497c5 100644
--- a/arch/microblaze/kernel/syscalls/syscall.tbl
+++ b/arch/microblaze/kernel/syscalls/syscall.tbl
-@@ -473,3 +473,4 @@
- 465 common listxattrat sys_listxattrat
- 466 common removexattrat sys_removexattrat
+@@ -475,3 +475,4 @@
467 common open_tree_attr sys_open_tree_attr
-+468 common readfile sys_readfile
+ 468 common file_getattr sys_file_getattr
+ 469 common file_setattr sys_file_setattr
++470 common readfile sys_readfile
+diff --git a/arch/mips/kernel/syscalls/syscall_n32.tbl b/arch/mips/kernel/syscalls/syscall_n32.tbl
+index d824ffe9a014..7749bc101906 100644
--- a/arch/mips/kernel/syscalls/syscall_n32.tbl
+++ b/arch/mips/kernel/syscalls/syscall_n32.tbl
-@@ -406,3 +406,5 @@
- 465 n32 listxattrat sys_listxattrat
- 466 n32 removexattrat sys_removexattrat
+@@ -408,3 +408,4 @@
467 n32 open_tree_attr sys_open_tree_attr
-+468 n32 readfile sys_readfile
-+
+ 468 n32 file_getattr sys_file_getattr
+ 469 n32 file_setattr sys_file_setattr
++470 n32 readfile sys_readfile
+diff --git a/arch/mips/kernel/syscalls/syscall_n64.tbl b/arch/mips/kernel/syscalls/syscall_n64.tbl
+index 7a7049c2c307..6f7cf70c6b96 100644
--- a/arch/mips/kernel/syscalls/syscall_n64.tbl
+++ b/arch/mips/kernel/syscalls/syscall_n64.tbl
-@@ -382,3 +382,4 @@
- 465 n64 listxattrat sys_listxattrat
- 466 n64 removexattrat sys_removexattrat
+@@ -384,3 +384,4 @@
467 n64 open_tree_attr sys_open_tree_attr
-+468 n64 readfile sys_readfile
+ 468 n64 file_getattr sys_file_getattr
+ 469 n64 file_setattr sys_file_setattr
++470 n64 readfile sys_readfile
+diff --git a/arch/mips/kernel/syscalls/syscall_o32.tbl b/arch/mips/kernel/syscalls/syscall_o32.tbl
+index d330274f0601..fae6f31ff78c 100644
--- a/arch/mips/kernel/syscalls/syscall_o32.tbl
+++ b/arch/mips/kernel/syscalls/syscall_o32.tbl
-@@ -455,3 +455,4 @@
- 465 o32 listxattrat sys_listxattrat
- 466 o32 removexattrat sys_removexattrat
+@@ -457,3 +457,4 @@
467 o32 open_tree_attr sys_open_tree_attr
-+468 o32 readfile sys_readfile
+ 468 o32 file_getattr sys_file_getattr
+ 469 o32 file_setattr sys_file_setattr
++470 o32 readfile sys_readfile
+diff --git a/arch/parisc/kernel/syscalls/syscall.tbl b/arch/parisc/kernel/syscalls/syscall.tbl
+index 88a788a7b18d..ddae31f635ed 100644
--- a/arch/parisc/kernel/syscalls/syscall.tbl
+++ b/arch/parisc/kernel/syscalls/syscall.tbl
-@@ -466,3 +466,4 @@
- 465 common listxattrat sys_listxattrat
- 466 common removexattrat sys_removexattrat
+@@ -468,3 +468,4 @@
467 common open_tree_attr sys_open_tree_attr
-+468 common readfile sys_readfile
+ 468 common file_getattr sys_file_getattr
+ 469 common file_setattr sys_file_setattr
++470 common readfile sys_readfile
+diff --git a/arch/powerpc/kernel/syscalls/syscall.tbl b/arch/powerpc/kernel/syscalls/syscall.tbl
+index b453e80dfc00..be0389c42004 100644
--- a/arch/powerpc/kernel/syscalls/syscall.tbl
+++ b/arch/powerpc/kernel/syscalls/syscall.tbl
-@@ -558,3 +558,4 @@
- 465 common listxattrat sys_listxattrat
- 466 common removexattrat sys_removexattrat
+@@ -560,3 +560,4 @@
467 common open_tree_attr sys_open_tree_attr
-+468 common readfile sys_readfile
+ 468 common file_getattr sys_file_getattr
+ 469 common file_setattr sys_file_setattr
++470 common readfile sys_readfile
+diff --git a/arch/s390/kernel/syscalls/syscall.tbl b/arch/s390/kernel/syscalls/syscall.tbl
+index 8a6744d658db..fe5306fd920a 100644
--- a/arch/s390/kernel/syscalls/syscall.tbl
+++ b/arch/s390/kernel/syscalls/syscall.tbl
-@@ -470,3 +470,4 @@
- 465 common listxattrat sys_listxattrat sys_listxattrat
- 466 common removexattrat sys_removexattrat sys_removexattrat
+@@ -472,3 +472,4 @@
467 common open_tree_attr sys_open_tree_attr sys_open_tree_attr
-+468 common readfile sys_readfile sys_readfile
+ 468 common file_getattr sys_file_getattr sys_file_getattr
+ 469 common file_setattr sys_file_setattr sys_file_setattr
++470 common readfile sys_readfile sys_readfile
+diff --git a/arch/sh/kernel/syscalls/syscall.tbl b/arch/sh/kernel/syscalls/syscall.tbl
+index 5e9c9eff5539..7a1eda4ff9b7 100644
--- a/arch/sh/kernel/syscalls/syscall.tbl
+++ b/arch/sh/kernel/syscalls/syscall.tbl
-@@ -471,3 +471,4 @@
- 465 common listxattrat sys_listxattrat
- 466 common removexattrat sys_removexattrat
+@@ -473,3 +473,4 @@
467 common open_tree_attr sys_open_tree_attr
-+468 common readfile sys_readfile
+ 468 common file_getattr sys_file_getattr
+ 469 common file_setattr sys_file_setattr
++470 common readfile sys_readfile
+diff --git a/arch/sparc/kernel/syscalls/syscall.tbl b/arch/sparc/kernel/syscalls/syscall.tbl
+index ebb7d06d1044..b4b7d7d31072 100644
--- a/arch/sparc/kernel/syscalls/syscall.tbl
+++ b/arch/sparc/kernel/syscalls/syscall.tbl
-@@ -513,3 +513,4 @@
- 465 common listxattrat sys_listxattrat
- 466 common removexattrat sys_removexattrat
+@@ -515,3 +515,4 @@
467 common open_tree_attr sys_open_tree_attr
-+468 common readfile sys_readfile
+ 468 common file_getattr sys_file_getattr
+ 469 common file_setattr sys_file_setattr
++470 common readfile sys_readfile
+diff --git a/arch/x86/entry/syscalls/syscall_32.tbl b/arch/x86/entry/syscalls/syscall_32.tbl
+index 4877e16da69a..54fadd106f39 100644
--- a/arch/x86/entry/syscalls/syscall_32.tbl
+++ b/arch/x86/entry/syscalls/syscall_32.tbl
-@@ -473,3 +473,4 @@
- 465 i386 listxattrat sys_listxattrat
- 466 i386 removexattrat sys_removexattrat
+@@ -475,3 +475,4 @@
467 i386 open_tree_attr sys_open_tree_attr
-+468 i386 readfile sys_readfile
+ 468 i386 file_getattr sys_file_getattr
+ 469 i386 file_setattr sys_file_setattr
++470 i386 readfile sys_readfile
+diff --git a/arch/x86/entry/syscalls/syscall_64.tbl b/arch/x86/entry/syscalls/syscall_64.tbl
+index ced2a1deecd7..a724926aa60c 100644
--- a/arch/x86/entry/syscalls/syscall_64.tbl
+++ b/arch/x86/entry/syscalls/syscall_64.tbl
-@@ -391,6 +391,7 @@
- 465 common listxattrat sys_listxattrat
- 466 common removexattrat sys_removexattrat
+@@ -394,6 +394,7 @@
467 common open_tree_attr sys_open_tree_attr
-+468 common readfile sys_readfile
+ 468 common file_getattr sys_file_getattr
+ 469 common file_setattr sys_file_setattr
++470 common readfile sys_readfile
#
# Due to a historical design error, certain syscalls are numbered differently
+diff --git a/arch/xtensa/kernel/syscalls/syscall.tbl b/arch/xtensa/kernel/syscalls/syscall.tbl
+index 374e4cb788d8..8366c5885f16 100644
--- a/arch/xtensa/kernel/syscalls/syscall.tbl
+++ b/arch/xtensa/kernel/syscalls/syscall.tbl
-@@ -438,3 +438,4 @@
- 465 common listxattrat sys_listxattrat
- 466 common removexattrat sys_removexattrat
+@@ -440,3 +440,4 @@
467 common open_tree_attr sys_open_tree_attr
-+468 common readfile sys_readfile
+ 468 common file_getattr sys_file_getattr
+ 469 common file_setattr sys_file_setattr
++470 common readfile sys_readfile
+diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h
+index 66c06fcdfe19..8bb49fd00569 100644
--- a/include/linux/syscalls.h
+++ b/include/linux/syscalls.h
-@@ -988,6 +988,8 @@ asmlinkage long sys_lsm_get_self_attr(un
+@@ -995,6 +995,8 @@ asmlinkage long sys_lsm_get_self_attr(unsigned int attr, struct lsm_ctx __user *
asmlinkage long sys_lsm_set_self_attr(unsigned int attr, struct lsm_ctx __user *ctx,
u32 size, u32 flags);
asmlinkage long sys_lsm_list_modules(u64 __user *ids, u32 __user *size, u32 flags);
@@ -147,18 +177,23 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
/*
* Architecture-specific system calls
+diff --git a/include/uapi/asm-generic/unistd.h b/include/uapi/asm-generic/unistd.h
+index 04e0077fb4c9..7f0f7c3e30d7 100644
--- a/include/uapi/asm-generic/unistd.h
+++ b/include/uapi/asm-generic/unistd.h
-@@ -852,8 +852,11 @@ __SYSCALL(__NR_removexattrat, sys_remove
- #define __NR_open_tree_attr 467
- __SYSCALL(__NR_open_tree_attr, sys_open_tree_attr)
+@@ -858,8 +858,11 @@ __SYSCALL(__NR_file_getattr, sys_file_getattr)
+ #define __NR_file_setattr 469
+ __SYSCALL(__NR_file_setattr, sys_file_setattr)
-+#define __NR_readfile 468
++#define __NR_readfile 470
+__SYSCALL(__NR_readfile, sys_readfile)
+
#undef __NR_syscalls
--#define __NR_syscalls 468
-+#define __NR_syscalls 469
+-#define __NR_syscalls 470
++#define __NR_syscalls 471
/*
* 32 bit systems traditionally used different
+--
+2.52.0
+
diff --git a/0003-selftests-add-readfile-2-selftests.patch b/0003-selftests-add-readfile-2-selftests.patch
index a02f7112158db3..46fd5343d41464 100644
--- a/0003-selftests-add-readfile-2-selftests.patch
+++ b/0003-selftests-add-readfile-2-selftests.patch
@@ -1,4 +1,4 @@
-From ed08facb51f6119546948eeb2bf5c6a9c7ffe7e3 Mon Sep 17 00:00:00 2001
+From d329b5d7908335c1f12dc5c41ad1453d22d1f9c2 Mon Sep 17 00:00:00 2001
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Date: Sun, 8 Mar 2020 09:54:45 +0100
Subject: [PATCH 3/4] selftests: add readfile(2) selftests
@@ -10,12 +10,12 @@ instead of using open()/read()/close().
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
- tools/testing/selftests/Makefile | 1
- tools/testing/selftests/readfile/.gitignore | 3
- tools/testing/selftests/readfile/Makefile | 7
- tools/testing/selftests/readfile/readfile.c | 272 ++++++++++++++++++++
- tools/testing/selftests/readfile/readfile.h | 23 +
- tools/testing/selftests/readfile/readfile_speed.c | 289 ++++++++++++++++++++++
+ tools/testing/selftests/Makefile | 1 +
+ tools/testing/selftests/readfile/.gitignore | 3 +
+ tools/testing/selftests/readfile/Makefile | 7 +
+ tools/testing/selftests/readfile/readfile.c | 272 +++++++++++++++++
+ tools/testing/selftests/readfile/readfile.h | 23 ++
+ .../selftests/readfile/readfile_speed.c | 289 ++++++++++++++++++
6 files changed, 595 insertions(+)
create mode 100644 tools/testing/selftests/readfile/.gitignore
create mode 100644 tools/testing/selftests/readfile/Makefile
@@ -23,9 +23,11 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
create mode 100644 tools/testing/selftests/readfile/readfile.h
create mode 100644 tools/testing/selftests/readfile/readfile_speed.c
+diff --git a/tools/testing/selftests/Makefile b/tools/testing/selftests/Makefile
+index c46ebdb9b8ef..ecfa51a8a079 100644
--- a/tools/testing/selftests/Makefile
+++ b/tools/testing/selftests/Makefile
-@@ -87,6 +87,7 @@ TARGETS += proc
+@@ -92,6 +92,7 @@ TARGETS += proc
TARGETS += pstore
TARGETS += ptrace
TARGETS += openat2
@@ -33,12 +35,18 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
TARGETS += resctrl
TARGETS += riscv
TARGETS += rlimits
+diff --git a/tools/testing/selftests/readfile/.gitignore b/tools/testing/selftests/readfile/.gitignore
+new file mode 100644
+index 000000000000..f0e758d437e4
--- /dev/null
+++ b/tools/testing/selftests/readfile/.gitignore
@@ -0,0 +1,3 @@
+# SPDX-License-Identifier: GPL-2.0
+readfile
+readfile_speed
+diff --git a/tools/testing/selftests/readfile/Makefile b/tools/testing/selftests/readfile/Makefile
+new file mode 100644
+index 000000000000..1bf1bdec40f8
--- /dev/null
+++ b/tools/testing/selftests/readfile/Makefile
@@ -0,0 +1,7 @@
@@ -49,6 +57,9 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+TEST_GEN_PROGS := readfile readfile_speed
+
+include ../lib.mk
+diff --git a/tools/testing/selftests/readfile/readfile.c b/tools/testing/selftests/readfile/readfile.c
+new file mode 100644
+index 000000000000..225841872c0d
--- /dev/null
+++ b/tools/testing/selftests/readfile/readfile.c
@@ -0,0 +1,272 @@
@@ -324,6 +335,9 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+ return ksft_exit_pass();
+}
+
+diff --git a/tools/testing/selftests/readfile/readfile.h b/tools/testing/selftests/readfile/readfile.h
+new file mode 100644
+index 000000000000..c63b84b35601
--- /dev/null
+++ b/tools/testing/selftests/readfile/readfile.h
@@ -0,0 +1,23 @@
@@ -343,13 +357,16 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+//#define __NR_readfile -1
+//#endif
+
-+#define __NR_readfile 468
++#define __NR_readfile 470
+
+static inline int sys_readfile(int fd, const char *filename,
+ unsigned char *buffer, size_t bufsize, int flags)
+{
+ return syscall(__NR_readfile, fd, filename, buffer, bufsize, flags);
+}
+diff --git a/tools/testing/selftests/readfile/readfile_speed.c b/tools/testing/selftests/readfile/readfile_speed.c
+new file mode 100644
+index 000000000000..c0bf2dbaa3fe
--- /dev/null
+++ b/tools/testing/selftests/readfile/readfile_speed.c
@@ -0,0 +1,289 @@
@@ -642,3 +659,6 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+ return do_read_file_test(loops, test_type, filename);
+}
+--
+2.52.0
+
diff --git a/0004-readfile.2-new-page-describing-readfile-2.patch b/0004-readfile.2-new-page-describing-readfile-2.patch
index 5a18923787f543..f98394a10224dd 100644
--- a/0004-readfile.2-new-page-describing-readfile-2.patch
+++ b/0004-readfile.2-new-page-describing-readfile-2.patch
@@ -1,4 +1,4 @@
-From 8d58e2dad8eb7d6fc1cf689adcf0a88e033ea109 Mon Sep 17 00:00:00 2001
+From ef8e9e8be43dda75ba7546d975d452dea1722310 Mon Sep 17 00:00:00 2001
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Date: Fri, 12 Jun 2020 12:11:39 +0200
Subject: [PATCH 4/4] readfile.2: new page describing readfile(2)
@@ -9,10 +9,13 @@ sysfs.
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
- man2/readfile.2 | 159 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ man2/readfile.2 | 159 ++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 159 insertions(+)
create mode 100644 man2/readfile.2
+diff --git a/man2/readfile.2 b/man2/readfile.2
+new file mode 100644
+index 000000000000..449e722c3442
--- /dev/null
+++ b/man2/readfile.2
@@ -0,0 +1,159 @@
@@ -175,3 +178,6 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+.BR openat (2),
+.BR read (2),
+.BR fread (3)
+--
+2.52.0
+