/* Stop the queues first to stop any new packets being sent. */ for (i = 0; i < HVMAXARCHITECTEDVIRTUALLANS; i++) if (veth_dev[i]) netif_stop_queue(veth_dev[i]);  /* Stop the connections before we unregister the driver. This * ensures there's no skbs lying around holding the device open. */ for (i = 0; i < HVMAXARCHITECTEDLPS; ++i) veth_stop_connection(i);  
/* Disconnect our "irq" to stop events coming from the Hypervisor. */ 
void __exit veth_module_cleanup(void){	int i;	/* Stop the queues first to stop any new packets being sent. */	for (i = 0; i < HVMAXARCHITECTEDVIRTUALLANS; i++)		if (veth_dev[i])			netif_stop_queue(veth_dev[i]);	/* Stop the connections before we unregister the driver. This	 * ensures there's no skbs lying around holding the device open. */	for (i = 0; i < HVMAXARCHITECTEDLPS; ++i)		veth_stop_connection(i);	HvLpEvent_unregisterHandler(HvLpEvent_Type_VirtualLan);	/* Hypervisor callbacks may have scheduled more work while we	 * were stoping connections. Now that we've disconnected from	 * the hypervisor make sure everything's finished. */	flush_scheduled_work();	vio_unregister_driver(&veth_driver);	for (i = 0; i < HVMAXARCHITECTEDLPS; ++i)		veth_destroy_connection(i);}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/f0c129caa34b4bb0944bbb758b56c3d85b105557/iseries_veth.c/clean/drivers/net/iseries_veth.c