Re: [PATCH 5/5] task_work: use TIF_NOTIFY_SIGNAL if available

2020-10-16 Thread Jens Axboe
On 10/16/20 12:03 PM, Thomas Gleixner wrote: > On Fri, Oct 16 2020 at 08:53, Jens Axboe wrote: >> On 10/16/20 8:51 AM, Oleg Nesterov wrote: >>> On 10/16, Thomas Gleixner wrote: With moving the handling into get_signal() you don't need more changes to arch/* than adding the TIF bit,

Re: [PATCH 5/5] task_work: use TIF_NOTIFY_SIGNAL if available

2020-10-16 Thread Thomas Gleixner
On Fri, Oct 16 2020 at 08:53, Jens Axboe wrote: > On 10/16/20 8:51 AM, Oleg Nesterov wrote: >> On 10/16, Thomas Gleixner wrote: >>> >>> With moving the handling into get_signal() you don't need more changes >>> to arch/* than adding the TIF bit, right? >> >> we still need to do something like >>

Re: [PATCH 5/5] task_work: use TIF_NOTIFY_SIGNAL if available

2020-10-16 Thread Jens Axboe
On 10/16/20 8:51 AM, Oleg Nesterov wrote: > On 10/16, Thomas Gleixner wrote: >> >> With moving the handling into get_signal() you don't need more changes >> to arch/* than adding the TIF bit, right? > > we still need to do something like > > - if (thread_flags & _TIF_SIGPENDING) >

Re: [PATCH 5/5] task_work: use TIF_NOTIFY_SIGNAL if available

2020-10-16 Thread Oleg Nesterov
On 10/16, Thomas Gleixner wrote: > > With moving the handling into get_signal() you don't need more changes > to arch/* than adding the TIF bit, right? we still need to do something like - if (thread_flags & _TIF_SIGPENDING) + if (thread_flags & (_TIF_SIGPENDING |

Re: [PATCH 5/5] task_work: use TIF_NOTIFY_SIGNAL if available

2020-10-16 Thread Jens Axboe
On 10/16/20 8:11 AM, Thomas Gleixner wrote: > Jens, > > On Fri, Oct 16 2020 at 07:33, Jens Axboe wrote: >> On 10/16/20 3:00 AM, Thomas Gleixner wrote: >> I totally agree, and we're on the same page. I think you'll find that in >> the past I always carry through, the task_work notification was

Re: [PATCH 5/5] task_work: use TIF_NOTIFY_SIGNAL if available

2020-10-16 Thread Thomas Gleixner
On Fri, Oct 16 2020 at 07:35, Jens Axboe wrote: > On 10/16/20 3:39 AM, Thomas Gleixner wrote: >> On Fri, Oct 16 2020 at 11:00, Thomas Gleixner wrote: >> That's a truly great suggestion: >> >>X86 is going to have that TIF bit once the above is available. >> >> I'm happy to help with the merge

Re: [PATCH 5/5] task_work: use TIF_NOTIFY_SIGNAL if available

2020-10-16 Thread Thomas Gleixner
Jens, On Fri, Oct 16 2020 at 07:33, Jens Axboe wrote: > On 10/16/20 3:00 AM, Thomas Gleixner wrote: > I totally agree, and we're on the same page. I think you'll find that in > the past I always carry through, the task_work notification was somewhat > of a rush due to a hang related to it. For

Re: [PATCH 5/5] task_work: use TIF_NOTIFY_SIGNAL if available

2020-10-16 Thread Jens Axboe
On 10/16/20 3:39 AM, Thomas Gleixner wrote: > On Fri, Oct 16 2020 at 11:00, Thomas Gleixner wrote: >> On Thu, Oct 15 2020 at 12:39, Jens Axboe wrote: >>> On 10/15/20 9:49 AM, Oleg Nesterov wrote: >> So if you change #2 to: >> >>Drop the CONFIG_GENERIC_ENTRY dependency, make _all_ architectures

Re: [PATCH 5/5] task_work: use TIF_NOTIFY_SIGNAL if available

2020-10-16 Thread Jens Axboe
On 10/16/20 3:00 AM, Thomas Gleixner wrote: > On Thu, Oct 15 2020 at 12:39, Jens Axboe wrote: >> On 10/15/20 9:49 AM, Oleg Nesterov wrote: >>> You can simply nack the patch which adds TIF_NOTIFY_SIGNAL to >>> arch/xxx/include/asm/thread_info.h. > > As if that is going to change anything... > >>

Re: [PATCH 5/5] task_work: use TIF_NOTIFY_SIGNAL if available

2020-10-16 Thread Thomas Gleixner
On Fri, Oct 16 2020 at 11:00, Thomas Gleixner wrote: > On Thu, Oct 15 2020 at 12:39, Jens Axboe wrote: >> On 10/15/20 9:49 AM, Oleg Nesterov wrote: > So if you change #2 to: > >Drop the CONFIG_GENERIC_ENTRY dependency, make _all_ architectures >use TIF_NOTIFY_SIGNAL and clean up the jobctl

Re: [PATCH 5/5] task_work: use TIF_NOTIFY_SIGNAL if available

2020-10-16 Thread Thomas Gleixner
On Thu, Oct 15 2020 at 12:39, Jens Axboe wrote: > On 10/15/20 9:49 AM, Oleg Nesterov wrote: >> You can simply nack the patch which adds TIF_NOTIFY_SIGNAL to >> arch/xxx/include/asm/thread_info.h. As if that is going to change anything... > This seems to be the biggest area of contention right

Re: [PATCH 5/5] task_work: use TIF_NOTIFY_SIGNAL if available

2020-10-15 Thread Jens Axboe
On 10/15/20 9:49 AM, Oleg Nesterov wrote: > On 10/15, Jens Axboe wrote: >> >> Reviewed-by: Oleg Nesterov > > Yes, but ... > >> +static void task_work_notify_signal(struct task_struct *task) >> +{ >> +#if defined(CONFIG_GENERIC_ENTRY) && defined(TIF_NOTIFY_SIGNAL) > > as long as

Re: [PATCH 5/5] task_work: use TIF_NOTIFY_SIGNAL if available

2020-10-15 Thread Oleg Nesterov
On 10/15, Jens Axboe wrote: > > Reviewed-by: Oleg Nesterov Yes, but ... > +static void task_work_notify_signal(struct task_struct *task) > +{ > +#if defined(CONFIG_GENERIC_ENTRY) && defined(TIF_NOTIFY_SIGNAL) as long as defined(CONFIG_GENERIC_ENTRY) goes away ;) Thomas, I strongly, strongly

[PATCH 5/5] task_work: use TIF_NOTIFY_SIGNAL if available

2020-10-15 Thread Jens Axboe
If the arch supports TIF_NOTIFY_SIGNAL, then use that for TWA_SIGNAL as it's more efficient than using the signal delivery method. This is especially true on threaded applications, where ->sighand is shared across threads, but it's also lighter weight on non-shared cases. io_uring is a heavy