From: "kai" <kai.kang@windriver.com>
To: Jack Mitchell <ml@embed.me.uk>, Yi Zhao <yi.zhao@windriver.com>,
openembedded-core@lists.openembedded.org
Subject: Re: [OE-core] [PATCH 2/2] connman: set service to conflict with systemd-networkd
Date: Thu, 3 Dec 2020 17:29:22 +0800 [thread overview]
Message-ID: <9158216a-ff01-1cef-e740-df48c83503a1@windriver.com> (raw)
In-Reply-To: <3cb971ce-8358-5355-0698-2330f436d1bc@embed.me.uk>
On 12/2/20 8:11 PM, Jack Mitchell wrote:
> On 02/12/2020 02:20, Yi Zhao wrote:
>> On 12/1/20 5:02 AM, Jack Mitchell wrote:
>>> On 02/11/2020 09:20, Yi Zhao wrote:
>>>> Do not run systemd-networkd and connman simultaneously. These two
>>>> network managers may conflict with each other.
>>>>
>>>> Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
>>>> ---
>>>> ...stop-systemd-networkd-when-using-con.patch | 29 +++++++++++++++++++
>>>> .../connman/connman_1.38.bb | 1 +
>>>> 2 files changed, 30 insertions(+)
>>>> create mode 100644 meta/recipes-connectivity/connman/connman/0001-connman.service-stop-systemd-networkd-when-using-con.patch
>>>>
>>>> diff --git a/meta/recipes-connectivity/connman/connman/0001-connman.service-stop-systemd-networkd-when-using-con.patch b/meta/recipes-connectivity/connman/connman/0001-connman.service-stop-systemd-networkd-when-using-con.patch
>>>> new file mode 100644
>>>> index 0000000000..dd012750a4
>>>> --- /dev/null
>>>> +++ b/meta/recipes-connectivity/connman/connman/0001-connman.service-stop-systemd-networkd-when-using-con.patch
>>>> @@ -0,0 +1,29 @@
>>>> +From 9fea099d0a3ece37d80ad70d32ebb8a93f8f3280 Mon Sep 17 00:00:00 2001
>>>> +From: Yi Zhao <yi.zhao@windriver.com>
>>>> +Date: Fri, 30 Oct 2020 13:48:45 +0800
>>>> +Subject: [PATCH] connman.service: stop systemd-networkd when using connman
>>>> +
>>>> +Stop systemd-networkd service when we use connman as network manager.
>>>> +
>>>> +Upstream-Status: Inappropriate [configuration]
>>>> +
>>>> +Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
>>>> +---
>>>> + src/connman.service.in | 1 +
>>>> + 1 file changed, 1 insertion(+)
>>>> +
>>>> +diff --git a/src/connman.service.in b/src/connman.service.in
>>>> +index 79e75d6..014eafe 100644
>>>> +--- a/src/connman.service.in
>>>> ++++ b/src/connman.service.in
>>>> +@@ -6,6 +6,7 @@ RequiresMountsFor=@localstatedir@/lib/connman
>>>> + After=dbus.service network-pre.target systemd-sysusers.service
>>>> + Before=network.target multi-user.target shutdown.target
>>>> + Wants=network.target
>>>> ++Conflicts=systemd-networkd.service systemd-networkd.socket
>>>> + Conflicts=systemd-resolved.service
>>>> +
>>>> + [Service]
>>>> +--
>>>> +2.17.1
>>>> +
>>>> diff --git a/meta/recipes-connectivity/connman/connman_1.38.bb b/meta/recipes-connectivity/connman/connman_1.38.bb
>>>> index 027c41e9af..45c2934dec 100644
>>>> --- a/meta/recipes-connectivity/connman/connman_1.38.bb
>>>> +++ b/meta/recipes-connectivity/connman/connman_1.38.bb
>>>> @@ -3,6 +3,7 @@ require connman.inc
>>>> SRC_URI = "${KERNELORG_MIRROR}/linux/network/${BPN}/${BP}.tar.xz \
>>>> file://0001-plugin.h-Change-visibility-to-default-for-debug-symb.patch \
>>>> file://0001-connman.service-stop-systemd-resolved-when-we-use-co.patch \
>>>> + file://0001-connman.service-stop-systemd-networkd-when-using-con.patch \
>>>> file://connman \
>>>> file://no-version-scripts.patch \
>>>> "
>>>>
>>> Hi Yi,
>>>
>>> This breaks our usecase where we have been using connman and
>>> systemd-networkd in tandem for a long time. IMO this should be reverted
>>> as if the two applications are conflicting then the correct fix is that
>>> they should be configured so that they don't both try to configure the
>>> same interfaces. As systemd-networkd doesn't ship with any rules by
>>> default it shouldn't be doing anything to interfere?
>>
>> Currently, A systemd-networkd configuration file 80-wired.network from
>> systemd-conf package is also installed by default on HW BSPs. Comman is
>> the default network-manager in Yocto. It will manage the wired interface
>> automatically. But with this configuration file, the systemd-networkd
>> will also try to manage the wired interface as connman does. They may
>> conflict with each other.In addition to revert this patch, I think we
>> should consider whether to install this configuration file by default.
>> Maybe it’s better to install it as an example and users can enable it as
>> needed.
>>
>> Thanks,
>> Yi
>>
>
> Hi Yi,
>
> I see, thank you for pointing that out. I agree that we shouldn't be
> shipping custom catch-all networkd snippets. Perhaps it should be
> something appended by the Poky distro rather than installed by default?
> I assume it is included so that network interfaces come up with a DHCP
> address by default so people can ssh into the machine without an extra
> config.
Hi Jack,
The original defect is
https://bugzilla.yoctoproject.org/show_bug.cgi?id=13057 . There is no
network on core-image-small, so I provided
the default config for systemd-networkd. Because systemd-networkd is
more basic than connman and networkmanager that maybe neither
of them is installed.
The conflict should be resolved but I don't have solution yet right now.
Regards,
Kai
>
> Cc kai.kang@windriver.com as it looks like they were the original author.
>
> Regards,
> Jack.
>
>>> With this patch I can no-longer run both services as it's a hard
>>> conflict with no option to either revert locally, or bbappend this patch
>>> out.
>>>
>>> Regards,
>>> Jack.
>>>
>>
>>
>>
next prev parent reply other threads:[~2020-12-03 9:29 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-11-02 9:20 [PATCH 1/2] pulseaudio: unify volatiles file name Yi Zhao
2020-11-02 9:20 ` [PATCH 2/2] connman: set service to conflict with systemd-networkd Yi Zhao
2020-11-30 21:02 ` [OE-core] " Jack Mitchell
2020-12-02 2:20 ` Yi Zhao
2020-12-02 12:11 ` Jack Mitchell
2020-12-03 9:29 ` kai [this message]
2020-11-02 11:40 ` [OE-core] [PATCH 1/2] pulseaudio: unify volatiles file name Richard Purdie
2020-11-03 1:18 ` Yi Zhao
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=9158216a-ff01-1cef-e740-df48c83503a1@windriver.com \
--to=kai.kang@windriver.com \
--cc=ml@embed.me.uk \
--cc=openembedded-core@lists.openembedded.org \
--cc=yi.zhao@windriver.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox