Skip to contentSkip to conversation

utimensat_tests.sh: returns EPERM above 4.4.27 and below 4.5.0

PATCH New [email protected] 4 participants 7 messages Sep 27, 2017 – Sep 29, 2017

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/1 utimensat_tests.sh: returns EPERM above 4.4.27 and below 4.5.0

From: Naresh Kamboju <[email protected]>

Test utimensat failed on 4.4 is due to expected error is EACCES but got EPERM.

With the reference to backported patch changing the test code to set error code EPERM when kernel version is above 4.4.27 and below 4.5.0

The patch backported on 4.4 details
tree: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
branch: v4.4.27
commit id: b3b4283
vfs: move permission checking into notify_change() for utimes(NULL)

Bug reported on this case,
LKFT: linux-stable-4.4: LTP utimensat01 failed-EXPECTED: EACCES but got EPERM
https://bugs.linaro.org/show_bug.cgi?id=3142

---
 testcases/kernel/syscalls/utimensat/utimensat_tests.sh | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
testcases/kernel/syscalls/utimensat/utimensat_tests.sh +5 -1
index 48154d6..46a0cc6 100755
@@ -32,7 +32,11 @@ fi
 
 # Starting with 4.8.0 operations on immutable files return EPERM instead of
 # EACCES.
-if tst_kvcmp -lt "4.8.0"; then
+# This patch has also been merged to stable 4.4 with
+# b3b4283 ("vfs: move permission checking into notify_change() for utimes(NULL)")
+if tst_kvcmp -ge "4.4.27" -a -lt "4.5.0"; then
+	imaccess=EPERM
+elif tst_kvcmp -lt "4.4.27"; then
 	imaccess=EACCES
 else
 	imaccess=EPERM
Signature · 1 line
2.7.4
#1 lore raw

PATCH v2 1/1 utimensat_tests.sh: returns EPERM above 4.4.27 and below 4.5.0

Hi Naresh,

Quoted 13 lines · On 27 September 2017 at 15:47, <[email protected]> wrote:

From: Naresh Kamboju <[email protected]>

Test utimensat failed on 4.4 is due to expected error is EACCES but got EPERM.

With the reference to backported patch changing the test code to set error code EPERM when kernel version is above 4.4.27 and below 4.5.0

The patch backported on 4.4 details
tree: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
branch: v4.4.27
commit id: b3b4283
vfs: move permission checking into notify_change() for utimes(NULL)

Quoted 3 lines

Bug reported on this case,
LKFT: linux-stable-4.4: LTP utimensat01 failed-EXPECTED: EACCES but got EPERM
https://bugs.linaro.org/show_bug.cgi?id=3142

Looks good to me; please feel free to add

Quoted 24 lines
---
 testcases/kernel/syscalls/utimensat/utimensat_tests.sh | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
testcases/kernel/syscalls/utimensat/utimensat_tests.sh +5 -2
index 48154d6..46a0cc6 100755
@@ -32,7 +32,11 @@ fi
 
 # Starting with 4.8.0 operations on immutable files return EPERM instead of
 # EACCES.
-if tst_kvcmp -lt "4.8.0"; then
+# This patch has also been merged to stable 4.4 with
+# b3b4283 ("vfs: move permission checking into notify_change() for utimes(NULL)")
+if tst_kvcmp -ge "4.4.27" -a -lt "4.5.0"; then
+       imaccess=EPERM
+elif tst_kvcmp -lt "4.4.27"; then
        imaccess=EACCES
 else
        imaccess=EPERM
--
Quoted 2 lines

2.7.4

Best,
Sumit.

#2 lore raw

PATCH v2 1/1 utimensat_tests.sh: returns EPERM above 4.4.27 and below 4.5.0

In reply to [email protected]

Hi!
Jan: Since you suggested to go this way should I commit this with your
Suggested-by: or Signed-off-by: ? Or will you do that yourself?

I would like to finally tag the release today in the evening, so that we can move on the patches that are waiting in the queue...

Signature · 2 lines
Cyril Hrubis
[email protected]
#3 lore raw

PATCH v2 1/1 utimensat_tests.sh: returns EPERM above 4.4.27 and below 4.5.0

----- Original Message -----

Quoted 3 lines

Hi!
Jan: Since you suggested to go this way should I commit this with your
Suggested-by: or Signed-off-by: ? Or will you do that yourself?

Pushed.

Regards,
Jan

#4 lore raw

PATCH v2 1/1 utimensat_tests.sh: returns EPERM above 4.4.27 and below 4.5.0

Hi!
Great thanks for pushing it.

Now the only patch to consider is the v2 for controllers/cpuset I've send yesterday. I'm kind of undecided, it fixes the main issue, but oncovers a bunch of smaller ones for me. The cpuset_sched_domain, cpuset_load_balance, cpuset_memory and cpuset_memory_pressure fail for me.

Have you tried that patch? Does it work for you?

Signature · 2 lines
Cyril Hrubis
[email protected]
#5 lore raw

PATCH v2 1/1 utimensat_tests.sh: returns EPERM above 4.4.27 and below 4.5.0

----- Original Message -----

Quoted 10 lines

Hi!
Great thanks for pushing it.

Now the only patch to consider is the v2 for controllers/cpuset I've send yesterday. I'm kind of undecided, it fixes the main issue, but oncovers a bunch of smaller ones for me. The cpuset_sched_domain, cpuset_load_balance, cpuset_memory and cpuset_memory_pressure fail for me.

Have you tried that patch? Does it work for you?

I think I tried v1 (very long time ago) on 3.10 kernel (RHEL7), and I recall 1 or 2 failures, but that was unrelated to patch.

Regards,
Jan

#6 lore raw

PATCH v2 1/1 utimensat_tests.sh: returns EPERM above 4.4.27 and below 4.5.0

Hi!

Quoted 10 lines
Quoted 7 lines

Now the only patch to consider is the v2 for controllers/cpuset I've send yesterday. I'm kind of undecided, it fixes the main issue, but oncovers a bunch of smaller ones for me. The cpuset_sched_domain, cpuset_load_balance, cpuset_memory and cpuset_memory_pressure fail for me.

Have you tried that patch? Does it work for you?

I think I tried v1 (very long time ago) on 3.10 kernel (RHEL7), and I recall 1 or 2 failures, but that was unrelated to patch.

I've tried the patch on pre-systemd distro and it breaks the tests there, so let's shelve the patch for now. I will get to it right after the release is done and also look into the reset of the failures I'm getting on 4.4 kernel, which is the one I've tested.

Signature · 2 lines
Cyril Hrubis
[email protected]