From: Avinesh Kumar <akumar@suse.de>
To: ltp@lists.linux.it
Subject: [LTP] [PATCH] flock02: Add test for EWOULDBLOCK errno
Date: Tue, 14 Jan 2025 16:49:59 +0100 [thread overview]
Message-ID: <20250114155013.7644-1-akumar@suse.de> (raw)
Also fix a make check warning.
Signed-off-by: Avinesh Kumar <akumar@suse.de>
Signed-off-by: Yang Xu <xuyang2018.jy@fujitsu.com>
---
Following up on https://lore.kernel.org/ltp/1934768.7Z3S40VBb9@localhost/
testcases/kernel/syscalls/flock/flock02.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/testcases/kernel/syscalls/flock/flock02.c b/testcases/kernel/syscalls/flock/flock02.c
index b8c7eee68..e2fe73a64 100644
--- a/testcases/kernel/syscalls/flock/flock02.c
+++ b/testcases/kernel/syscalls/flock/flock02.c
@@ -13,6 +13,7 @@
* - EBADF if the file descriptor is invalid
* - EINVAL if the argument operation does not include LOCK_SH,LOCK_EX,LOCK_UN
* - EINVAL if an invalid combination of locking modes is used i.e LOCK_SH with LOCK_EX
+ * - EWOULDBLOCK if the file is locked and the LOCK_NB flag was selected
*/
#include <errno.h>
@@ -31,13 +32,19 @@ static struct tcase {
{&badfd, LOCK_SH, EBADF},
{&fd, LOCK_NB, EINVAL},
{&fd, LOCK_SH | LOCK_EX, EINVAL},
+ {&fd, LOCK_NB | LOCK_EX, EWOULDBLOCK}
};
-static void verify_flock(unsigned n)
+static void verify_flock(unsigned int n)
{
struct tcase *tc = &tcases[n];
fd = SAFE_OPEN("testfile", O_RDWR);
+ int fd2 = SAFE_OPEN("testfile", O_RDWR);
+
+ if (tc->exp_err == EWOULDBLOCK)
+ flock(fd2, LOCK_EX);
+
TEST(flock(*tc->fd, tc->operation));
if (TST_RET == 0) {
tst_res(TFAIL | TTERRNO, "flock() succeeded unexpectedly");
@@ -53,6 +60,7 @@ static void verify_flock(unsigned n)
}
SAFE_CLOSE(fd);
+ SAFE_CLOSE(fd2);
}
static void setup(void)
--
2.43.0
--
Mailing list info: https://lists.linux.it/listinfo/ltp
next reply other threads:[~2025-01-14 15:50 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-14 15:49 Avinesh Kumar [this message]
2025-01-15 9:14 ` [LTP] [PATCH] flock02: Add test for EWOULDBLOCK errno Andrea Cervesato via ltp
2025-01-15 14:54 ` [LTP] [PATCH v2] " Avinesh Kumar
2025-01-31 10:11 ` 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=20250114155013.7644-1-akumar@suse.de \
--to=akumar@suse.de \
--cc=ltp@lists.linux.it \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox