lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5519708E.3040002@hartkopp.net>
Date:	Mon, 30 Mar 2015 17:49:34 +0200
From:	Oliver Hartkopp <socketcan@...tkopp.net>
To:	Sergei Shtylyov <sergei.shtylyov@...entembedded.com>,
	linux-can@...r.kernel.org
CC:	netdev@...r.kernel.org
Subject: Re: [PATCH RFC v2 1/2] can: fix multiple delivery of a single CAN
 frame for overlapping CAN filters

On 30.03.2015 14:33, Sergei Shtylyov wrote:
> On 3/29/2015 9:09 PM, Oliver Hartkopp wrote:
>>
>> +    /* eliminate multiple filter matches for the same skb */
>> +    if (*this_cpu_ptr(ro->uniq_skb) == oskb &&
>> +        ktime_equal(*this_cpu_ptr(ro->uniq_tstamp), oskb->tstamp)) {
>> +            return;
>
>     Over-indented.
>

I was asked about that before. AFAIK the *skb is no unique identifier over a 
longer period of time. But together with the timestamp it becomes unique.
Or do you have a better solution to detect identical skbs?

CAN skbs do not have a (rx)hash so far and I wonder if it's worth to compute 
the hash in favor to check the *skb and the timestamp here ...


>> +
>> +    ro->uniq_tstamp = alloc_percpu(ktime_t);
>> +    if (unlikely(ro->uniq_tstamp == NULL)) {
>
>     !ro->uniq_tstamp is preferred in the networking code.
>

Ok. Will change that.

Best regards,
Oliver

> [...]
>
> WBR, Sergei
>

--
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ