Lines Matching refs:zsl
273 struct zspage_lock zsl; member
279 struct zspage_lock *zsl = &zspage->zsl; in zspage_lock_init() local
281 lockdep_init_map(&zsl->dep_map, "zspage->lock", &__key, 0); in zspage_lock_init()
282 spin_lock_init(&zsl->lock); in zspage_lock_init()
283 zsl->cnt = ZS_PAGE_UNLOCKED; in zspage_lock_init()
306 struct zspage_lock *zsl = &zspage->zsl; in zspage_read_lock() local
308 rwsem_acquire_read(&zsl->dep_map, 0, 0, _RET_IP_); in zspage_read_lock()
310 spin_lock(&zsl->lock); in zspage_read_lock()
311 zsl->cnt++; in zspage_read_lock()
312 spin_unlock(&zsl->lock); in zspage_read_lock()
314 lock_acquired(&zsl->dep_map, _RET_IP_); in zspage_read_lock()
319 struct zspage_lock *zsl = &zspage->zsl; in zspage_read_unlock() local
321 rwsem_release(&zsl->dep_map, _RET_IP_); in zspage_read_unlock()
323 spin_lock(&zsl->lock); in zspage_read_unlock()
324 zsl->cnt--; in zspage_read_unlock()
325 spin_unlock(&zsl->lock); in zspage_read_unlock()
330 struct zspage_lock *zsl = &zspage->zsl; in zspage_write_trylock() local
332 spin_lock(&zsl->lock); in zspage_write_trylock()
333 if (zsl->cnt == ZS_PAGE_UNLOCKED) { in zspage_write_trylock()
334 zsl->cnt = ZS_PAGE_WRLOCKED; in zspage_write_trylock()
335 rwsem_acquire(&zsl->dep_map, 0, 1, _RET_IP_); in zspage_write_trylock()
336 lock_acquired(&zsl->dep_map, _RET_IP_); in zspage_write_trylock()
340 spin_unlock(&zsl->lock); in zspage_write_trylock()
346 struct zspage_lock *zsl = &zspage->zsl; in zspage_write_unlock() local
348 rwsem_release(&zsl->dep_map, _RET_IP_); in zspage_write_unlock()
350 zsl->cnt = ZS_PAGE_UNLOCKED; in zspage_write_unlock()
351 spin_unlock(&zsl->lock); in zspage_write_unlock()