On 10/12/20 11:27 AM, Miroslav Benes wrote: > On Sat, 10 Oct 2020, Jens Axboe wrote: > >> On 10/9/20 9:21 AM, Jens Axboe wrote: >>> On 10/9/20 2:01 AM, Miroslav Benes wrote: >>>> On Thu, 8 Oct 2020, Oleg Nesterov wrote: >>>> >>>>> On 10/05, Jens Axboe wrote: >>>>>> >>>>>> Hi, >>>>>> >>>>>> The goal is this patch series is to decouple TWA_SIGNAL based task_work >>>>>> from real signals and signal delivery. >>>>> >>>>> I think TIF_NOTIFY_SIGNAL can have more users. Say, we can move >>>>> try_to_freeze() from get_signal() to tracehook_notify_signal(), kill >>>>> fake_signal_wake_up(), and remove freezing() from recalc_sigpending(). >>>>> >>>>> Probably the same for TIF_PATCH_PENDING, klp_send_signals() can use >>>>> set_notify_signal() rather than signal_wake_up(). >>>> >>>> Yes, that was my impression from the patch set too, when I accidentally >>>> noticed it. >>>> >>>> Jens, could you CC our live patching ML when you submit v4, please? It >>>> would be a nice cleanup. >>> >>> Definitely, though it'd be v5 at this point. But we really need to get >>> all archs supporting TIF_NOTIFY_SIGNAL first. Once we have that, there's >>> a whole slew of cleanups that'll fall out naturally: >>> >>> - Removal of JOBCTL_TASK_WORK >>> - Removal of special path for TWA_SIGNAL in task_work >>> - TIF_PATCH_PENDING can be converted and then removed >>> - try_to_freeze() cleanup that Oleg mentioned >>> >>> And probably more I'm not thinking of right now :-) >> >> Here's the current series, I took a stab at converting all archs to >> support TIF_NOTIFY_SIGNAL so we have a base to build on top of. Most >> of them were straight forward, but I need someone to fixup powerpc, >> verify arm and s390. >> >> But it's a decent start I think, and means that we can drop various >> bits as is done at the end of the series. I could swap things around >> a bit and avoid having the intermediate step, but I envision that >> getting this in all archs will take a bit longer than just signing off >> on the generic/x86 bits. So probably best to keep the series as it is >> for now, and work on getting the arch bits verified/fixed/tested. >> >> https://git.kernel.dk/cgit/linux-block/log/?h=tif-task_work > > Thanks, Jens. > > Crude diff for live patching on top of the series is below. Tested only on > x86_64, but it passes the tests without an issue. Nice, thanks! I'm continuing to hone the series, what's really missing so far is arch review. Most conversions are straight forward, some I need folks to definitely take a look at (arm, s390). powerpc is also a bit hair right now, but I'm told that 5.10 will kill a TIF flag there, so that'll make it trivial once I rebase on that. Did a few more cleanups on top, series is in the same spot. I'll repost once the merge window settles down. -- Jens Axboe