[yocto] sstate-cache question

Gary Thomas gary at mlbassoc.com
Wed May 24 21:36:57 PDT 2017


On 2017-05-23 07:27, Gary Thomas wrote:
> On 2017-05-22 22:35, Paul Eggleton wrote:
>> Hi Gary,
>>
>> On Tuesday, 23 May 2017 2:53:45 AM NZST Gary Thomas wrote:
>>> I have a build where I've never manually removed anything from
>>> the sstate-cache and this same build has been used for hundreds
>>> of builds over the last 18 months.  I just tried to find out why
>>> gcc-cross-arm had to be rebuilt (it seems to happen almost every
>>> time I update my Poky/Yocto tree (master)).  Here's what I got:
>>>
>>> $ bitbake-diffsigs -t gcc-cross-arm compile
>>> Hash for dependent task gcc/gcc-cross_6.3.bb.do_configure changed from
>> 208373dd9ae01101a26a9412eb50b110 to
>>> d65095d4b9aff89f6990bd17c0ab210b
>>> Unable to find matching sigdata for /local/poky-cutting-edge/meta/recipes-
>> devtools/gcc/gcc-cross_6.3.bb.do_configure
>>> with hashes 208373dd9ae01101a26a9412eb50b110 or
>> d65095d4b9aff89f6990bd17c0ab210b
>>>
>>> So if I didn't remove those files, where did they go?  Am I doing
>>> something wrong running this tool?  (running the same command for
>>> qemu-native seemed to work correctly)
>>
>> Is this with master, pyro, morty or some other version?
> 
> Poky master: 2568e18701fb20d7105eb6e4929f3aff4b9f9c06
> 
>>
>> If you search for files with those hashes in their name do they show up?
> 
> Only .siginfo files:
> $ find sstate-cache/ -name "*d65095d4b9aff89f6990bd17c0ab210b*"
> sstate-cache/universal/d6/sstate:gcc-cross-arm:x86_64-amltd-linux-gnueabi:6.3.0:r0:x86_64_arm:3:d65095d4b9aff89f6990bd17c0ab210b_configure.tgz.siginfo 
> 
> $ find sstate-cache -name "*208373dd9ae01101a26a9412eb50b110*"
> sstate-cache/universal/20/sstate:gcc-cross-arm:x86_64-amltd-linux-gnueabi:6.3.0:r0:x86_64_arm:3:208373dd9ae01101a26a9412eb50b110_configure.tgz.siginfo 
> 
> 
> However, I do find some in tmp/stamps:
> $ ls tmp/stamps/x86_64-linux/gcc-cross-arm
> 6.3.0-r0.do_build.41aca0d85971087f4675d2f504642ce4
> 6.3.0-r0.do_compile.b0eae7e91833efd5e7eceaedbc59983e
> 6.3.0-r0.do_compile.sigdata.9a06aa40225be30babaceb7673cef0a6
> 6.3.0-r0.do_compile.sigdata.b0eae7e91833efd5e7eceaedbc59983e
> 6.3.0-r0.do_configure.d65095d4b9aff89f6990bd17c0ab210b
> 6.3.0-r0.do_configure.sigdata.208373dd9ae01101a26a9412eb50b110
> 6.3.0-r0.do_configure.sigdata.d65095d4b9aff89f6990bd17c0ab210b
> 6.3.0-r0.do_fetch.1dd3c87b3e509c20fa4ffe61d6dc3b41
> 6.3.0-r0.do_gcc_stash_builddir.063822f91220bb40cef0696eb604a568
> 6.3.0-r0.do_gcc_stash_builddir.sigdata.063822f91220bb40cef0696eb604a568
> 6.3.0-r0.do_gcc_stash_builddir.sigdata.28144d3c18c0a09f23f3b0c5e80f049d
> 6.3.0-r0.do_install.0f96c5448dc9360ca3a24d551ad3da89
> 6.3.0-r0.do_install.sigdata.0f96c5448dc9360ca3a24d551ad3da89
> 6.3.0-r0.do_install.sigdata.f2e4d12289c5039854081a832dc8bc0e
> 6.3.0-r0.do_populate_lic_setscene.d2c9226ddb0de5277e2347b69ef84664
> 6.3.0-r0.do_populate_sysroot.15afc3bb019a6c0c1285cbda46cb32b0
> 6.3.0-r0.do_populate_sysroot.sigdata.15afc3bb019a6c0c1285cbda46cb32b0
> 6.3.0-r0.do_populate_sysroot.sigdata.a0c5b715ae9217f02318beff6987d169
> 6.3.0-r0.do_prepare_recipe_sysroot.150112323551011e0e87f99f47ad79c4
> 6.3.0-r0.do_prepare_recipe_sysroot.sigdata.150112323551011e0e87f99f47ad79c4
> 6.3.0-r0.do_prepare_recipe_sysroot.sigdata.4a528becf11832cc3b8f6fa479e98210
> 
> I guess the sstate-cache info alone is not sufficient to use 'bitbake diffsigs'?
> I do occasionally wipe tmp & downloads, so that may explain these errors.
> 

I just updated my Poky/Yocto master (a3d160f9e5826140cc8d6b2ed1b38bf022443b08) and it happened again.
I'm still interested in why gcc-cross-arm had to be rebuilt _again_, so I ran:

$ bitbake-diffsigs -t gcc-cross-arm compile
NOTE: Started PRServer with DBfile: /build/p0382_2016-01-13/cache/prserv.sqlite3, IP: 127.0.0.1, PORT: 45466, PID: 7995
Hash for dependent task gcc/gcc-cross_6.3.bb.do_configure changed from d65095d4b9aff89f6990bd17c0ab210b to 
1378c7a11d96284c3d53894d6434b590
Unable to find matching sigdata for /local/poky-cutting-edge/meta/recipes-devtools/gcc/gcc-cross_6.3.bb.do_configure 
with hashes d65095d4b9aff89f6990bd17c0ab210b or 1378c7a11d96284c3d53894d6434b590
NOTE: Started PRServer with DBfile: /build/p0382_2016-01-13/cache/prserv.sqlite3, IP: 127.0.0.1, PORT: 45466, PID: 7995
NOTE: Terminating PRServer...
$ find tmp/stamps -name "*d65095d4b9aff89f6990bd17c0ab210b*" -or -name "*1378c7a11d96284c3d53894d6434b590*"
tmp/stamps/x86_64-linux/gcc-cross-arm/6.3.0-r0.do_configure.sigdata.1378c7a11d96284c3d53894d6434b590
tmp/stamps/x86_64-linux/gcc-cross-arm/6.3.0-r0.do_configure.sigdata.d65095d4b9aff89f6990bd17c0ab210b
tmp/stamps/x86_64-linux/gcc-cross-arm/6.3.0-r0.do_configure.1378c7a11d96284c3d53894d6434b590

So, a similar error/outcome, but in this case the necessary files
do seem to be present.  I did notice that the only files with those
signatures were for do_configure, so I tried:

$ bitbake-diffsigs -t gcc-cross-arm configure
NOTE: Started PRServer with DBfile: /build/p0382_2016-01-13/cache/prserv.sqlite3, IP: 127.0.0.1, PORT: 34530, PID: 8063
Hash for dependent task gcc/gcc-cross_6.3.bb.do_prepare_recipe_sysroot changed from 150112323551011e0e87f99f47ad79c4 to 
c45aaef0cb01f463f9a1b30bd815cd28
Unable to find matching sigdata for 
/local/poky-cutting-edge/meta/recipes-devtools/gcc/gcc-cross_6.3.bb.do_prepare_recipe_sysroot with hashes 
150112323551011e0e87f99f47ad79c4 or c45aaef0cb01f463f9a1b30bd815cd28
NOTE: Started PRServer with DBfile: /build/p0382_2016-01-13/cache/prserv.sqlite3, IP: 127.0.0.1, PORT: 34530, PID: 8063
NOTE: Terminating PRServer...
$ find tmp/stamps -name "*150112323551011e0e87f99f47ad79c4*" -or -name "*c45aaef0cb01f463f9a1b30bd815cd28*"
tmp/stamps/x86_64-linux/gcc-cross-arm/6.3.0-r0.do_prepare_recipe_sysroot.c45aaef0cb01f463f9a1b30bd815cd28
tmp/stamps/x86_64-linux/gcc-cross-arm/6.3.0-r0.do_prepare_recipe_sysroot.sigdata.c45aaef0cb01f463f9a1b30bd815cd28
tmp/stamps/x86_64-linux/gcc-cross-arm/6.3.0-r0.do_prepare_recipe_sysroot.sigdata.150112323551011e0e87f99f47ad79c4

Still not working :-(  What am I missing?  How do I track this down
(both the issues with bitbake-diffsigs as well as why gcc-cross-arm
is being rebuilt)?

Thanks

-- 
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------



More information about the yocto mailing list