From: Yann Sionneau <[email protected]>

Without this patch, since 
https://github.com/torvalds/linux/commit/dcd46d897adb70d63e025f175a00a89797d31a43
this test runs in infinite loop.

Signed-off-by: Yann Sionneau <[email protected]>
---
 test/unistd/exec-null.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/test/unistd/exec-null.c b/test/unistd/exec-null.c
index 3df99f3..0f79b3d 100644
--- a/test/unistd/exec-null.c
+++ b/test/unistd/exec-null.c
@@ -4,7 +4,12 @@
 
 int main(int argc, char *argv[])
 {
-       if (argc == 0)
+       /* since Linux 
https://github.com/torvalds/linux/commit/dcd46d897adb70d63e025f175a00a89797d31a43
+        * kernel forces an empty first arg if execve is called
+        * with argv == NULL.
+        * so we need to handle argc == 1 for newer kernel as well
+        */
+       if (argc == 0 || argc == 1)
                return 0;
 
        char *exec_argv[1], *exec_envp[1];
-- 
2.17.1

_______________________________________________
devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to