Date: Thu, 20 Feb 2020 10:16:19 +0100 From: Hans Petter Selasky <hps@selasky.org> To: Adrian Chadd <adrian@freebsd.org>, FreeBSD Net <freebsd-net@freebsd.org> Subject: Re: epoch and ath(4) - what should we be doing? Message-ID: <4945cea9-700a-6c4f-1fcc-0447a078f33a@selasky.org> In-Reply-To: <CAJ-VmokqMzB-hGMOEwJ-1R3wsOzrL16jOqC58c34gM1CM00gPQ@mail.gmail.com> References: <CAJ-VmokqMzB-hGMOEwJ-1R3wsOzrL16jOqC58c34gM1CM00gPQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2020-02-20 02:01, Adrian Chadd wrote: > Questions: > > * are these things recursive? Yes. > * what are the rules around sleeping? I've seen some ... discussions > that were quite animated around this. Any non-sleepable lock is allowed under EPOCH(9). > * what should I be doing as an epoch tracker if I could call the > receive routine from multiple paths. I see a few drivers have a single > place where they're doing EPOCH_ENTER/EPOCH_EXIT using an epoch > tracker allocated in the interrupt handler stack, but what if I also > want to call that receive path from another function path too? Can I > just stuff an epoch_tracker on the stack and it'll DTRT ? Try: https://reviews.freebsd.org/D23674 > * .. is there some updated doc or brain dump somewhere I can read? I'd > like to go add this to a couple out of tree wifi drivers under > development so this would make that whole thing much easier. Gleb ??? --HPS
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4945cea9-700a-6c4f-1fcc-0447a078f33a>