rem: uint32 cookie; int rc, rc2;
add: int32 cookie; status_t rc; int rc2;
context: int user_get_next_sem_info(team_id uteam, uint32 *ucookie, struct sem_info *uinfo, size_t sz){	struct sem_info info;	uint32 cookie;	int rc, rc2;	if ((addr)uinfo >= KERNEL_BASE && (addr)uinfo <= KERNEL_TOP)		return ERR_VM_BAD_USER_MEMORY;	rc2 = user_memcpy(&cookie, ucookie, sizeof(uint32));	if (rc2 < 0)		return rc2;	rc = _get_next_sem_info(uteam, &cookie, &info, sz);	rc2 = user_memcpy(uinfo, &info, sz);	if (rc2 < 0)		return rc2;	rc2 = user_memcpy(ucookie, &cookie, sizeof(uint32));	if (rc2 < 0)		return rc2;	return rc;}