memcpy(sa_path->dgid.raw, ucm_path.dgid, sizeof(union ib_gid)); memcpy(sa_path->sgid.raw, ucm_path.sgid, sizeof(union ib_gid)); 
memcpy(sa_path->dgid.raw, ucm_path.dgid, sizeof sa_path->dgid); memcpy(sa_path->sgid.raw, ucm_path.sgid, sizeof sa_path->sgid); 
static int ib_ucm_path_get(struct ib_sa_path_rec **path, u64 src){	struct ib_ucm_path_rec ucm_path;	struct ib_sa_path_rec  *sa_path;	*path = NULL;	if (!src)		return 0;	sa_path = kmalloc(sizeof(*sa_path), GFP_KERNEL);	if (!sa_path)		return -ENOMEM;	if (copy_from_user(&ucm_path, (void __user *)(unsigned long)src,			   sizeof(ucm_path))) {		kfree(sa_path);		return -EFAULT;	}	memcpy(sa_path->dgid.raw, ucm_path.dgid, sizeof(union ib_gid));	memcpy(sa_path->sgid.raw, ucm_path.sgid, sizeof(union ib_gid));	sa_path->dlid	          = ucm_path.dlid;	sa_path->slid	          = ucm_path.slid;	sa_path->raw_traffic      = ucm_path.raw_traffic;	sa_path->flow_label       = ucm_path.flow_label;	sa_path->hop_limit        = ucm_path.hop_limit;	sa_path->traffic_class    = ucm_path.traffic_class;	sa_path->reversible       = ucm_path.reversible;	sa_path->numb_path        = ucm_path.numb_path;	sa_path->pkey             = ucm_path.pkey;	sa_path->sl               = ucm_path.sl;	sa_path->mtu_selector     = ucm_path.mtu_selector;	sa_path->mtu              = ucm_path.mtu;	sa_path->rate_selector    = ucm_path.rate_selector;	sa_path->rate             = ucm_path.rate;	sa_path->packet_life_time = ucm_path.packet_life_time;	sa_path->preference       = ucm_path.preference;	sa_path->packet_life_time_selector =		ucm_path.packet_life_time_selector;	*path = sa_path;	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/b9ef520f9caf20aba8ac7cb2bbba45b52ff19d53/ucm.c/clean/drivers/infiniband/core/ucm.c