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 for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 14 May 2013 16:32:41 +0800
From:	Hein Tibosch <hein_tibosch@...oo.es>
To:	monstr@...str.eu, Nicolas Ferre <nicolas.ferre@...el.com>
CC:	Jean-Christophe PLAGNIOL-VILLARD <plagnioj@...osoft.com>,
	michal.simek@...inx.com,
	Ludovic Desroches <ludovic.desroches@...el.com>,
	s.trumtrar@...gutronix.de, linux-arm-kernel@...ts.infradead.org,
	linux-kernel@...r.kernel.org, netdev@...r.kernel.org
Subject: Re: [PATCH] net/macb: fix ISR clear-on-write behavior only for some
 SoC


On 5/14/2013 3:49 PM, Michal Simek wrote:
> On 05/14/2013 09:31 AM, Hein Tibosch wrote:
>> On 5/14/2013 3:22 PM, Jean-Christophe PLAGNIOL-VILLARD wrote:
>>> On May 14, 2013, at 3:18 PM, Hein Tibosch <hein_tibosch@...oo.es> wrote:
>>>
>>>> On 5/14/2013 1:52 PM, Jean-Christophe PLAGNIOL-VILLARD wrote:
>>>>> On 08:58 Tue 14 May     , Hein Tibosch wrote:
>>>>>> On 5/14/2013 12:05 AM, Jean-Christophe PLAGNIOL-VILLARD wrote:
>>>>>>> On May 14, 2013, at 12:05 AM, Nicolas Ferre <nicolas.ferre@...el.com> wrote:
>>>>>>>
>>>>>>>> Commit 749a2b6 (net/macb: clear tx/rx completion flags in ISR)
>>>>>>>> introduces clear-on-write on ISR register. This behavior is not always
>>>>>>>> implemented when using Cadence MACB/GEM and is breaking other platforms.
>>>>>>>> We are using a new Device Tree compatibility string and a capability
>>>>>>>> property to actually activate this clear-on-write behavior on ISR.
>>>>>>>>
>>>>>>>> Reported-by: Hein Tibosch <hein_tibosch@...oo.es>
>>>>>>>> Signed-off-by: Nicolas Ferre <nicolas.ferre@...el.com>
>>>>>>> can we detect it via the IP?
>>>>>> This was my first proposal, have it based on the value of MACB's
>>>>>> register 'MID' (offset 0x00fc, lower 16 bits).
>>>>>> On avr32 it reads: 0x0000010D, on Zynq it reports 0x00000119
>>>>>>
>>>>>> So for the moment, CAPS_ISR_CLEAR_ON_WRITE could be set if the revision
>>>>>> equals to 0x00000119?
>>>>> so no it will not work
>>>>>
>>>>> as the gem on sama5 is 00020119
>>>>>
>>>>> so version 0x119 too
>>>>>
>>>>> nico
>>>> All right, that's a pity.
>>>>
>>>> The only issue that remains then is the obligation to use CONFIG_OF,
>>>> or:
>>>>
>>>> +#if defined(CONFIG_OF)
>>>> +	dev_id = of_match_device(macb_dt_ids, &pdev->dev);
>>>> +	if (dev_id)
>>>> +		bp->caps = (u32)dev_id->data;
>>>> +
>>>> +#endif
>>>>
>>>> ?
>>> no need as of_match_device is a inline of !OF
>> Sorry, here's the complete compiler error:
>> drivers/net/ethernet/cadence/macb.c: In function 'macb_probe':
>> drivers/net/ethernet/cadence/macb.c:1601: error: 'macb_dt_ids' undeclared (first use in this function)
>>
>> Earlier, 'macb_dt_ids' is only defined when using OF
> The trick is in using of_match_ptr. It means remove that CONFIG_OF around macb_dt_ids too.
>
> [linux-2.6.x]$ grep -rn "of_match_ptr" include/linux/
> include/linux/of.h:314:#define of_match_ptr(_ptr)	(_ptr)
> include/linux/of.h:508:#define of_match_ptr(_ptr)	NULL
yes of course, clever.

I tested the patch with that change on my avr32 platform and like to add:

Reported-by: Hein Tibosch <hein_tibosch@...oo.es>
Tested-by: Hein Tibosch <hein_tibosch@...oo.es>

Thanks,
Hein



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ