All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Chen Qi" <Qi.Chen@windriver.com>
To: Richard Purdie <richard.purdie@linuxfoundation.org>,
	openembedded-core@lists.openembedded.org, seebs@seebs.net,
	mghatle@gmail.com
Subject: Re: [OE-core][PATCH] populate_sdk_ext: record METADATA_REVISION
Date: Wed, 10 Mar 2021 16:31:07 +0800	[thread overview]
Message-ID: <089597c0-e61a-f775-5ab8-992b3942b185@windriver.com> (raw)
In-Reply-To: <166A488578ED5898.3944@lists.openembedded.org>

[-- Attachment #1: Type: text/plain, Size: 3774 bytes --]

On 03/08/2021 02:09 PM, Chen Qi wrote:
> On 03/08/2021 10:30 AM, Chen Qi wrote:
>> On 03/06/2021 07:29 AM, Richard Purdie wrote:
>>> On Fri, 2021-03-05 at 18:10 +0800, Chen Qi wrote:
>>>> As we delete the .git/ directory, it's impossible to get METADATA_REVISION
>>>> inside eSDK. Because of this, we meet the following warning when installing eSDK.
>>>>
>>>>    WARNING: The base-files:do_install sig is computed to be 16b9d96148d45de183cc94667aae016ec7d102d48255456381e718cd4bbd0aa0, \
>>>>    but the sig is locked to 6eb0dcaed504282becee94662481d79264db920dee1f7deda18230133fff8f36 in SIGGEN_LOCKEDSIGS_t-qemux86-64
>>>>
>>>> So we record METADATA_REVISION in eSDK generation time to fix this problem.
>>>>
>>>> Signed-off-by: Chen Qi<Qi.Chen@windriver.com>
>>>> ---
>>>>   meta/classes/populate_sdk_ext.bbclass | 3 +++
>>>>   1 file changed, 3 insertions(+)
>>> I have to wonder why base-files is depending on the metadata-revision? That
>>> implies that base-files and hence anything that depends upon it would rebuild
>>> each time you update to a new revision. Is that really what you want?
>>>
>>> Cheers,
>>>
>>> Richard
>>>
>>>
>>>
>>>
>> Hi Richard,
>>
>> I tested it on pure yocto project. No extra layer or configuration.
>> I'm also wondering why base-files do_install depends on 
>> METADATA_REVISION. The strange thing is that things do not rebuild at 
>> eSDK installation time. There's only a warning about base-files 
>> do_install signature.
>>
>
> Just found answer for the above problem.
> A previous commit changes poky.conf to make DISTRO_VERSION contain 
> METADATA_REVISION.
> """
> poky.conf: do not write current date into distro version, use git hash instead
>
> """
>
> I also confirmed that merely updating the git revision will result in 
> a rebuild of base-files.
> Rebuild of base-files does not result in rebuild of other recipes 
> because we have 'base-files' in SIGGEN_EXCLUDERECIPES_ABISAFE.
>
> For the problem below, I haven't found the root cause, still working 
> on it.
>
> Best Regards,
> Chen Qi
>
>> In fact, this is a problem I found when I was dealing with another 
>> problem with eSDK.
>> *Yocto's current eSDK cannot be successfully installed on a different 
>> distro.* For example, you build esdk on ubunt18 and install the esdk 
>> on ubuntu20, then you'll get an error of pseudo do_fetch task re-run 
>> unexpectedly.
>> I think it might be related to NATIVELSBSTRING, but I haven't found 
>> out why.
>> Manually setting NATIVELSBSTRING to some fixed string such as 'Linux' 
>> will solve the above problem.
>>
>> I'm still checking the codes. If you have some idea/suggestion, 
>> please let me know.
>>

I think I've found the problem.

"""
commit 3ecf5d9692fec97b37af6a4e6c747a4e2c2ca292
Author: Richard Purdie <richard.purdie@linuxfoundation.org>
Date:   Sat Nov 21 16:16:40 2020 +0000

     uninative: Don't use single sstate for pseudo-native

     pseudo-native is a bit special. It conditionally compiles in 
support for
     xattr, statx and statvfs amongst other options. If a pseudo-native 
binary is
     used on a system where these functions are present but it wasn't 
compiled in
     we see hard to debug permissions problems.
[snip]
"""

This commit effectively says that the pseudo-native's sstate cache 
should not be shared among hosts with different distros, as it's 
appending ${ORIGLSBSTRING} to SSTATE_PKGARCH for pseudo-native.

I'm not familiar with the pseudo's codes. But I'm wondering if it's 
possible for pseudo to always build in attr support and behave 
differently on different hosts/filesystems.

Best Regards,
Chen Qi

>> Best Regards,
>> Chen Qi
>>
>>
>>
>
>
>
> 
>


[-- Attachment #2: Type: text/html, Size: 6034 bytes --]

  parent reply	other threads:[~2021-03-10  8:21 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-05 10:10 [OE-core][PATCH] populate_sdk_ext: record METADATA_REVISION Chen Qi
2021-03-05 23:29 ` Richard Purdie
2021-03-08  2:30   ` Chen Qi
     [not found]   ` <166A3C91F1FD80D0.3944@lists.openembedded.org>
2021-03-08  6:09     ` Chen Qi
     [not found]     ` <166A488578ED5898.3944@lists.openembedded.org>
2021-03-10  8:31       ` Chen Qi [this message]
     [not found]       ` <166AED6BFC056C10.17015@lists.openembedded.org>
2021-03-10  9:11         ` Chen Qi
2021-03-10  9:11           ` Richard Purdie

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=089597c0-e61a-f775-5ab8-992b3942b185@windriver.com \
    --to=qi.chen@windriver.com \
    --cc=mghatle@gmail.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=richard.purdie@linuxfoundation.org \
    --cc=seebs@seebs.net \
    /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.