All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anuj Mittal <anuj.mittal@intel.com>
To: openembedded-core@lists.openembedded.org
Subject: [hardknott][PATCH 08/14] sstate: another fix for touching files inside pseudo
Date: Tue, 16 Nov 2021 11:24:14 +0800	[thread overview]
Message-ID: <a5240d78f287ff5f3c5831af69e6e0ca3feaf769.1637032974.git.anuj.mittal@intel.com> (raw)
In-Reply-To: <cover.1637032974.git.anuj.mittal@intel.com>

From: Jose Quaresma <quaresma.jose@gmail.com>

This patch is a fixup for 676757f "sstate: fix touching files inside pseudo"

running the 'id' command inside the sstate_unpack_package
function shows that this funcion run inside the pseudo:

 uid=0(root) gid=0(root) groups=0(root)

The check for [ -w ${SSTATE_PKG} ] and [ -O ${SSTATE_PKG}.siginfo ]
will always return true and the touch can fail when the real user
don't have permission or in readonly filesystem.

As the documentation refers:
- the file test operator "-w" check if the file has write permission
(for the user running the test).
- the file test operator "-O" check if you are owner of file

We can avoid this test running the touch and mask any return errors
that we have.

(From OE-Core rev: 29fc85997ade490ae46ffca37ef8e1a56957c876)

Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 5b9210d66c78bb3f79056e5586cea7b0edd714a9)
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
---
 meta/classes/sstate.bbclass | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass
index 957762db5c..da29225983 100644
--- a/meta/classes/sstate.bbclass
+++ b/meta/classes/sstate.bbclass
@@ -863,12 +863,12 @@ python sstate_report_unihash() {
 #
 sstate_unpack_package () {
 	tar -xvzf ${SSTATE_PKG}
-	# update .siginfo atime on local/NFS mirror
-	[ -O ${SSTATE_PKG}.siginfo ] && [ -w ${SSTATE_PKG}.siginfo ] && [ -h ${SSTATE_PKG}.siginfo ] && touch -a ${SSTATE_PKG}.siginfo
-	# Use "! -w ||" to return true for read only files
-	[ ! -w ${SSTATE_PKG} ] || touch --no-dereference ${SSTATE_PKG}
-	[ ! -w ${SSTATE_PKG}.sig ] || [ ! -e ${SSTATE_PKG}.sig ] || touch --no-dereference ${SSTATE_PKG}.sig
-	[ ! -w ${SSTATE_PKG}.siginfo ] || [ ! -e ${SSTATE_PKG}.siginfo ] || touch --no-dereference ${SSTATE_PKG}.siginfo
+	# update .siginfo atime on local/NFS mirror if it is a symbolic link
+	[ ! -h ${SSTATE_PKG}.siginfo ] || touch -a ${SSTATE_PKG}.siginfo 2>/dev/null || true
+	# update each symbolic link instead of any referenced file
+	touch --no-dereference ${SSTATE_PKG} 2>/dev/null || true
+	[ ! -e ${SSTATE_PKG}.sig ] || touch --no-dereference ${SSTATE_PKG}.sig 2>/dev/null || true
+	[ ! -e ${SSTATE_PKG}.siginfo ] || touch --no-dereference ${SSTATE_PKG}.siginfo 2>/dev/null || true
 }
 
 BB_HASHCHECK_FUNCTION = "sstate_checkhashes"
-- 
2.33.1



  parent reply	other threads:[~2021-11-16  3:24 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-16  3:24 [hardknott][PATCH 00/14] Review request Anuj Mittal
2021-11-16  3:24 ` [hardknott][PATCH 01/14] linunistring: Add missing gperf-native dependency Anuj Mittal
2021-11-16  3:24 ` [hardknott][PATCH 02/14] pseudo: Add in ability to flush database with shutdown request Anuj Mittal
2021-11-16  3:24 ` [hardknott][PATCH 03/14] pseudo: Add fcntl64 wrapper Anuj Mittal
2021-11-16  3:24 ` [hardknott][PATCH 04/14] sstate: Account for reserved characters when shortening sstate filenames Anuj Mittal
2021-11-16  3:24 ` [hardknott][PATCH 05/14] linux-firmware: upgrade 20210919 -> 20211027 Anuj Mittal
2021-11-16  3:24 ` [hardknott][PATCH 06/14] linux-yocto/5.10: update to v5.10.76 Anuj Mittal
2021-11-16  3:24 ` [hardknott][PATCH 07/14] linux-yocto-rt/5.10: update to -rt54 Anuj Mittal
2021-11-16  3:24 ` Anuj Mittal [this message]
2021-11-16  3:24 ` [hardknott][PATCH 09/14] avahi: update CVE id fixed by local-ping.patch Anuj Mittal
2021-11-16  3:24 ` [hardknott][PATCH 10/14] scripts/convert-srcuri: Backport SRC_URI conversion script from master branch Anuj Mittal
2021-11-16  3:24 ` [hardknott][PATCH 11/14] meta: add explicit branch and protocol to SRC_URI Anuj Mittal
2021-11-16  3:24 ` [hardknott][PATCH 12/14] meta/scripts: Manual git url branch additions Anuj Mittal
2021-11-16  3:24 ` [hardknott][PATCH 13/14] cross-canadian: correct the location of pkg-config files Anuj Mittal
2021-11-16  3:24 ` [hardknott][PATCH 14/14] llvm: bump HASHEQUIV_HASH_VERSION Anuj Mittal
2021-11-16  5:50 ` [OE-core] [hardknott][PATCH 00/14] Review request Jacob Kroon
2021-11-16 15:24   ` Mittal, Anuj

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=a5240d78f287ff5f3c5831af69e6e0ca3feaf769.1637032974.git.anuj.mittal@intel.com \
    --to=anuj.mittal@intel.com \
    --cc=openembedded-core@lists.openembedded.org \
    /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.