Re: [PATCH v2] ipc/sem: do not sleep with a spin lock held

From: Manfred Spraul
Date: Mon Jan 03 2022 - 12:18:04 EST


Hi Jiri,

On 1/3/22 10:27, Jiri Slaby wrote:
On 23. 12. 21, 4:12, cgel.zte@xxxxxxxxx wrote:
From: Minghao Chi <chi.minghao@xxxxxxxxxx>

We can't call kvfree() with a spin lock held, so defer it.

Sorry, defer what?

First drop the spinlock, then call kvfree().


There are attempts to fix kvfree instead, not sure which of these approaches (fix kvfree or its callers) won in the end?

Exactly. We have three options - but noone volunteered yet to decide:

- change ipc/sem.c [minimal change]

- change kvfree() to use vfree_atomic() [would also fix other changes that did s/kfree/kvfree/]

- Modify the vma handling so that it becomes safe to call vfree() while holding a spinlock. [perfect approach, but I'm concerned about side effects]


--

    Manfred