From: Eyal Birger <eyal.birger@gmail.com>
To: davem@davemloft.net
Cc: willemb@google.com, edumazet@google.com,
shmulik.ladkani@gmail.com, linux-bluetooth@vger.kernel.org,
marcel@holtmann.org, netdev@vger.kernel.org,
Eyal Birger <eyal.birger@gmail.com>
Subject: [PATCH net-next v3 0/7] net: move skb->dropcount to skb->cb[]
Date: Sun, 1 Mar 2015 14:58:24 +0200 [thread overview]
Message-ID: <1425214711-9562-1-git-send-email-eyal.birger@gmail.com> (raw)
Commit 977750076d98 ("af_packet: add interframe drop cmsg (v6)")
unionized skb->mark and skb->dropcount in order to allow recording
of the socket drop count while maintaining struct sk_buff size.
skb->dropcount was introduced since there was no available room
in skb->cb[] in packet sockets. However, its introduction led to
the inability to export skb->mark to userspace.
It was considered to alias skb->priority instead of skb->mark.
However, that would lead to the inabilty to export skb->priority
to userspace if desired. Such change may also lead to hard-to-find
issues as skb->priority is assumed to be alias free, and, as noted
by Shmulik Ladkani, is not 'naturally orthogonal' with other skb
fields.
This patch series follows the suggestions made by Eric Dumazet moving
the dropcount metric to skb->cb[], eliminating this problem
at the expense of 4 bytes less in skb->cb[] for protocol families
using it.
The patch series include compactization of bluetooth and packet
use of skb->cb[] as well as the infrastructure for placing dropcount
in skb->cb[].
---
Changes in v3:
- Rebase
- Compact af_packet use of skb->cb[] instead of aliasing skb->dev
for creating room per Willem de Bruijn suggestion
Changes in v2:
- Rebase
- Receive const struct sock * in sock_skb_set_dropcount()
per Eric Dumazet's suggestion
- struct bt_skb_cb compactization code improvements following
suggestions from Shmulik Landani and David Laight
- Fix incorrect asignment to skb->dev in packet_rcv()
---
Eyal Birger (7):
net: bluetooth: compact struct bt_skb_cb by inlining struct
hci_req_ctrl
net: bluetooth: compact struct bt_skb_cb by converting boolean fields
to bit fields
net: rxrpc: change call to sock_recv_ts_and_drops() on rxrpc recvmsg
to sock_recv_timestamp()
net: packet: use sockaddr_ll fields as storage for skb original length
in recvmsg path
net: use common macro for assering skb->cb[] available size in
protocol families
net: add common accessor for setting dropcount on packets
net: move skb->dropcount to skb->cb[]
include/linux/skbuff.h | 2 --
include/net/bluetooth/bluetooth.h | 14 +++++---------
include/net/sock.h | 23 +++++++++++++++++++++++
net/bluetooth/af_bluetooth.c | 3 +--
net/bluetooth/hci_core.c | 12 ++++++------
net/bluetooth/hci_event.c | 4 ++--
net/bluetooth/hci_request.c | 6 +++---
net/bluetooth/hci_sock.c | 2 +-
net/can/bcm.c | 2 +-
net/can/raw.c | 6 +++---
net/core/sock.c | 2 +-
net/ipv4/af_inet.c | 2 +-
net/ipv4/tcp.c | 3 +--
net/ipv6/af_inet6.c | 2 +-
net/packet/af_packet.c | 35 ++++++++++++++++++++++++++---------
net/rxrpc/ar-recvmsg.c | 2 +-
net/sctp/protocol.c | 3 +--
net/socket.c | 4 ++--
18 files changed, 79 insertions(+), 48 deletions(-)
--
2.1.4
next reply other threads:[~2015-03-01 12:58 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-01 12:58 Eyal Birger [this message]
2015-03-01 12:58 ` [PATCH net-next v3 2/7] net: bluetooth: compact struct bt_skb_cb by converting boolean fields to bit fields Eyal Birger
2015-03-01 12:58 ` [PATCH net-next v3 4/7] net: packet: use sockaddr_ll fields as storage for skb original length in recvmsg path Eyal Birger
2015-03-01 12:58 ` [PATCH net-next v3 6/7] net: add common accessor for setting dropcount on packets Eyal Birger
[not found] ` <1425214711-9562-1-git-send-email-eyal.birger-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-03-01 12:58 ` [PATCH net-next v3 1/7] net: bluetooth: compact struct bt_skb_cb by inlining struct hci_req_ctrl Eyal Birger
2015-03-01 12:58 ` [PATCH net-next v3 3/7] net: rxrpc: change call to sock_recv_ts_and_drops() on rxrpc recvmsg to sock_recv_timestamp() Eyal Birger
2015-03-01 12:58 ` [PATCH net-next v3 5/7] net: use common macro for assering skb->cb[] available size in protocol families Eyal Birger
2015-03-01 12:58 ` [PATCH net-next v3 7/7] net: move skb->dropcount to skb->cb[] Eyal Birger
2015-03-02 5:20 ` [PATCH net-next v3 0/7] " David Miller
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=1425214711-9562-1-git-send-email-eyal.birger@gmail.com \
--to=eyal.birger@gmail.com \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=linux-bluetooth@vger.kernel.org \
--cc=marcel@holtmann.org \
--cc=netdev@vger.kernel.org \
--cc=shmulik.ladkani@gmail.com \
--cc=willemb@google.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;
as well as URLs for NNTP newsgroup(s).