Re: [PATCH] mm/page_alloc: Wait for oom_lock before retrying.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On (12/22/16 11:53), Petr Mladek wrote:
> > Thank you. I tried "[PATCHv6 0/7] printk: use printk_safe to handle printk()
> > recursive calls" at https://lkml.org/lkml/2016/12/21/232 on top of linux.git
> > as of commit 52bce91165e5f2db "splice: reinstate SIGPIPE/EPIPE handling", but
> > it turned out that your patch set does not solve this problem.
> >
> > I was assuming that sending to consoles from printk() is offloaded to a kernel
> > thread dedicated for that purpose, but your patch set does not do it. As a result,
> > somebody who called out_of_memory() is still preempted by other threads consuming
> > CPU time due to cond_resched() from console_unlock() as demonstrated by below patch.
> 
> Ah, it was a misunderstanding. The "printk_safe" patchset allows to
> call printk() from inside some areas guarded by logbuf_lock. By other
> words, it allows to print errors from inside printk() code. I does
> not solve the soft-/live-locks.

ineeed.

> We need the async printk patchset here. It will allow to offload the
> console handling to the kthread. AFAIK, Sergey wanted to rebase it
> on top of the printk_safe patchset. I am not sure when he want or
> will have time to do so, though.

sure. this is still the case. and in fact my tree here
https://gitlab.com/senozhatsky/linux-next-ss/commits/printk-safe-deferred

contains both patch sets: 9 patche in total (rebased agains linux-next
20161221).

first 7 patches are printk-safe, the last 2 -- async printk.

	-ss

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]