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]
Message-ID: <4A3AD37A.8080703@ring3k.org>
Date:	Fri, 19 Jun 2009 08:53:30 +0900
From:	Mike McCormack <mikem@...g3k.org>
To:	Stephen Hemminger <shemminger@...tta.com>
CC:	davem@...emloft.net, netdev@...r.kernel.org
Subject: Re: [PATCH 4/9] sky2: fix shutdown synchronization

Stephen Hemminger wrote:
> On Fri, 19 Jun 2009 08:25:03 +0900
> Mike McCormack <mikem@...g3k.org> wrote:
> 
>> Hi Steven,
>>
>> After applying your complete patch series, I'm still getting crashes in 
>> sky2_poll, and I can make them go away by adding an msleep(1) before 
>> these lines in sky2_down.
>>
> 
> adding msleep adds delay so interrupt and packets can clear, that is okay,
> but would rather have something deterministic?  perhaps it needs to poll
> irq status register or napi status.

Well, having a check for NULL rx_ring in sky2_poll functions is a little 
more deterministic, but I know you don't like that :-)

Another possibility is to try reordering the shutdown, I can have a go 
at experimenting with that.

I have found two other potential problems:

* there appears to be a race in sky2_poll (patch attached)

* sky2_up can cause receiver hangs due to a similar race to the one in 
sky2_down (I have some code which stops that from happening and will try 
put this top of your changes and push a patch out today for your inspection)

thanks,

Mike

View attachment "0001-Fix-a-race-condition-in-sky2_poll.patch" of type "text/x-patch" (1538 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ