Messages in this thread | | | Date | Tue, 8 Nov 2016 09:33:56 +0900 | From | Sergey Senozhatsky <> | Subject | Re: Zram/Zmalloc Questions |
| |
On (11/07/16 10:50), Cory Pruce wrote: > I see in zsmalloc.c that zsmalloc is mounted as a pseudo filesystem (block > device I believe). However, there are empty implementations of > zsmalloc_mount and zsmalloc_unmount for when CONFIG_COMPACTION is not set.
no. it's because compaction needs an inode via alloc_anon_inode(). look at inode->i_mapping->a_ops. zsmalloc does require or depend on mounting otherwise.
[..] > Why is bit_spin_lock being used instead of the general spin_lock? Is there > some performance benefit?
no. to save the memory. look at bits squeezing from handle. otherwise, one would have to allocate both handle and a 4-byte spin_lock. I believe bit_spin_lock in general have worse performance than spin_lock, just because spin_lock is not always "a silly busy loop", while bit_spin_lock is.
-ss
| |