Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 4 Nov 2019 01:46:14 +0300
From:      Vladimir Kondratyev <vladimir@kondratyev.su>
To:        Konstantin Belousov <kostikbel@gmail.com>, Vladimir Kondratyev <wulf@FreeBSD.org>
Cc:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r354322 - head/sys/dev/ichiic
Message-ID:  <abd7b232-76d7-f00d-99fa-b11d3ee3319a@kondratyev.su>
In-Reply-To: <20191103220222.GX73312@kib.kiev.ua>
References:  <201911032117.xA3LHpKK078186@repo.freebsd.org> <20191103220222.GX73312@kib.kiev.ua>

index | next in thread | previous in thread | raw e-mail

On 04.11.2019 01:02, Konstantin Belousov wrote:
> On Sun, Nov 03, 2019 at 09:17:51PM +0000, Vladimir Kondratyev wrote:
>> Author: wulf
>> Date: Sun Nov  3 21:17:50 2019
>> New Revision: 354322
>> URL: https://svnweb.freebsd.org/changeset/base/354322
>>
>> Log:
>>   [ig4] Convert ithread interrupt handler to filter based one.
> And why ?
>
> You need some reason to use filters/spinlocks, otherwise it only
> taxes system latency.


The only thing ig4 interrupt handler does is a waking up the user
thread, so postponing it to ithread looks like a wasting of CPU cycles.

Spinlock here is acting as condition variable not as a data protection
lock. It is taken around msleep(). I can replace it with cv_* calls if
current usage confuses someone

Ig4 access is serialized with sx lock so it is impossible to get any
congestion on spinlock




home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?abd7b232-76d7-f00d-99fa-b11d3ee3319a>