Re: [OE-core] [PATCH] sstate.bbclass: adds warnings for the exceptions of os.utime in siginfo
Richard Purdie escreveu no dia segunda, 4/10/2021 à(s) 21:03: > On Mon, 2021-10-04 at 18:59 +0100, Jose Quaresma wrote: > > I understand the exception for the use cases but I think it would be > useful > > to show this to the users. Will it be more appropriate perhaps to log > this as > > debug messages? > > The trouble is in the situations that is guarding against, the user cannot > do > anything about it so warnings definitely aren't appropriate and I'm not > sure > debug messages would be welcome either. Those would be less invasive > though. > After your explanation, it is not so useful. > > I have a final question that I don't understand clearly. > > Can the omission of these timestamps updates on siginfo invalidate the > use of > > the sstate-cache for that task, > > bitbake-dumpsig can complain about that? > > I think there is a misunderstanding here. The timestamps I've been talking > about > are part of reproducible builds and the SOURCE_DATE_EPOCH variable and > code. > These aim to make the output identical. If the output is identical, hash > equivalence is more successful and the more successful hash equivalence > is, the > more sstate reuse you get. > The timestamps in this part of the sstate code are simply there to handle > sstate > artefact aging (e.g. delete things which haven't been used in X weeks). The > timestamp change is therefore "nice" but if it doesn't happen, it isn't a > problem. Hope that helps clarify. > Yes, it is true I have misunderstood that part of the reproducible builds and SOURCE_DATE_EPOCH. It's hard for me to figure out all the pieces involved in hash equivalence and sstate handling. One more detail that I understand better. Your opinions and explanations always help a lot. Thank you very much. > Cheers, > > Richard > > > -- Best regards, José Quaresma -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#156675): https://lists.openembedded.org/g/openembedded-core/message/156675 Mute This Topic: https://lists.openembedded.org/mt/86052256/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [OE-core] [PATCH] sstate.bbclass: adds warnings for the exceptions of os.utime in siginfo
On Mon, 2021-10-04 at 18:59 +0100, Jose Quaresma wrote: > I understand the exception for the use cases but I think it would be useful > to show this to the users. Will it be more appropriate perhaps to log this as > debug messages? The trouble is in the situations that is guarding against, the user cannot do anything about it so warnings definitely aren't appropriate and I'm not sure debug messages would be welcome either. Those would be less invasive though. > I have a final question that I don't understand clearly. > Can the omission of these timestamps updates on siginfo invalidate the use of > the sstate-cache for that task, > bitbake-dumpsig can complain about that? I think there is a misunderstanding here. The timestamps I've been talking about are part of reproducible builds and the SOURCE_DATE_EPOCH variable and code. These aim to make the output identical. If the output is identical, hash equivalence is more successful and the more successful hash equivalence is, the more sstate reuse you get. The timestamps in this part of the sstate code are simply there to handle sstate artefact aging (e.g. delete things which haven't been used in X weeks). The timestamp change is therefore "nice" but if it doesn't happen, it isn't a problem. Hope that helps clarify. Cheers, Richard -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#156630): https://lists.openembedded.org/g/openembedded-core/message/156630 Mute This Topic: https://lists.openembedded.org/mt/86052256/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [OE-core] [PATCH] sstate.bbclass: adds warnings for the exceptions of os.utime in siginfo
Richard Purdie escreveu no dia segunda, 4/10/2021 à(s) 15:11: > On Sun, 2021-10-03 at 22:38 +0100, Jose Quaresma wrote: > > When we can't update the access and modified times of sstate siginfo > > it is useful to infor the user about that. > > > > Signed-off-by: Jose Quaresma > > --- > > meta/classes/sstate.bbclass | 12 ++-- > > 1 file changed, 10 insertions(+), 2 deletions(-) > > > > diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass > > index 92a73114bb..2deecd8777 100644 > > --- a/meta/classes/sstate.bbclass > > +++ b/meta/classes/sstate.bbclass > > @@ -720,11 +720,15 @@ def sstate_package(ss, d): > > try: > > os.utime(siginfo, None) > > except PermissionError: > > +bb.warn("Cannot sets the access and modified times of > sstate siginfo %s, no access rights" % siginfo) > > pass > > except OSError as e: > > # Handle read-only file systems gracefully > > import errno > > -if e.errno != errno.EROFS: > > +if e.errno == errno.EROFS: > > +bb.warn("Cannot sets the access and modified times of > sstate siginfo %s, read-only file system" % siginfo) > > +pass > > +else: > > raise e > > > > return > > @@ -1165,11 +1169,15 @@ python sstate_eventhandler() { > > try: > > os.utime(siginfo, None) > > except PermissionError: > > +bb.warn("Cannot sets the access and modified times of > sstate siginfo %s, no access rights" % siginfo) > > pass > > except OSError as e: > > # Handle read-only file systems gracefully > > import errno > > -if e.errno != errno.EROFS: > > +if e.errno == errno.EROFS: > > +bb.warn("Cannot sets the access and modified times > of sstate siginfo %s, read-only file system" % siginfo) > > +pass > > +else: > > raise e > > > > > > I'm not sure we can do this as there are some cases where this is > unavoidable by > people's state setups and we wouldn't want to show warnings in those cases. > > (e.g. think of a shared sstate dir between multiple users where the objects > remain owned by the user that created them). > > > Cheers, > > Richard > > > Hi Richard, I understand the exception for the use cases but I think it would be useful to show this to the users. Will it be more appropriate perhaps to log this as debug messages? I have a final question that I don't understand clearly. Can the omission of these timestamps updates on siginfo invalidate the use of the sstate-cache for that task, bitbake-dumpsig can complain about that? -- Best regards, José Quaresma -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#156620): https://lists.openembedded.org/g/openembedded-core/message/156620 Mute This Topic: https://lists.openembedded.org/mt/86052256/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [OE-core] [PATCH] sstate.bbclass: adds warnings for the exceptions of os.utime in siginfo
On Sun, 2021-10-03 at 22:38 +0100, Jose Quaresma wrote: > When we can't update the access and modified times of sstate siginfo > it is useful to infor the user about that. > > Signed-off-by: Jose Quaresma > --- > meta/classes/sstate.bbclass | 12 ++-- > 1 file changed, 10 insertions(+), 2 deletions(-) > > diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass > index 92a73114bb..2deecd8777 100644 > --- a/meta/classes/sstate.bbclass > +++ b/meta/classes/sstate.bbclass > @@ -720,11 +720,15 @@ def sstate_package(ss, d): > try: > os.utime(siginfo, None) > except PermissionError: > +bb.warn("Cannot sets the access and modified times of sstate > siginfo %s, no access rights" % siginfo) > pass > except OSError as e: > # Handle read-only file systems gracefully > import errno > -if e.errno != errno.EROFS: > +if e.errno == errno.EROFS: > +bb.warn("Cannot sets the access and modified times of sstate > siginfo %s, read-only file system" % siginfo) > +pass > +else: > raise e > > return > @@ -1165,11 +1169,15 @@ python sstate_eventhandler() { > try: > os.utime(siginfo, None) > except PermissionError: > +bb.warn("Cannot sets the access and modified times of sstate > siginfo %s, no access rights" % siginfo) > pass > except OSError as e: > # Handle read-only file systems gracefully > import errno > -if e.errno != errno.EROFS: > +if e.errno == errno.EROFS: > +bb.warn("Cannot sets the access and modified times of > sstate siginfo %s, read-only file system" % siginfo) > +pass > +else: > raise e > > I'm not sure we can do this as there are some cases where this is unavoidable by people's state setups and we wouldn't want to show warnings in those cases. (e.g. think of a shared sstate dir between multiple users where the objects remain owned by the user that created them). Cheers, Richard -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#156592): https://lists.openembedded.org/g/openembedded-core/message/156592 Mute This Topic: https://lists.openembedded.org/mt/86052256/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCH] sstate.bbclass: adds warnings for the exceptions of os.utime in siginfo
When we can't update the access and modified times of sstate siginfo it is useful to infor the user about that. Signed-off-by: Jose Quaresma --- meta/classes/sstate.bbclass | 12 ++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass index 92a73114bb..2deecd8777 100644 --- a/meta/classes/sstate.bbclass +++ b/meta/classes/sstate.bbclass @@ -720,11 +720,15 @@ def sstate_package(ss, d): try: os.utime(siginfo, None) except PermissionError: +bb.warn("Cannot sets the access and modified times of sstate siginfo %s, no access rights" % siginfo) pass except OSError as e: # Handle read-only file systems gracefully import errno -if e.errno != errno.EROFS: +if e.errno == errno.EROFS: +bb.warn("Cannot sets the access and modified times of sstate siginfo %s, read-only file system" % siginfo) +pass +else: raise e return @@ -1165,11 +1169,15 @@ python sstate_eventhandler() { try: os.utime(siginfo, None) except PermissionError: +bb.warn("Cannot sets the access and modified times of sstate siginfo %s, no access rights" % siginfo) pass except OSError as e: # Handle read-only file systems gracefully import errno -if e.errno != errno.EROFS: +if e.errno == errno.EROFS: +bb.warn("Cannot sets the access and modified times of sstate siginfo %s, read-only file system" % siginfo) +pass +else: raise e } -- 2.33.0 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#156561): https://lists.openembedded.org/g/openembedded-core/message/156561 Mute This Topic: https://lists.openembedded.org/mt/86052256/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-