On Wed, May 27, 2020 at 10:11:19PM +0200, Sebastian Andrzej Siewior wrote: > From: Mike Galbraith <umgwanakikb...@gmail.com> > > The zcomp driver uses per-CPU compression. The per-CPU data pointer is > acquired with get_cpu_ptr() which implicitly disables preemption. > It allocates memory inside the preempt disabled region which conflicts > with the PREEMPT_RT semantics. > > Replace the implicit preemption control with an explicit local lock. > This allows RT kernels to substitute it with a real per CPU lock, which > serializes the access but keeps the code section preemptible. On non RT > kernels this maps to preempt_disable() as before, i.e. no functional > change. > > [bigeasy: Use local_lock(), description, drop reordering] > > Cc: Minchan Kim <minc...@kernel.org> > Cc: Nitin Gupta <ngu...@vflare.org> > Cc: Sergey Senozhatsky <sergey.senozhatsky.w...@gmail.com> > Signed-off-by: Mike Galbraith <umgwanakikb...@gmail.com> > Signed-off-by: Sebastian Andrzej Siewior <bige...@linutronix.de> Acked-by: Minchan Kim <minc...@kernel.org>