up_write(&file->agent_mutex); 
up_write(&file->port->mutex); 
static int ib_umad_unreg_agent(struct ib_umad_file *file, unsigned long arg){	u32 id;	int ret = 0;	down_write(&file->agent_mutex);	if (get_user(id, (u32 __user *) arg)) {		ret = -EFAULT;		goto out;	}	if (id < 0 || id >= IB_UMAD_MAX_AGENTS || !file->agent[id]) {		ret = -EINVAL;		goto out;	}	ib_dereg_mr(file->mr[id]);	ib_unregister_mad_agent(file->agent[id]);	file->agent[id] = NULL;out:	up_write(&file->agent_mutex);	return ret;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/0c99cb6d5fe77872c5a32cff837c05f70158ce15/user_mad.c/clean/drivers/infiniband/core/user_mad.c