Index | Thread | Search

From:
Vitaliy Makkoveev <mvs@openbsd.org>
Subject:
Re: wskbd(4): mp-safe filterops
To:
Jonathan Gray <jsg@jsg.id.au>
Cc:
Alexander Bluhm <bluhm@openbsd.org>, tech@openbsd.org
Date:
Sat, 25 Jan 2025 14:50:33 +0300

Download raw body.

Thread
> On 25 Jan 2025, at 14:42, Jonathan Gray <jsg@jsg.id.au> wrote:
> 
> On Tue, Jan 21, 2025 at 05:01:14PM +0100, Alexander Bluhm wrote:
>> On Mon, Jan 20, 2025 at 10:21:05PM +0300, Vitaliy Makkoveev wrote:
>>> Updated diff. It also has fixed white spaces pointed by kirill@
>> 
>> OK bluhm@
> 
> missed a path
> 

Sorry. ok mvs

> Index: sys/dev/wscons/wskbd.c
> ===================================================================
> RCS file: /cvs/src/sys/dev/wscons/wskbd.c,v
> diff -u -p -U9 -r1.121 wskbd.c
> --- sys/dev/wscons/wskbd.c	21 Jan 2025 20:13:19 -0000	1.121
> +++ sys/dev/wscons/wskbd.c	25 Jan 2025 11:37:25 -0000
> @@ -762,18 +762,19 @@ wskbd_deliver_event(struct wskbd_softc *
> 		return;
> 	}
> #endif
> 
> 	mtx_enter(&evar->ws_mtx);
> 	put = evar->ws_put;
> 	ev = &evar->ws_q[put];
> 	put = (put + 1) % WSEVENT_QSIZE;
> 	if (put == evar->ws_get) {
> +		mtx_leave(&evar->ws_mtx);
> 		log(LOG_WARNING, "%s: event queue overflow\n",
> 		    sc->sc_base.me_dv.dv_xname);
> 		return;
> 	}
> 	ev->type = type;
> 	ev->value = value;
> 	nanotime(&ev->time);
> 	evar->ws_put = put;
> 	mtx_leave(&evar->ws_mtx);
>