Re: [PATCH 3/5] zram: use zram_slot_lock instead of raw bit_spin_lock op

From: Minchan Kim
Date: Mon Apr 03 2017 - 02:34:29 EST


Hi Sergey,

On Mon, Apr 03, 2017 at 03:08:58PM +0900, Sergey Senozhatsky wrote:
> Hello Minchan,
>
> On (04/03/17 14:17), Minchan Kim wrote:
> > With this clean-up phase, I want to use zram's wrapper function
> > to lock table access which is more consistent with other zram's
> > functions.
>
> which reminds me of...
>
> there was a discussion a long time ago, -rt people absolutely
> hate bit spin_locks and they suggested us to replace it with
> normal spin_locks (and I promised to take a look at it, but
> got interrupted and never really returned back to it).
>
> for !lockdep builds the impact is somewhat small; for lockdep
> builds we increase the memory usage, but
>
> a) lockdep builds are debug builds by definition, no one runs lockdep
> enabled kernels in production
>
> b) we have lockdep in zram now, which is nice

It's really one I want to have.

>
> c) spin_locks probably have better fairness guarantees

In fact, it wouldn't be an imporant because zram's slot lock contention
is not heavy.
>
>
> what do you think? can we, in this patch set, also replce bit
> spin_locks with a normal spin_lock?

With changing only zram side from bit_spin_lock to spin_lock,
it would be crippled. I mean zsmalloc should be changed, too
and it's really hard. :(