[yocto] [sstate question] How does SSTATE_CACHE work when shared?

Schmitt, Richard Richard.Schmitt at commscope.com
Thu May 11 06:22:45 PDT 2017


The writeup in section 4.3.3 of the Yocto reference manual is quite good but I'm still left with a question that I'm hoping someone can shed some light into.

We have the SSTATE_CACHE set up as a shared directory on a build machine.  This means that multiple developers with their own workspaces will all share the same SSTATE_CACHE.  What is not clear is how, or whether the build artifacts are actually shared between developers.

An example of our problem.  We are using a Xilinx BSP.  There is a recipe, device-tree-generation, that will deploy dtb files to the DEPLOY_IMAGE_DIR.  We are running into a case where other developers builds will fail when they run a task (in u-boot-xlnx) which depends on the dtb file being available in DEPLOY_IMAGE_DIR.  My assumption is that the shared state cache indicated that the dtb file did not need to be rebuilt because none of the dependencies changed, hence its signature had not changed.  But, it doesn't actually exist in the users workspace (tmp/deploy/images).

Do I understand this correctly?  Is there some step or configuration that I'm missing?  What is supposed to happen?  Is some magic supposed to copy a previous version of the dtb to the local deploy directory?  Is there something that was supposed invalidate the cache for the local user?  We can work around this by forcing the developer to execute a cleansstate on device-tree-generation but what is going wrong.

Thanks,
Rich
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20170511/6f2b19a2/attachment.html>


More information about the yocto mailing list