ib_dereg_mr(port_priv->mr);  
int ib_agent_port_close(struct ib_device *device, int port_num){	struct ib_agent_port_private *port_priv;	unsigned long flags;	spin_lock_irqsave(&ib_agent_port_list_lock, flags);	port_priv = __ib_get_agent_port(device, port_num, NULL);	if (port_priv == NULL) {		spin_unlock_irqrestore(&ib_agent_port_list_lock, flags);		printk(KERN_ERR SPFX "Port %d not found\n", port_num);		return -ENODEV;	}	list_del(&port_priv->port_list);	spin_unlock_irqrestore(&ib_agent_port_list_lock, flags);	ib_dereg_mr(port_priv->mr);	ib_unregister_mad_agent(port_priv->perf_mgmt_agent);	ib_unregister_mad_agent(port_priv->smp_agent);	kfree(port_priv);	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/b82cab6b331b51d82f90d2207f3bbfdf09361ac9/agent.c/buggy/drivers/infiniband/core/agent.c