Den fre 28 sep. 2018 kl 13:31 skrev Dan Streetman <ddstreet@xxxxxxxx>:
On Thu, Sep 27, 2018 at 5:15 PM Alex Xu (Hello71) <alex_y_xu@xxxxxxxx> wrote:
>
> Spinlocks are always lockable on UP systems, even if they were just
> locked.
>
> Cc: Dan Streetman <ddstreet@xxxxxxxx>
I cc'ed Vitaly also, as this code is from him, but the change
certainly looks correct to me.
Acked-by: Dan Streetman <ddstreet@xxxxxxxx>
Acked-by: Vitaly Wool <vitalywool@xxxxxxxxx>
> Signed-off-by: Alex Xu (Hello71) <alex_y_xu@xxxxxxxx>
> ---
> mm/z3fold.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/mm/z3fold.c b/mm/z3fold.c
> index 4b366d181..2e8d268ac 100644
> --- a/mm/z3fold.c
> +++ b/mm/z3fold.c
> @@ -277,7 +277,7 @@ static void release_z3fold_page_locked(struct kref *ref)
> {
> struct z3fold_header *zhdr = container_of(ref, struct z3fold_header,
> refcount);
> - WARN_ON(z3fold_page_trylock(zhdr));
> + WARN_ON_SMP(z3fold_page_trylock(zhdr));
> __release_z3fold_page(zhdr, true);
> }
>
> @@ -289,7 +289,7 @@ static void release_z3fold_page_locked_list(struct kref *ref)
> list_del_init(&zhdr->buddy);
> spin_unlock(&zhdr->pool->lock);
>
> - WARN_ON(z3fold_page_trylock(zhdr));
> + WARN_ON_SMP(z3fold_page_trylock(zhdr));
> __release_z3fold_page(zhdr, true);
> }
>
> @@ -403,7 +403,7 @@ static void do_compact_page(struct z3fold_header *zhdr, bool locked)
>
> page = virt_to_page(zhdr);
> if (locked)
> - WARN_ON(z3fold_page_trylock(zhdr));
> + WARN_ON_SMP(z3fold_page_trylock(zhdr));
> else
> z3fold_page_lock(zhdr);
> if (WARN_ON(!test_and_clear_bit(NEEDS_COMPACTING, &page->private))) {
> --
> 2.19.0
>