case FUTEX_WAKE_OP: ret = futex_wake_op(uaddr, uaddr2, val, val2, val3); break; 
long do_futex(unsigned long uaddr, int op, int val, unsigned long timeout,		unsigned long uaddr2, int val2, int val3){	int ret;	switch (op) {	case FUTEX_WAIT:		ret = futex_wait(uaddr, val, timeout);		break;	case FUTEX_WAKE:		ret = futex_wake(uaddr, val);		break;	case FUTEX_FD:		/* non-zero val means F_SETOWN(getpid()) & F_SETSIG(val) */		ret = futex_fd(uaddr, val);		break;	case FUTEX_REQUEUE:		ret = futex_requeue(uaddr, uaddr2, val, val2, NULL);		break;	case FUTEX_CMP_REQUEUE:		ret = futex_requeue(uaddr, uaddr2, val, val2, &val3);		break;	default:		ret = -ENOSYS;	}	return ret;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/4732efbeb997189d9f9b04708dc26bf8613ed721/futex.c/clean/kernel/futex.c