Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756864AbYGXAS3 (ORCPT ); Wed, 23 Jul 2008 20:18:29 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1755712AbYGXASG (ORCPT ); Wed, 23 Jul 2008 20:18:06 -0400 Received: from stinky.trash.net ([213.144.137.162]:50134 "EHLO stinky.trash.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755546AbYGXASE (ORCPT ); Wed, 23 Jul 2008 20:18:04 -0400 Message-ID: <4887CA31.7070308@trash.net> Date: Thu, 24 Jul 2008 02:17:53 +0200 From: Patrick McHardy User-Agent: Mozilla-Thunderbird 2.0.0.12 (X11/20080405) MIME-Version: 1.0 To: Ranjit Manomohan CC: Andrew Morton , linux-kernel@vger.kernel.org, netdev@vger.kernel.org, lizf@cn.fujitsu.com, menage@google.com Subject: Re: [PATCH] Traffic control cgroups subsystem References: <20080723150536.ded38b22.akpm@linux-foundation.org> <4887B1F0.3000407@trash.net> <166fe7950807231654ib5759e1kae54887f0918d3fb@mail.gmail.com> In-Reply-To: <166fe7950807231654ib5759e1kae54887f0918d3fb@mail.gmail.com> Content-Type: text/plain; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1745 Lines: 38 Ranjit Manomohan wrote: > On Wed, Jul 23, 2008 at 3:34 PM, Patrick McHardy wrote: >> >> It is by the flow_change() function, but special casing the >> CGROUP_CLASSID is not acceptable anyway. There should be no >> need for that, a simple linear mapping to classids is done >> by default in mapping mode, the sk_cgroup_classid simply >> shouldn't include qdisc IDs. > > I did not want to special case it but I want an identity mapping not a > linear one. For some reason a baseclass of X:0 is not allowed An ID of X:0 identifies a qdisc, not a class, which is why this isn't accepted. > and > there does not seem to be a clean way to get a 1-1 mapping (tc.classid > -> X:tc.classid). I would have to workaround it by using a baseclass > of the form X:Y and then subtracting Y from the value written to > tc.classid which seemed very non intuitive. > > Any particular reason for this restriction? Am I missing any other > technique of getting a 1-1 mapping using the flow classifier? My suggestion to replace your classifier by cls_flow was wrong, sorry. You can't do classification that don't use linear mappings or hash distribution, but we really should support that. We should keep your classifier (with the change to use skb->sk), but please extend it by the standard classifier features like ematches, actions and policers (see flow_classify() for a simple example). Adding the cgroup to cls_flow still makes sense, but as regular key without the baseclass modification. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/