[poky] How to debug task hash mismatches?
Sergey 'Jin' Bostandzhyan
jin at mediatomb.cc
Tue Nov 15 03:08:36 PST 2016
Hi,
I am migrating our setup from Yocto 2.0.2 to Yocto 2.2 and I ran into the
problem with task hash mismatches.
I found Richards commit 0a4a6d6956a10aa0a6589de12b0b2380a9f0a7d9 which
suggested to uncomment some debugging code in in poky/bitbake/lib/bb/siggen.py
and later it was hinted to me on IRC that master has more commits that
should help to find out where the mismatch is coming from, so in the meantime
I switched to master.
I did uncomment those lines in siggen.py, but the problem is that I can only
find one hash, so I don't know what to diffsig...
I.e.:
ERROR: dss-1.38.0+gitr5781+0a32968-r1.1 do_populate_lic: Taskhash mismatch 9981d86bd31215aa722d7b2dc283fd1c versus fad0983c152e6b6b60fb1a5519bfeebb for /home/jin/dss-oe/yocto/dS/meta-digitalstrom-devel/recipes-digitalstrom/dss/dss_git.bb.do_populate_lic
[poky-devel-nopkg-build]$ find . | grep 9981d86bd31215aa722d7b2dc283fd1c
returns nothing.
[poky-devel-nopkg-build]$ find . | grep fad0983c152e6b6b60fb1a5519bfeebb
returns:
./build/stamps/armv7a-neon-poky-linux-gnueabi/dss/1.38.0+gitr5781+0a32968-r1.1.do_populate_lic.sigdata.fad0983c152e6b6b60fb1a5519bfeebb
./build/stamps/armv7a-neon-poky-linux-gnueabi/dss/1.38.0+gitr5781+0a32968-r1.1.do_populate_lic.fad0983c152e6b6b60fb1a5519bfeebb
./sstate-cache/fa/sstate:dss::1.38.0+gitr5781+0a32968:r1.1::3:fad0983c152e6b6b60fb1a5519bfeebb_populate_lic.tgz.siginfo
./sstate-cache/fa/sstate:dss::1.38.0+gitr5781+0a32968:r1.1::3:fad0983c152e6b6b60fb1a5519bfeebb_populate_lic.tgz
So, where do I find this 9981d86bd31215aa722d7b2dc283fd1c hash?
I tried to vardepsexclude some variables by trial and error, but did not get
anywhere...
I also noticed that upon cleanall/rebuild the hash
fad0983c152e6b6b60fb1a5519bfeebb stays the same, while the other one changes.
I'm really blocked by this issue, so any help would be greately appreciated.
That being said, I imagine people run into this more often, so maybe it would
make sense to introduce a configuration variable that would allow to enable
the siggen debug code without having to edit the sources and which would also
provide more output or even some helper code that detects the mismatch and
diffsigs automatically?
Anyway, I'm OK with manual debugging... but how do I do it? :)
Kind regards,
Sergey
More information about the poky
mailing list