diff mbox

[10/10] net: remove SK_ROUTE_CAPS from meta ematch

Message ID b06d1da00c5f333bb5d8d9f01aa306ff69b99df5.1310601401.git.mirq-linux@rere.qmqm.pl
State Accepted, archived
Delegated to: David Miller
Headers show

Commit Message

Michał Mirosław July 14, 2011, 12:10 a.m. UTC
Remove it, as it indirectly exposes netdev features. It's not used in
iproute2 (2.6.38) - is anything else using its interface?

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
---
 include/linux/tc_ematch/tc_em_meta.h |    2 +-
 net/sched/em_meta.c                  |    7 -------
 2 files changed, 1 insertions(+), 8 deletions(-)

Comments

stephen hemminger July 14, 2011, 12:52 a.m. UTC | #1
On Thu, 14 Jul 2011 02:10:30 +0200 (CEST)
Michał Mirosław <mirq-linux@rere.qmqm.pl> wrote:

> Remove it, as it indirectly exposes netdev features. It's not used in
> iproute2 (2.6.38) - is anything else using its interface?
> 
> Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>

Once again, users need to be allowed to do arbitrary combination
of new and old releases of kernel and userspace.


--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
jamal July 14, 2011, 12:59 a.m. UTC | #2
On Thu, 2011-07-14 at 02:10 +0200, Michał Mirosław wrote:
> Remove it, as it indirectly exposes netdev features. It's not used in
> iproute2 (2.6.38) - is anything else using its interface?
> 

Breaks user ABI.

cheers,
jamal

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Michał Mirosław July 14, 2011, 8:50 p.m. UTC | #3
On Wed, Jul 13, 2011 at 08:59:26PM -0400, jamal wrote:
> On Thu, 2011-07-14 at 02:10 +0200, Michał Mirosław wrote:
> > Remove it, as it indirectly exposes netdev features. It's not used in
> > iproute2 (2.6.38) - is anything else using its interface?
> Breaks user ABI.

No iproute2 version uses it, its meaning have already changed several
times in kernel history and it prevents improving the netdev features
infrastructure. Note that other IDs are not changed - just this one is
turned into unsupported.

Best Regards,
Michał Mirosław
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
David Miller July 14, 2011, 8:52 p.m. UTC | #4
From: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Date: Thu, 14 Jul 2011 22:50:05 +0200

> On Wed, Jul 13, 2011 at 08:59:26PM -0400, jamal wrote:
>> On Thu, 2011-07-14 at 02:10 +0200, Michał Mirosław wrote:
>> > Remove it, as it indirectly exposes netdev features. It's not used in
>> > iproute2 (2.6.38) - is anything else using its interface?
>> Breaks user ABI.
> 
> No iproute2 version uses it, its meaning have already changed several
> times in kernel history and it prevents improving the netdev features
> infrastructure. Note that other IDs are not changed - just this one is
> turned into unsupported.

I totally agree.

We have to disconnect the layout and specific bit patterns in
netdev features from any userspace dependency.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
David Miller July 14, 2011, 9:46 p.m. UTC | #5
From: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Date: Thu, 14 Jul 2011 02:10:30 +0200 (CEST)

> Remove it, as it indirectly exposes netdev features. It's not used in
> iproute2 (2.6.38) - is anything else using its interface?
> 
> Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>

Applied.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/include/linux/tc_ematch/tc_em_meta.h b/include/linux/tc_ematch/tc_em_meta.h
index 7138962..b11f8ce 100644
--- a/include/linux/tc_ematch/tc_em_meta.h
+++ b/include/linux/tc_ematch/tc_em_meta.h
@@ -67,7 +67,7 @@  enum {
 	TCF_META_ID_SK_FORWARD_ALLOCS,
 	TCF_META_ID_SK_SNDBUF,
  	TCF_META_ID_SK_ALLOCS,
- 	TCF_META_ID_SK_ROUTE_CAPS,
+	__TCF_META_ID_SK_ROUTE_CAPS,	/* unimplemented but in ABI already */
  	TCF_META_ID_SK_HASH,
  	TCF_META_ID_SK_LINGERTIME,
  	TCF_META_ID_SK_ACK_BACKLOG,
diff --git a/net/sched/em_meta.c b/net/sched/em_meta.c
index 49130e8..1363bf1 100644
--- a/net/sched/em_meta.c
+++ b/net/sched/em_meta.c
@@ -404,12 +404,6 @@  META_COLLECTOR(int_sk_alloc)
 	dst->value = (__force int) skb->sk->sk_allocation;
 }
 
-META_COLLECTOR(int_sk_route_caps)
-{
-	SKIP_NONLOCAL(skb);
-	dst->value = skb->sk->sk_route_caps;
-}
-
 META_COLLECTOR(int_sk_hash)
 {
 	SKIP_NONLOCAL(skb);
@@ -530,7 +524,6 @@  static struct meta_ops __meta_ops[TCF_META_TYPE_MAX + 1][TCF_META_ID_MAX + 1] =
 		[META_ID(SK_ERR_QLEN)]		= META_FUNC(int_sk_err_qlen),
 		[META_ID(SK_FORWARD_ALLOCS)]	= META_FUNC(int_sk_fwd_alloc),
 		[META_ID(SK_ALLOCS)]		= META_FUNC(int_sk_alloc),
-		[META_ID(SK_ROUTE_CAPS)]	= META_FUNC(int_sk_route_caps),
 		[META_ID(SK_HASH)]		= META_FUNC(int_sk_hash),
 		[META_ID(SK_LINGERTIME)]	= META_FUNC(int_sk_lingertime),
 		[META_ID(SK_ACK_BACKLOG)]	= META_FUNC(int_sk_ack_bl),