From: Denis Kenzior <denkenz@gmail.com>
To: Johannes Berg <johannes@sipsolutions.net>,
Dan Williams <dcbw@redhat.com>,
netdev@vger.kernel.org, linux-wireless@vger.kernel.org
Cc: "Subash Abhinov Kasiviswanathan" <subashab@codeaurora.org>,
"Sean Tranchetti" <stranche@codeaurora.org>,
"Daniele Palmas" <dnlplm@gmail.com>,
"Aleksander Morgado" <aleksander@aleksander.es>,
"Bjørn Mork" <bjorn@mork.no>
Subject: Re: cellular modem APIs - take 2
Date: Wed, 29 May 2019 15:35:26 -0500 [thread overview]
Message-ID: <350b9aad-7b08-2f77-6000-095538f32abc@gmail.com> (raw)
In-Reply-To: <58bc88b7eda912133ad0fc4718ac917adc8fa63b.camel@sipsolutions.net>
Hi Johannes,
>
> It just seemed that people do want to have a netdev (if only to see that
> their driver loaded and use ethtool to dump the firmware version), and
> then you can reassign it to some actual context later?
I can see that this is useful for developers, but really
counterproductive in production. You have a bunch of services (systemd,
NM, ConnMan, dhcpcd, etc, etc, etc) all observing the newly created
devices and trying to 'own' them. Which makes no freaking sense to do
until those devices are really usable. Just because it is a netdev,
doesn't mean it is ethernet or behaves like it.
That also leads to expectations from users that want stuff like
udev-consistent-naming to work, even though udev has no idea wtf a given
device is, when it is ready or not ready, etc. And the flip side, there
may be systems that do not use systemd/udevd, so the daemons responsible
for management of such devices cannot sanely assume anything. It is
just pure chaos.
And then there's hotplug/unplug to worry about ;)
So I would like to reiterate Marcel's point: creating unmanaged devices
should not be the default behavior.
>
> It doesn't really matter much. If you have a control channel and higher-
> level abstraction (wwan device) then having the netdev is probably more
> of a nuisance and mostly irrelevant, just might be useful for legacy
> reasons.
Which we should be trying to eradicate, not encourage ;)
>> Should you really need to account for these specially, or would some
>> kind of sysfs linkage like SET_NETDEV_DEV() be more appropriate?
>>
>> Really all you want to do is (a) identify which WWAN device a given
>> control/data channel is for and (b) perhaps tag different control/data
>> channels with attributes like primary/secondary/gps/sim/etc often
>> through USB attributes or hardcoded data on SoCs.
Userspace can also choose to do its own multiplexing, so you can't even
really assume the above is what you 'want'.
Regards,
-Denis
prev parent reply other threads:[~2019-05-29 20:35 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-27 13:20 cellular modem APIs - take 2 Johannes Berg
2019-05-29 19:05 ` Marcel Holtmann
2019-05-29 19:59 ` Johannes Berg
2019-05-29 20:44 ` Denis Kenzior
2019-05-30 5:28 ` Marcel Holtmann
2019-05-29 19:59 ` Dan Williams
2019-05-29 20:16 ` Johannes Berg
2019-05-29 20:35 ` Denis Kenzior [this message]
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=350b9aad-7b08-2f77-6000-095538f32abc@gmail.com \
--to=denkenz@gmail.com \
--cc=aleksander@aleksander.es \
--cc=bjorn@mork.no \
--cc=dcbw@redhat.com \
--cc=dnlplm@gmail.com \
--cc=johannes@sipsolutions.net \
--cc=linux-wireless@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=stranche@codeaurora.org \
--cc=subashab@codeaurora.org \
/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