Fedora kernel-2.6.17-1.2142_FC4 patched with stable patch-2.6.17.4-vs2.0.2-rc26.diff
[linux-2.6.git] / net / irda / irqueue.c
index 65a3eb9..1ba8c71 100644 (file)
@@ -391,8 +391,8 @@ int hashbin_delete( hashbin_t* hashbin, FREE_FUNC free_func)
        unsigned long flags = 0;
        int i;
 
-       ASSERT(hashbin != NULL, return -1;);
-       ASSERT(hashbin->magic == HB_MAGIC, return -1;);
+       IRDA_ASSERT(hashbin != NULL, return -1;);
+       IRDA_ASSERT(hashbin->magic == HB_MAGIC, return -1;);
        
        /* Synchronize */
        if ( hashbin->hb_type & HB_LOCK ) {
@@ -447,8 +447,8 @@ void hashbin_insert(hashbin_t* hashbin, irda_queue_t* entry, long hashv,
 
        IRDA_DEBUG( 4, "%s()\n", __FUNCTION__);
 
-       ASSERT( hashbin != NULL, return;);
-       ASSERT( hashbin->magic == HB_MAGIC, return;);
+       IRDA_ASSERT( hashbin != NULL, return;);
+       IRDA_ASSERT( hashbin->magic == HB_MAGIC, return;);
 
        /*
         * Locate hashbin
@@ -560,8 +560,8 @@ void* hashbin_remove( hashbin_t* hashbin, long hashv, const char* name)
 
        IRDA_DEBUG( 4, "%s()\n", __FUNCTION__);
 
-       ASSERT( hashbin != NULL, return NULL;);
-       ASSERT( hashbin->magic == HB_MAGIC, return NULL;);
+       IRDA_ASSERT( hashbin != NULL, return NULL;);
+       IRDA_ASSERT( hashbin->magic == HB_MAGIC, return NULL;);
        
        /*
         * Locate hashbin
@@ -653,9 +653,9 @@ void* hashbin_remove_this( hashbin_t* hashbin, irda_queue_t* entry)
 
        IRDA_DEBUG( 4, "%s()\n", __FUNCTION__);
 
-       ASSERT( hashbin != NULL, return NULL;);
-       ASSERT( hashbin->magic == HB_MAGIC, return NULL;);
-       ASSERT( entry != NULL, return NULL;);
+       IRDA_ASSERT( hashbin != NULL, return NULL;);
+       IRDA_ASSERT( hashbin->magic == HB_MAGIC, return NULL;);
+       IRDA_ASSERT( entry != NULL, return NULL;);
        
        /* Synchronize */
        if ( hashbin->hb_type & HB_LOCK ) {
@@ -663,8 +663,10 @@ void* hashbin_remove_this( hashbin_t* hashbin, irda_queue_t* entry)
        } /* Default is no-lock  */
 
        /* Check if valid and not already removed... */
-       if((entry->q_next == NULL) || (entry->q_prev == NULL))
-               return NULL;
+       if((entry->q_next == NULL) || (entry->q_prev == NULL)) {
+               entry = NULL;
+               goto out;
+       }
 
        /*
         * Locate hashbin
@@ -687,7 +689,7 @@ void* hashbin_remove_this( hashbin_t* hashbin, irda_queue_t* entry)
         */
        if ( entry == hashbin->hb_current)
                hashbin->hb_current = NULL;
-
+out:
        /* Release lock */
        if ( hashbin->hb_type & HB_LOCK ) {
                spin_unlock_irqrestore(&hashbin->hb_spinlock, flags);
@@ -712,8 +714,8 @@ void* hashbin_find( hashbin_t* hashbin, long hashv, const char* name )
 
        IRDA_DEBUG( 4, "hashbin_find()\n");
 
-       ASSERT( hashbin != NULL, return NULL;);
-       ASSERT( hashbin->magic == HB_MAGIC, return NULL;);
+       IRDA_ASSERT( hashbin != NULL, return NULL;);
+       IRDA_ASSERT( hashbin->magic == HB_MAGIC, return NULL;);
 
        /*
         * Locate hashbin
@@ -820,7 +822,6 @@ void* hashbin_find_next( hashbin_t* hashbin, long hashv, const char* name,
 
        return entry;
 }
-EXPORT_SYMBOL(hashbin_find_next);
 
 /*
  * Function hashbin_get_first (hashbin)
@@ -834,8 +835,8 @@ irda_queue_t *hashbin_get_first( hashbin_t* hashbin)
        irda_queue_t *entry;
        int i;
 
-       ASSERT( hashbin != NULL, return NULL;);
-       ASSERT( hashbin->magic == HB_MAGIC, return NULL;);
+       IRDA_ASSERT( hashbin != NULL, return NULL;);
+       IRDA_ASSERT( hashbin->magic == HB_MAGIC, return NULL;);
 
        if ( hashbin == NULL)
                return NULL;
@@ -870,11 +871,11 @@ irda_queue_t *hashbin_get_next( hashbin_t *hashbin)
        int bin;
        int i;
 
-       ASSERT( hashbin != NULL, return NULL;);
-       ASSERT( hashbin->magic == HB_MAGIC, return NULL;);
+       IRDA_ASSERT( hashbin != NULL, return NULL;);
+       IRDA_ASSERT( hashbin->magic == HB_MAGIC, return NULL;);
 
        if ( hashbin->hb_current == NULL) {
-               ASSERT( hashbin->hb_current != NULL, return NULL;);
+               IRDA_ASSERT( hashbin->hb_current != NULL, return NULL;);
                return NULL;
        }       
        entry = hashbin->hb_current->q_next;