Date: Sat, 18 Jan 2025 15:35:04 +0000 From: bugzilla-noreply@freebsd.org To: net@FreeBSD.org Subject: [Bug 284057] vmxnet3/iflib: crash in vmxnet3_isc_txd_credits_update Message-ID: <bug-284057-7501-lObQilZi7O@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-284057-7501@https.bugs.freebsd.org/bugzilla/> References: <bug-284057-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=284057 --- Comment #10 from Mark Johnston <markj@FreeBSD.org> --- (In reply to Andriy Gapon from comment #9) I'm not familiar with the driver, but looking at vmxnet3_isc_txd_credits_update(), I think your patch needs to: - atomically increment vcxr_next, so that multiple threads don't process the same descriptor, - somehow, atomically update txr->vxtxr_next. I suspect your best bet is to just use a spinlock to serialize the loop. (It looks like this routine can be called from hard interrupt context, so regular mutexes cannot be used.) It might be possible to implement this correctly with atomics, but I doubt it's worthwhile. -- 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-284057-7501-lObQilZi7O>
