Roman I Khimov wrote:
В сообщении от Суббота 05 июня 2010 04:03:59 автор Tom Rini написал:
We add a lockfile of do_populate_sdk and do_rootfs (in rootfs_ipk) that
is also the lockfile that package_update_index_ipk uses.  With enough
threads it is possible that one image (or meta-toolchain) is attempting
to use the package index while another has only reached the point of
generating the index leading to an empty index being seen later on.

Am I right that effectively it makes rootfs creation sequential? It's bad for performance.

Yes, this does introduce a bottleneck at these points.

Probably it's time to fix ipkg-make-index to not touch index files if no new packages are found as was suggested some time ago:

http://patchwork.openembedded.org/patch/744/

But thinking about it a bit more, ipkg-make-index hack won't really fix the issue in this case, as we can have image A with a set of packages, image B with a similar set of packages plus additional package P and then A would do package_update_index_ipk and enter do_rootfs, then P gets completed, package_update_index_ipk for B is started and the package index really needs an update, thus things can break again.
>
> Maybe it's easier to make those indexes per-image for performance.

Right. The problem is that we really need the index to be per user of the feed. I don't know enough about ipkg to say if we could move the indices to ${WORKDIR} and keep the packages where they are (and then, what do folks that populate a feed need?) but that would solve this particular problem.

--
Tom Rini
Mentor Graphics Corporation

_______________________________________________
Openembedded-devel mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel

Reply via email to