__down_read_trylock
LOCK_CONTENDED(sem, __down_read_trylock, __down_read);
if (LOCK_CONTENDED_RETURN(sem, __down_read_trylock, __down_read_interruptible)) {
if (LOCK_CONTENDED_RETURN(sem, __down_read_trylock, __down_read_killable)) {
int ret = __down_read_trylock(sem);
LOCK_CONTENDED(sem, __down_read_trylock, __down_read);
if (LOCK_CONTENDED_RETURN(sem, __down_read_trylock, __down_read_killable)) {