On Fri, Apr 16, 2021 at 05:11:46PM +0200, Sabrina Dubroca wrote: > While testing ipcomp on a realtime kernel, Xiumei reported a "sleeping > in atomic" bug, caused by a memory allocation while preemption is > disabled (ipcomp_decompress -> alloc_page -> ... get_page_from_freelist). > > As Sebastian noted [1], this get_cpu() isn't actually needed, since > ipcomp_decompress() is called in napi context anyway, so BH is already > disabled. > > This patch replaces get_cpu + per_cpu_ptr with this_cpu_ptr, then > simplifies the error returns, since there isn't any common operation > left. > > [1] > https://lore.kernel.org/lkml/20190820082810.ixkmi56fp7u7e...@linutronix.de/ > > Cc: Juri Lelli <jle...@redhat.com> > Reported-by: Xiumei Mu <x...@redhat.com> > Suggested-by: Sebastian Andrzej Siewior <bige...@linutronix.de> > Signed-off-by: Sabrina Dubroca <s...@queasysnail.net>
Applied, thanks a lot!