Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 13 Nov 2024 21:26:53 +0000
From:      bugzilla-noreply@freebsd.org
To:        net@FreeBSD.org
Subject:   [Bug 252165] usb network and mii bus media status race condition
Message-ID:  <bug-252165-7501-yJYubabwN1@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-252165-7501@https.bugs.freebsd.org/bugzilla/>
References:  <bug-252165-7501@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D252165

--- Comment #38 from Ali Abdallah <ali.abdallah@suse.com> ---
(In reply to Ali Abdallah from comment #37)
The patch in comment 37 could be a bit optimized, yes!=20

The usb process/request code is completely broken when it comes to different
threads sharing ue_lock (ioctl versus uether tick), the usb request code
releases the acquired lock, making ioctl thread waiting for the same lock t=
o be
scheduled for execution, lovely!

To be more precise.

ioctly waiting for ue_lock, which is acquired by ue_tick, but then the tick
code will call at some point usbd_do_request_flags, which will release the =
lock
at the beginning (and then acquire it later), but in the meantime we have o=
ur
"cute" ioctl thread waken-up only to report wrong media_status value!

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-252165-7501-yJYubabwN1>