Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 17 Sep 2015 09:41:22 +0200
From:      Hans Petter Selasky <hps@selasky.org>
To:        Adrian Chadd <adrian@FreeBSD.org>, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r287892 - head/sys/dev/usb/wlan
Message-ID:  <55FA6EA2.8050809@selasky.org>
In-Reply-To: <55FA6C62.6010705@selasky.org>
References:  <201509170301.t8H31KdP042687@repo.freebsd.org> <55FA6C62.6010705@selasky.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 09/17/15 09:31, Hans Petter Selasky wrote:
> On 09/17/15 05:01, Adrian Chadd wrote:
>> Author: adrian
>> Date: Thu Sep 17 03:01:19 2015
>> New Revision: 287892
>> URL: https://svnweb.freebsd.org/changeset/base/287892
>>
>> Log:
>>    Use DELAY() rather than usb_pause_mtx() - the latter releases the lock
>>    before waiting, which prevents the lock from really acting like
>>    a hardware serialiser.  Sigh.
>>
>> Modified:
>>    head/sys/dev/usb/wlan/if_rsu.c
>>
>
> This cause a lot more CPU to be burnt. Is there no other way to fix
> this? Using an SX lock?
>
> --HPS
>

This will not help anything, because at every control request the same 
lock is dropped again. You need to add an SX lock there, and should 
revert this pause->DELAY change :-(

--HPS




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?55FA6EA2.8050809>