From: Jean Tourrilhes <jt@hpl.hp.com>
To: netdev@vger.kernel.org
Subject: Re: RtNetlink in wireless.c and netlink_broadcast(uevent_sock,...) - newbie
Date: Mon, 1 May 2006 10:50:03 -0700 [thread overview]
Message-ID: <20060501175003.GA32508@bougret.hpl.hp.com> (raw)
Xu Nakajima wrote :
>
> Hello,
>
> I saw that in the wireless linux stack, there is usage
>
> of sending messages to user space via the RtNetlink
> event channel :
> in net/core/wireless.c, wireless_send_event() method
> calls rtmsg_iwinfo() which calls
> netlink_broadcast(rtnl, skb, 0, RTNLGRP_LINK,
> GFP_ATOMIC); (it fills a struct with
> rtnetlink_fill_iwinfo before).
>
> On the other hand, I see that for example, in the case
> of
> sending messeges to userspace udev socket, the
> netlink_broadcast() call is with a different
> mecahinsm;
> In lib/kobject_uevent.c, there is the following call
> netlink_broadcast(uevent_sock, skb, 0, 1, GFP_KERNEL);
>
> Is there something special about RtNetlink event
> channel
> which makes it needed fot wireless.c (for example)?
> While udev can use some other mechanism ?
> What is special about RtNetlink event channel
> in comaprison to non RtNetlink channels?
Netlink is a generic socket mechanism. On top of Netlink, you
can have multiple types of sockets, the same way that on top of TCP
sockets you can implement various protocols, such as HTTP, NFS, SSH...
RtNetlink was the first Netlink protocol implemented and is
the Netlink protocol used to configure network interfaces. In the file
net/core/rtnetlink.c, you will find that there are many actions that
generates RtNetlink events. Together with wireless events, they give
you a very detailed view of what's happening with network interfaces.
The udev-netlink protocol is quite recent and a completely
different Netlink ptotocol that uses a different packet format. As far
as exporting network information, it is very crude, because the goal
of udev is not managing network interfaces. Yes, udev does duplicate
some RtNetlink events, but the overlap is not so much, so that's ok.
Good luck...
Jean
next reply other threads:[~2006-05-01 17:50 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-05-01 17:50 Jean Tourrilhes [this message]
-- strict thread matches above, loose matches on Subject: below --
2006-04-30 19:14 RtNetlink in wireless.c and netlink_broadcast(uevent_sock,...) - newbie Xu Nakajima
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=20060501175003.GA32508@bougret.hpl.hp.com \
--to=jt@hpl.hp.com \
--cc=netdev@vger.kernel.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