Date: Fri, 2 Sep 2022 17:17:04 +0300 From: Konstantin Belousov <kostikbel@gmail.com> To: Mateusz Guzik <mjguzik@gmail.com> Cc: freebsd-current@freebsd.org Subject: Re: kernel-side thread stack swapping Message-ID: <YxIQYCb3CsBtv9Gf@kib.kiev.ua> In-Reply-To: <CAGudoHGbomDGPNsYa_RHGS7NkWU4iOBHnxr9bCnvfn8BYMjEJQ@mail.gmail.com> References: <CAGudoHFh5H721kcQT0zDdErD%2Bj%2B0YA6Hz=%2Bjarg9R1jdttfx-A@mail.gmail.com> <YxINyjnFDt8kU41j@kib.kiev.ua> <CAGudoHGbomDGPNsYa_RHGS7NkWU4iOBHnxr9bCnvfn8BYMjEJQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Sep 02, 2022 at 04:11:40PM +0200, Mateusz Guzik wrote: > On 9/2/22, Konstantin Belousov <kostikbel@gmail.com> wrote: > > On Fri, Sep 02, 2022 at 02:05:37PM +0200, Mateusz Guzik wrote: > >> Is this really of practical use today? > >> > >> I have a WIP patch which needs to temporarily store something on the > >> stack and should things go wrong enough it will be accessed by UMA, > >> which can't handle the fault nor decide to skip the access. > >> > >> I can add something like td_pinstack or whatever to keep it around, > >> but perhaps the entire machinery can be just whacked? > > p_hold already does that. > > > > I only need to protect the one stack and more importantly don't want > to take the proc lock to bump p_hold (nor convert it to atomics), it's > all thread-local so to speak. You do not want to take proc lock, or cannot? Note that only sleeping thread' stack can be swapped out.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?YxIQYCb3CsBtv9Gf>