[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <878vfr7d4l.fsf@steelpick.2x.cz>
Date: Wed, 13 Jun 2012 11:52:10 +0200
From: Michal Sojka <sojkam1@....cvut.cz>
To: Oliver Hartkopp <socketcan@...tkopp.net>,
Rostislav Lisovy <lisovy@...il.com>,
Eric Dumazet <eric.dumazet@...il.com>
Cc: netdev@...r.kernel.org, linux-can@...r.kernel.org,
lartc@...r.kernel.org, pisa@....felk.cvut.cz
Subject: Re: [RFC] net/sched/em_canid: Ematch rule to match CAN frames according to their CAN IDs
Hello Oliver,
Oliver Hartkopp <socketcan@...tkopp.net> writes:
> Hello Rostislav, hello Eric,
>
> On 12.06.2012 16:50, Rostislav Lisovy wrote:
>
>> On Tue, 2012-06-12 at 16:33 +0200, Eric Dumazet wrote:
>>> On Tue, 2012-06-12 at 16:03 +0200, Eric Dumazet wrote:
>>>> On Tue, 2012-06-12 at 15:48 +0200, Rostislav Lisovy wrote:
>>>>> em_canid is an ematch capable of classifying CAN frames according to
>>>>> their CAN IDs.
>>>>>
>>>>> This RFC/Patch contains a reworked classifier initially posted in
>>>>> http://www.spinics.net/lists/netdev/msg200114.html
>>>>> The functionality is the same however there is almost 50% reduction
>>>>> in the source code length.
>>>>>
>>>>> There is a slight difference between this ematch and other available
>>>>> ematches. Other ematches implement only a simple match operation and
>>>>> are meant to be combined with logic conjunctions (e.g. AND, OR).
>>>>> Our ematch makes it possible to use up to 32 rules in single
>>>>> 'configuration statement' (with OR semantics). This allows us to take
>>>>> the advantage of the bit field data-structure in the implementation of
>>>>> the match function.
>>>>>
>>>>> Example: canid(sff 0x123 eff 0x124 sff 0x230:0x7f0)
>>>>> This ematch would match CAN SFF frames with the following IDs:
>>>>> 0x123, 0x230--0x23f or EFF frame with ID 0x124.
>
> i tried to figure out the difference between the implementation as classifier
> (link above) and this implementation as an ematch.
>
> Do we have any disadvantages using the ematch?
The performance of ematch might be slightly lower than of standalone
classifier. Rosta will compare the performance soon.
> E.g. is it still possible to add additional ematches like checking for
> patterns inside can_frame.data[] (which is located in skb->data) with
> ematch_u32 or e.g. ematch_text ??
AFAIK, this should be possible and it will be a big advantage over
implementation as a standalone classifier.
Regards,
-Michal
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists