All of lore.kernel.org
 help / color / mirror / Atom feed
* workqueue flush_work() patches
@ 2008-06-27 17:40 Max Krasnyansky
  2008-06-27 17:56 ` Oleg Nesterov
  0 siblings, 1 reply; 3+ messages in thread
From: Max Krasnyansky @ 2008-06-27 17:40 UTC (permalink / raw)
  To: Peter Zijlstra, oleg, jarkao2; +Cc: linux-kernel

Peter,
Oleg,

I'm not sure if you guys saw my last email on this. So I'll restart the 
thread.
If you guys are ok with the summary I provided below I can put all 
Oleg's patches into some git tree, test them on my boxes and resend to 
Andrew. I was also going to go over the users of flush_queued_work() and 
convert them to cancel_work_sync() and/or flush_work(). So I need to 
know if we want to go ahead with the flush_work() patches.
Please see summary below and let me know what you guys think.

Thanx
Max

----

Peter Zijlstra wrote:
 > Anyway, I think before we go further down this road, we'd better see
 > if anybody actually needs this. Not that theorizing about this problem
 > isn't fun,... but... :-)

Let me see if I can sum up current state of affairs. Looks like people 
are in general ok with Oleg's patches. Fancier stuff is much more 
complex and may not be needed.
Combining Oleg's patches with auditing current flush_scheduled_work() 
users and fixing them to use cancel_work_sync() (and in some cases 
flush_work()) gives us desired behaviour. Which is:
	1. minimizing flush overhead
	2. handling (actually avoiding) work queue thread starvation

Does that sound right ? Or did I miss something in the discussion ?

If that sounds right we should resend the patches to Andrew with formal 
ACKs because I do not seem them in mainline, linux-next or -mm.

Thanks
Max

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: workqueue flush_work() patches
  2008-06-27 17:40 workqueue flush_work() patches Max Krasnyansky
@ 2008-06-27 17:56 ` Oleg Nesterov
  2008-06-27 18:07   ` Max Krasnyansky
  0 siblings, 1 reply; 3+ messages in thread
From: Oleg Nesterov @ 2008-06-27 17:56 UTC (permalink / raw)
  To: Max Krasnyansky; +Cc: Peter Zijlstra, jarkao2, linux-kernel

On 06/27, Max Krasnyansky wrote:
> 
> I'm not sure if you guys saw my last email on this. So I'll restart the 
> thread.
> If you guys are ok with the summary I provided below I can put all 
> Oleg's patches into some git tree, test them on my boxes and resend to 
> Andrew.

I'll re-send these flush_work() patches to Andrew on Sunday,

> I was also going to go over the users of flush_queued_work() and 
> convert them to cancel_work_sync() and/or flush_work().

I think this would be very nice in any case.

but I don't think flush_work() will find a lot of users...

Oleg.


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: workqueue flush_work() patches
  2008-06-27 17:56 ` Oleg Nesterov
@ 2008-06-27 18:07   ` Max Krasnyansky
  0 siblings, 0 replies; 3+ messages in thread
From: Max Krasnyansky @ 2008-06-27 18:07 UTC (permalink / raw)
  To: Oleg Nesterov; +Cc: Peter Zijlstra, jarkao2, linux-kernel

Oleg Nesterov wrote:
> On 06/27, Max Krasnyansky wrote:
>> I'm not sure if you guys saw my last email on this. So I'll restart the 
>> thread.
>> If you guys are ok with the summary I provided below I can put all 
>> Oleg's patches into some git tree, test them on my boxes and resend to 
>> Andrew.
> 
> I'll re-send these flush_work() patches to Andrew on Sunday,
Excellent. Feel free to include
Acked-By: Max Krasnyansky <maxk@qualcomm.com>

>> I was also going to go over the users of flush_queued_work() and 
>> convert them to cancel_work_sync() and/or flush_work().
> 
> I think this would be very nice in any case.
> 
> but I don't think flush_work() will find a lot of users...
Well, you've already found one (schedule_on_each_cpu()) there will 
probably be more. But I agree that flush is mostly used in cleanup 
procedures and therefor most users just need cancel_work_sync().

Max

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2008-06-27 18:08 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-06-27 17:40 workqueue flush_work() patches Max Krasnyansky
2008-06-27 17:56 ` Oleg Nesterov
2008-06-27 18:07   ` Max Krasnyansky

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.