X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=linux_module%2Fiface-packet.c;h=6ec4de0a1d9278e88cea38a9364de63d024e1b95;hb=bf732d7c9e2940ed8dddcb30ff70bdc06bbfdc3b;hp=90a72bcd194d480ac00ab2fa8a0a3ea89555f68e;hpb=07aa8f3c18a33af0961e7546980a63ab5f6fba4f;p=palacios.git diff --git a/linux_module/iface-packet.c b/linux_module/iface-packet.c index 90a72bc..6ec4de0 100644 --- a/linux_module/iface-packet.c +++ b/linux_module/iface-packet.c @@ -253,9 +253,9 @@ palacios_packet_connect(struct v3_packet * packet, struct raw_interface * iface; unsigned long flags; - spin_lock_irqsave(&(packet_state.lock), flags); + palacios_spinlock_lock_irqsave(&(packet_state.lock), flags); iface = find_interface(host_nic); - spin_unlock_irqrestore(&(packet_state.lock),flags); + palacios_spinlock_unlock_irqrestore(&(packet_state.lock),flags); if(iface == NULL){ iface = (struct raw_interface *)palacios_alloc(sizeof(struct raw_interface)); @@ -268,9 +268,9 @@ palacios_packet_connect(struct v3_packet * packet, palacios_free(iface); return -1; } - spin_lock_irqsave(&(packet_state.lock), flags); + palacios_spinlock_lock_irqsave(&(packet_state.lock), flags); list_add(&(iface->node), &(packet_state.open_interfaces)); - spin_unlock_irqrestore(&(packet_state.lock),flags); + palacios_spinlock_unlock_irqrestore(&(packet_state.lock),flags); } packet->host_packet_data = iface; @@ -346,7 +346,7 @@ static int packet_init( void ) { V3_Init_Packet(&palacios_packet_hooks); memset(&packet_state, 0, sizeof(struct palacios_packet_state)); - spin_lock_init(&(packet_state.lock)); + palacios_spinlock_init(&(packet_state.lock)); INIT_LIST_HEAD(&(packet_state.open_interfaces)); // REGISTER GLOBAL CONTROL to add interfaces... @@ -361,6 +361,8 @@ static int packet_deinit( void ) { deinit_raw_interface(iface); palacios_free(iface); } + + palacios_spinlock_deinit(&(packet_state.lock)); return 0; }