All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gabriel Krisman Bertazi <krisman@collabora.com>
To: pvorel@suse.cz, jack@suse.com, amir73il@gmail.com, repnop@google.com
Cc: linux-ext4@vger.kernel.org, kernel@collabora.com,
	khazhy@google.com, ltp@lists.linux.it,
	Gabriel Krisman Bertazi <krisman@collabora.com>
Subject: [PATCH v4 9/9] syscalls/fanotify22: Test capture of multiple errors
Date: Thu, 18 Nov 2021 18:57:44 -0500	[thread overview]
Message-ID: <20211118235744.802584-10-krisman@collabora.com> (raw)
In-Reply-To: <20211118235744.802584-1-krisman@collabora.com>

When multiple FS errors occur, only the first is stored.  This testcase
validates this behavior by issuing two different errors and making sure
only the first is stored, while the second is simply accumulated in
error_count.

Reviewed-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Gabriel Krisman Bertazi <krisman@collabora.com>
---
 .../kernel/syscalls/fanotify/fanotify22.c     | 26 +++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/testcases/kernel/syscalls/fanotify/fanotify22.c b/testcases/kernel/syscalls/fanotify/fanotify22.c
index 9cd8c8f919b0..b42e96e8263e 100644
--- a/testcases/kernel/syscalls/fanotify/fanotify22.c
+++ b/testcases/kernel/syscalls/fanotify/fanotify22.c
@@ -74,6 +74,18 @@ static void tcase2_trigger_lookup(void)
 			ret, BAD_DIR, errno, EUCLEAN);
 }
 
+static void tcase3_trigger(void)
+{
+	trigger_fs_abort();
+	tcase2_trigger_lookup();
+}
+
+static void tcase4_trigger(void)
+{
+	tcase2_trigger_lookup();
+	trigger_fs_abort();
+}
+
 static struct test_case {
 	char *name;
 	int error;
@@ -95,6 +107,20 @@ static struct test_case {
 		.error = EFSCORRUPTED,
 		.fid = &bad_file_fid,
 	},
+	{
+		.name = "Multiple error submission",
+		.trigger_error = &tcase3_trigger,
+		.error_count = 2,
+		.error = ESHUTDOWN,
+		.fid = &null_fid,
+	},
+	{
+		.name = "Multiple error submission 2",
+		.trigger_error = &tcase4_trigger,
+		.error_count = 2,
+		.error = EFSCORRUPTED,
+		.fid = &bad_file_fid,
+	}
 };
 
 int check_error_event_info_fid(struct fanotify_event_info_fid *fid,
-- 
2.33.0


WARNING: multiple messages have this Message-ID (diff)
From: Gabriel Krisman Bertazi <krisman@collabora.com>
To: pvorel@suse.cz, jack@suse.com, amir73il@gmail.com, repnop@google.com
Cc: Gabriel Krisman Bertazi <krisman@collabora.com>,
	linux-ext4@vger.kernel.org, kernel@collabora.com,
	ltp@lists.linux.it, khazhy@google.com
Subject: [LTP] [PATCH v4 9/9] syscalls/fanotify22: Test capture of multiple errors
Date: Thu, 18 Nov 2021 18:57:44 -0500	[thread overview]
Message-ID: <20211118235744.802584-10-krisman@collabora.com> (raw)
In-Reply-To: <20211118235744.802584-1-krisman@collabora.com>

When multiple FS errors occur, only the first is stored.  This testcase
validates this behavior by issuing two different errors and making sure
only the first is stored, while the second is simply accumulated in
error_count.

Reviewed-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Gabriel Krisman Bertazi <krisman@collabora.com>
---
 .../kernel/syscalls/fanotify/fanotify22.c     | 26 +++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/testcases/kernel/syscalls/fanotify/fanotify22.c b/testcases/kernel/syscalls/fanotify/fanotify22.c
index 9cd8c8f919b0..b42e96e8263e 100644
--- a/testcases/kernel/syscalls/fanotify/fanotify22.c
+++ b/testcases/kernel/syscalls/fanotify/fanotify22.c
@@ -74,6 +74,18 @@ static void tcase2_trigger_lookup(void)
 			ret, BAD_DIR, errno, EUCLEAN);
 }
 
+static void tcase3_trigger(void)
+{
+	trigger_fs_abort();
+	tcase2_trigger_lookup();
+}
+
+static void tcase4_trigger(void)
+{
+	tcase2_trigger_lookup();
+	trigger_fs_abort();
+}
+
 static struct test_case {
 	char *name;
 	int error;
@@ -95,6 +107,20 @@ static struct test_case {
 		.error = EFSCORRUPTED,
 		.fid = &bad_file_fid,
 	},
+	{
+		.name = "Multiple error submission",
+		.trigger_error = &tcase3_trigger,
+		.error_count = 2,
+		.error = ESHUTDOWN,
+		.fid = &null_fid,
+	},
+	{
+		.name = "Multiple error submission 2",
+		.trigger_error = &tcase4_trigger,
+		.error_count = 2,
+		.error = EFSCORRUPTED,
+		.fid = &bad_file_fid,
+	}
 };
 
 int check_error_event_info_fid(struct fanotify_event_info_fid *fid,
-- 
2.33.0


-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

  parent reply	other threads:[~2021-11-18 23:58 UTC|newest]

Thread overview: 58+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-18 23:57 [PATCH v4 0/9] Test the new fanotify FAN_FS_ERROR event Gabriel Krisman Bertazi
2021-11-18 23:57 ` [LTP] " Gabriel Krisman Bertazi
2021-11-18 23:57 ` [PATCH v4 1/9] syscalls: fanotify: Add macro to require specific mark types Gabriel Krisman Bertazi
2021-11-18 23:57   ` [LTP] " Gabriel Krisman Bertazi
2021-11-18 23:57 ` [PATCH v4 2/9] syscalls: fanotify: Add macro to require specific events Gabriel Krisman Bertazi
2021-11-18 23:57   ` [LTP] " Gabriel Krisman Bertazi
2021-11-18 23:57 ` [PATCH v4 3/9] syscalls/fanotify22: Introduce FAN_FS_ERROR test Gabriel Krisman Bertazi
2021-11-18 23:57   ` [LTP] " Gabriel Krisman Bertazi
2021-11-18 23:57 ` [PATCH v4 4/9] syscalls/fanotify22: Validate the generic error info Gabriel Krisman Bertazi
2021-11-18 23:57   ` [LTP] " Gabriel Krisman Bertazi
2021-11-19  5:38   ` Amir Goldstein
2021-11-19  5:38     ` [LTP] " Amir Goldstein
2021-11-19 19:29     ` Petr Vorel
2021-11-19 19:29       ` [LTP] " Petr Vorel
2021-11-19 22:39       ` Petr Vorel
2021-11-19 22:39         ` [LTP] " Petr Vorel
2021-11-18 23:57 ` [PATCH v4 5/9] syscalls/fanotify22: Validate incoming FID in FAN_FS_ERROR Gabriel Krisman Bertazi
2021-11-18 23:57   ` [LTP] " Gabriel Krisman Bertazi
2021-11-18 23:57 ` [PATCH v4 6/9] syscalls/fanotify22: Support submission of debugfs commands Gabriel Krisman Bertazi
2021-11-18 23:57   ` [LTP] " Gabriel Krisman Bertazi
2021-11-18 23:57 ` [PATCH v4 7/9] syscalls/fanotify22: Create a corrupted file Gabriel Krisman Bertazi
2021-11-18 23:57   ` [LTP] " Gabriel Krisman Bertazi
2021-11-18 23:57 ` [PATCH v4 8/9] syscalls/fanotify22: Test file event with broken inode Gabriel Krisman Bertazi
2021-11-18 23:57   ` [LTP] " Gabriel Krisman Bertazi
2021-11-18 23:57 ` Gabriel Krisman Bertazi [this message]
2021-11-18 23:57   ` [LTP] [PATCH v4 9/9] syscalls/fanotify22: Test capture of multiple errors Gabriel Krisman Bertazi
2021-11-19  5:48 ` [PATCH v4 0/9] Test the new fanotify FAN_FS_ERROR event Amir Goldstein
2021-11-19  5:48   ` [LTP] " Amir Goldstein
2021-11-19 19:29   ` Gabriel Krisman Bertazi
2021-11-19 19:29     ` [LTP] " Gabriel Krisman Bertazi
2021-11-20 10:43     ` Amir Goldstein
2021-11-20 10:43       ` [LTP] " Amir Goldstein
2021-11-22  7:47     ` Petr Vorel
2021-11-22  7:47       ` [LTP] " Petr Vorel
2021-11-22 17:35       ` Gabriel Krisman Bertazi
2021-11-22 17:35         ` [LTP] " Gabriel Krisman Bertazi
2021-11-22 21:09         ` Petr Vorel
2021-11-22 21:09           ` [LTP] " Petr Vorel
2021-11-24 10:39       ` Petr Vorel
2021-11-24 10:39         ` Petr Vorel
2021-12-20 11:48         ` Amir Goldstein
2021-12-20 11:48           ` Amir Goldstein
2021-12-20 18:07           ` Petr Vorel
2021-12-20 18:07             ` Petr Vorel
2022-01-10 15:16 ` Petr Vorel
2022-01-10 15:16   ` [LTP] " Petr Vorel
2022-02-02 13:49   ` Amir Goldstein
2022-02-02 13:49     ` [LTP] " Amir Goldstein
2022-02-02 14:10     ` Jan Stancek
2022-02-02 14:10       ` Jan Stancek
2022-02-02 16:45       ` Gabriel Krisman Bertazi
2022-02-02 16:45         ` Gabriel Krisman Bertazi
2022-02-02 14:22     ` Petr Vorel
2022-02-02 14:22       ` [LTP] " Petr Vorel
2022-02-02 16:13       ` Cyril Hrubis
2022-02-02 16:13         ` Cyril Hrubis
2022-02-02 16:57         ` Petr Vorel
2022-02-02 16:57           ` Petr Vorel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20211118235744.802584-10-krisman@collabora.com \
    --to=krisman@collabora.com \
    --cc=amir73il@gmail.com \
    --cc=jack@suse.com \
    --cc=kernel@collabora.com \
    --cc=khazhy@google.com \
    --cc=linux-ext4@vger.kernel.org \
    --cc=ltp@lists.linux.it \
    --cc=pvorel@suse.cz \
    --cc=repnop@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.