[OE-core] [PATCH v2] systemd: upgrade to 243

Scott Murray scott.murray at konsulko.com
Fri Sep 13 22:28:47 UTC 2019


On Sat, 14 Sep 2019, Adrian Bunk wrote:

> On Fri, Sep 13, 2019 at 05:58:09PM -0400, Scott Murray wrote:
> >...
> > --- /dev/null
> > +++ b/meta/recipes-core/systemd/systemd/0002-src-login-brightness.c-include-wait.h.patch
> > @@ -0,0 +1,25 @@
> > +Include wait.h
> > +
> > +Fixes:
> > +src/login/logind-brightness.c:158:85: error: 'WEXITED' undeclared (first use in this function); did you mean 'WIFEXITED'?
> > +  158 |         r = sd_event_add_child(w->manager->event, &w->child_event_source, w->child, WEXITED, on_brightness_writer_exit, w);
> > +      |                                                                                     ^~~~~~~
> >...
> > +--- a/src/login/logind-brightness.c
> > ++++ b/src/login/logind-brightness.c
> > +@@ -1,5 +1,6 @@
> > + /* SPDX-License-Identifier: LGPL-2.1+ */
> > +
> > ++#include <wait.h>
> >...
>
> This should be
>   #include <sys/wait.h>

Okay.

> > --- /dev/null
> > +++ b/meta/recipes-core/systemd/systemd/0004-src-shared-cpu-set-util.h-add-__cpu_mask-definition.patch
> > @@ -0,0 +1,54 @@
> > +Handle __cpu_mask usage
> > +
> > +Fixes errors:
> > +
> > +src/test/test-cpu-set-util.c:18:54: error: '__cpu_mask' undeclared (first use in this function)
> > +src/test/test-sizeof.c:73:14: error: '__cpu_mask' undeclared (first use in this function)
> > +
> > +__cpu_mask is an internal type of glibc's cpu_set implementation, not
> > +part of the POSIX definition, which is problematic when building with
> > +musl, which does not define a matching type.  From inspection of musl's
> > +sched.h, however, it is clear that the corresponding type would be long,
> > +which does match glibc's actual __CPU_MASK_TYPE.  So, add a typedef to
> > +cpu-set-util.h defining __cpu_mask appropriately.
> >...
> > +--- a/src/shared/cpu-set-util.h
> > ++++ b/src/shared/cpu-set-util.h
> > +@@ -6,6 +6,8 @@
> > + #include "macro.h"
> > + #include "missing_syscall.h"
> > +
> > ++typedef long __cpu_mask;
> >...
>
> Signed looks wrong.

I went that way since the usage is all with sizeof, and both glibc and musl
use sizeof(long) in their internal definitions of the set array.  The array
element type is unsigned long and my comment is actually wrong since
glibc's __CPU_MASK_TYPE is __SYSCALL_ULONG_TYPE, so I'll fix this.  I'll
upload a v3 shortly.

Thanks,

Scott




More information about the Openembedded-core mailing list