On Sat, 2020-12-19 at 11:03 +0000, Richard Purdie via
lists.openembedded.org wrote:
> On Sat, 2020-12-19 at 10:33 +0000, Richard Purdie via
> lists.openembedded.org wrote:
> > https://autobuilder.yoctoproject.org/typhoon/#/builders/87/builds/1662/steps/14/logs/stdio
> > 
> > (there is a second issue there from other patches in master-next
> > too).
> > 
> > We do need a green build to be able to merge so this may depend on
> > someone else looking into that reproducibility issue. I did try and
> > give some hints in my previous email, I'd need to look at the code
> > to
> > be able to give any more pointers.
> 
> Looking at the output in 
> https://autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20201219-fqxxqel9/packages/diff-html/
> 
> you can see that the .text section in the binary changes size.
> Ignoring
> the offset changes, the actual change is the change in size of
> the maybe_emit_login_defs_warning function from 256 to 275 bytes.
> 
> That function is in the systemd sources in
> git/src/sysusers/sysusers.c.
> 
> It uses a variety of configuration options such as:
> 
> SYSTEM_ALLOC_UID_MIN
> SYSTEM_UID_MAX
> SYSTEM_ALLOC_GID_MIN
> SYSTEM_GID_MAX
> 
> My best guess is that we're not setting one of these and its falling
> back to a host system value which varies by host distro.
> 
> Obviously we need to prove that and figure out the correct value for
> OE
> usage but its maybe a pointer as to the possible problem (or I could
> be
> totally wrong!).

I was far enough into this I kept going. The defaults for these are set
in meson.build from:

foreach tuple : [['system-alloc-uid-min', 'SYS_UID_MIN', 1],  # Also see 
login.defs(5).
                 ['system-uid-max',       'SYS_UID_MAX', 999],
                 ['system-alloc-gid-min', 'SYS_GID_MIN', 1],
                 ['system-gid-max',       'SYS_GID_MAX', 999]]

which if they're not set, looks at the host system /etc/login.defs file
which is host contamination and is bad. On my ubuntu system, these
aren't set by default. For Centos7 and 8:

[rpurdie@centos8-ty-1 ~]$ grep SYS /etc/login.defs
SYS_UID_MIN               201
SYS_UID_MAX               999
SYS_GID_MIN               201
SYS_GID_MAX               999

so I think we have our trigger. I have a simply patch to specify
defaults in the recipe which I think should resolve this. I'll add it
to master-next and see if that helps.

Cheers,

Richard





-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#145885): 
https://lists.openembedded.org/g/openembedded-core/message/145885
Mute This Topic: https://lists.openembedded.org/mt/79058125/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to