On Friday, December 09, 2011 04:10:36 PM Koen Kooi wrote: > Op 9 dec. 2011, om 16:05 heeft Richard Purdie het volgende geschreven: > > On Fri, 2011-12-09 at 14:44 +0100, Koen Kooi wrote: > >> Op 8 dec. 2011, om 08:05 heeft Martin Jansa het volgende geschreven: > >>> On Thu, Dec 08, 2011 at 12:53:11AM +0100, Andreas Müller wrote: > >>>> On Wednesday, December 07, 2011 06:34:07 PM Richard Purdie wrote: > >>>>> We need pseudo to use the rootfs passwd/group files belonging to the > >>>>> rootfs when building images. This patch ensures that we use the > >>>>> rootfs files instead of those in the sysroot which can lead to > >>>>> incorrect file ownership issues. > >>>>> > >>>>> Signed-off-by: Richard Purdie <richard.pur...@linuxfoundation.org> > >>>>> > >>>>> diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass > >>>>> index 4642fa6..865d430 100644 > >>>>> --- a/meta/classes/image.bbclass > >>>>> +++ b/meta/classes/image.bbclass > >>>>> @@ -121,6 +121,8 @@ IMAGE_LINGUAS ?= "de-de fr-fr en-gb" > >>>>> > >>>>> LINGUAS_INSTALL = "${@" ".join(map(lambda s: "locale-base-%s" % s, > >>>>> d.getVar('IMAGE_LINGUAS', 1).split()))}" > >>>>> > >>>>> +PSEUDO_PASSWD = "${IMAGE_ROOTFS}" > >>>>> + > >>>>> do_rootfs[nostamp] = "1" > >>>>> do_rootfs[dirs] = "${TOPDIR}" > >>>>> do_rootfs[lockfiles] += "${IMAGE_ROOTFS}.lock" > >>>>> diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf > >>>>> index e80cc32..eeb1fc4 100644 > >>>>> --- a/meta/conf/bitbake.conf > >>>>> +++ b/meta/conf/bitbake.conf > >>>>> @@ -580,11 +580,12 @@ SRC_URI = "file://${FILE}" > >>>>> > >>>>> # Use pseudo as the fakeroot implementation > >>>>> PSEUDO_LOCALSTATEDIR ?= "${WORKDIR}/pseudo/" > >>>>> +PSEUDO_PASSWD ?= "${STAGING_DIR_TARGET}" > >>>>> export PSEUDO_DISABLED = "1" > >>>>> #export PSEUDO_PREFIX = "${STAGING_DIR_NATIVE}${prefix_native}" > >>>>> #export PSEUDO_BINDIR = "${STAGING_DIR_NATIVE}${bindir_native}" > >>>>> #export PSEUDO_LIBDIR = > >>>>> "${STAGING_DIR_NATIVE}$PSEUDOBINDIR/../lib/pseudo/lib -FAKEROOTENV = > >>>>> "PSEUDO_PREFIX=${STAGING_DIR_NATIVE}${prefix_native} > >>>>> PSEUDO_LOCALSTATEDIR=${PSEUDO_LOCALSTATEDIR} > >>>>> PSEUDO_PASSWD=${STAGING_DIR_TARGET} PSEUDO_NOSYMLINKEXP=1 > >>>>> PSEUDO_DISABLED=0" +FAKEROOTENV = > >>>>> "PSEUDO_PREFIX=${STAGING_DIR_NATIVE}${prefix_native} > >>>>> PSEUDO_LOCALSTATEDIR=${PSEUDO_LOCALSTATEDIR} > >>>>> PSEUDO_PASSWD=${PSEUDO_PASSWD} PSEUDO_NOSYMLINKEXP=1 > >>>>> PSEUDO_DISABLED=0" FAKEROOTNOENV = "PSEUDO_UNLOAD=1" > >>>>> FAKEROOTDIRS = "${PSEUDO_LOCALSTATEDIR}" > >>>>> PREFERRED_PROVIDER_virtual/fakeroot-native ?= "pseudo-native" > >>>> > >>>> dbus still needs manual call of > >>>> > >>>> chown messagebus:messagebus /var/run/dbus /var/lib/dbus > >>>> > >>>> ( it is root:root on my image) and > >>>> > >>>> chown root:messagebus /usr/libexec/dbus-daemon-launch-helper > >>>> > >>>> ( it is avahi:netdev on my image ) > >>>> > >>>> Does this one fix it? > >>> > >>> It did for me, see: > >>> http://bugzilla.pokylinux.org/show_bug.cgi?id=1711 > >>> > >>>> To test: Is it enough to rebuild dbus? > >>> > >>> I had right owners in dbus package, wrong only in rootfs, so your issue > >>> could be different. > >> > >> I've also started seeing this issue recently, I wonder if it's due to > >> switching MACHINEs and sstate invalidation. > > > > Has it continued since the above patch was merged or not? > > > > What we really need at this point is a clear reproducer for the bug. For me the dbus bug is stable since Otavio's patch which moved all chown stuff from pkg_postinst to do_install [1] > > I'm seeing it in a filesystem I built yesterday from an incremental build: > > commit 493746f1d7f1410284880203c1ac462d61ab5299 > Author: Martin Jansa <martin.ja...@gmail.com> > Date: Tue Dec 6 09:35:21 2011 +0100 > In passwd/groups I have:
root@overo:~# cat /etc/passwd ... avahi:x:999:999::/var/run/avahi-daemon:/bin/false messagebus:x:998:997::/var/lib/dbus:/bin/false root@overo:~# cat /etc/group ... avahi:x:999: netdev:x:998: messagebus:x:997: lock:x:996: for messagebus group I see guid 997 and uuid 998 AND netdev uuid is 998! After testing the patch - we are currently talking of - I have: /var/run/dbus -> root:root /var/lib/dbus -> 70:netdev /usr/libexec/dbus-daemon-launch-helper -> root:netdev and I swear before the patch I saw one of these files with owner avahi! Is there some mechanism, enusring useradd/groupadd stuff working properly for multiple threads adding users/groups at the same time? Andreas [1] http://cgit.openembedded.org/openembedded- core/commit/?id=46e6c3fa8034b12d178d605f3f5d7efe69671a13 _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core