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: <84989B1A-CC23-4E81-B2E2-06E5FA01612E@holtmann.org>
Date:	Sat, 19 Apr 2008 03:25:01 +0200
From:	Marcel Holtmann <marcel@...tmann.org>
To:	Andrew Morton <akpm@...ux-foundation.org>
Cc:	hidave.darkstar@...il.com, linux-bluetooth@...r.kernel.org,
	netdev@...r.kernel.org, pavel@....cz, pavel@...e.cz
Subject: Re: [patch 3/3] hci_usb.h: fix hard-to-trigger race

Hi Andrew,

>>> If someone tries to _urb_unlink while _urb_queue_head is running,
>>> he'll see
>>> _urb->queue == NULL and fail to do any locking.  Prevent that from
>>> happening
>>> by strategically placed barriers.
>>
>> let me repeat this, the hci_usb driver is not worth fixing. Doing our
>> own URB handling is a bad idea. The btusb driver should fix all of
>> this. Only exception is that it is missing all the quirks, but that
>> was me being lazy.
>>
>
> ok...  But as long as the old code is buildable and installable, we  
> should
> fix bugs in it?

I am okay with it and happy to accept any fixes, but to be quite  
honest, that this driver still works is in some cases pure luck. Doing  
the URB handling by ourself is really simply plain work. No excuses  
here and parts of it is my fault. I know that. Hence I started a new  
implementation from scratch.

Regards

Marcel

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