On 07/26/2016 02:33 AM, mingli...@windriver.com wrote: > This patch includes the following changes: > 1. Explicitly set StandardOutput of the log daemon to null. > This would avoid creating a feedback loop of the syslog service. > See link below for more information. > http://www.freedesktop.org/wiki/Software/systemd/syslog/ > > 2. Use ALTERNATIVE machanism to manage the syslog service file. > This is because that other package may also provide a syslog > implementation. > > 3. Make the syslog daemon socket activated only. Otherwise, things > would crash if we install busybox-syslog and other syslog packages > together in one image. > > Signed-off-by: Chen Qi <qi.c...@windriver.com> > Signed-off-by: Mingli Yu <mingli...@windriver.com> > --- > meta/recipes-core/busybox/busybox.inc | 9 +++++++-- > meta/recipes-core/busybox/files/busybox-klogd.service.in | 4 +--- > meta/recipes-core/busybox/files/busybox-syslog.service.in | 7 +++---- > 3 files changed, 11 insertions(+), 9 deletions(-) > > diff --git a/meta/recipes-core/busybox/busybox.inc > b/meta/recipes-core/busybox/busybox.inc > index 5e91a26..2865b36 100644 > --- a/meta/recipes-core/busybox/busybox.inc > +++ b/meta/recipes-core/busybox/busybox.inc > @@ -295,13 +295,12 @@ do_install () { > if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; > then > if grep -q "CONFIG_SYSLOGD=y" ${B}/.config; then > install -d ${D}${systemd_unitdir}/system > - sed 's,@base_sbindir@,${base_sbindir},g' < > ${WORKDIR}/busybox-syslog.service.in \ > + sed -e 's,@base_sbindir@,${base_sbindir},g' -e > 's,@SYSCONFDIR@,${sysconfdir},g' < ${WORKDIR}/busybox-syslog.service.in \ > > ${D}${systemd_unitdir}/system/busybox-syslog.service > if [ -f ${WORKDIR}/busybox-syslog.default ] ; then > install -d ${D}${sysconfdir}/default > install -m 0644 ${WORKDIR}/busybox-syslog.default > ${D}${sysconfdir}/default/busybox-syslog > fi > - ln -sf /dev/null ${D}${systemd_unitdir}/system/syslog.service > fi > if grep -q "CONFIG_KLOGD=y" ${B}/.config; then > install -d ${D}${systemd_unitdir}/system > @@ -338,6 +337,12 @@ python () { > d.appendVar('ALTERNATIVE_%s-syslog' % (pn), ' syslog-startup-conf') > d.setVarFlag('ALTERNATIVE_LINK_NAME', 'syslog-startup-conf', > '%s/syslog-startup.conf' % (d.getVar('sysconfdir', True))) > d.setVarFlag('ALTERNATIVE_TARGET', 'syslog-startup-conf', > '%s/syslog-startup.conf.%s' % (d.getVar('sysconfdir', True), d.getVar('BPN', > True))) > + > + if bb.utils.contains('DISTRO_FEATURES', 'systemd', True, False, d): > + pn = d.getVar('PN', True) > + d.appendVar('ALTERNATIVE_%s-syslog' % (pn), ' syslog-service') > + d.setVarFlag('ALTERNATIVE_LINK_NAME', 'syslog-service', > '%s/systemd/system/syslog.service' % (d.getVar('sysconfdir', True))) > + d.setVarFlag('ALTERNATIVE_TARGET', 'syslog-service', > '%s/system/busybox-syslog.service' % (d.getVar('systemd_unitdir', True))) > } > > python do_package_prepend () { > diff --git a/meta/recipes-core/busybox/files/busybox-klogd.service.in > b/meta/recipes-core/busybox/files/busybox-klogd.service.in > index d7c7755..90cfc50 100644 > --- a/meta/recipes-core/busybox/files/busybox-klogd.service.in > +++ b/meta/recipes-core/busybox/files/busybox-klogd.service.in > @@ -3,6 +3,4 @@ Description=Kernel Logging Service > > [Service] > ExecStart=@base_sbindir@/klogd -n > - > -[Install] > -WantedBy=multi-user.target
Hi Mingil, This commit breaks the build when was tested in master-next [1], i guess you are trying to use another syslog service in busybox images but when you disable busybox-syslog for start by default (line below) the sanity testing fails. [1] https://autobuilder.yoctoproject.org/main/builders/nightly-qa-systemd/builds/868/steps/Running%20Sanity%20Tests/logs/stdio > +StandardOutput=null > diff --git a/meta/recipes-core/busybox/files/busybox-syslog.service.in > b/meta/recipes-core/busybox/files/busybox-syslog.service.in > index 2e04321..c84edaf 100644 > --- a/meta/recipes-core/busybox/files/busybox-syslog.service.in > +++ b/meta/recipes-core/busybox/files/busybox-syslog.service.in > @@ -1,13 +1,12 @@ > [Unit] > Description=System Logging Service > Wants=busybox-klogd.service > +Requires=syslog.socket > > [Service] > -EnvironmentFile=-/etc/default/busybox-syslog > +EnvironmentFile=-@SYSCONFDIR@/default/busybox-syslog > ExecStart=@base_sbindir@/syslogd -n $OPTIONS > -Sockets=syslog.socket > +StandardOutput=null > > [Install] > -WantedBy=multi-user.target The same here, Kind regards, alimon > Also=busybox-klogd.service > -Alias=syslog.service >
signature.asc
Description: OpenPGP digital signature
-- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core