]> Pileus Git - ~andy/linux/blobdiff - net/iucv/iucv.c
[NEIGHBOUR]: Use proc_create() to setup ->proc_fops first
[~andy/linux] / net / iucv / iucv.c
index 7698f6c459d6006f2ed587ec00c54c84a1901777..2753b0c448f374f3f27c26f991e97d94c43459ad 100644 (file)
@@ -693,9 +693,9 @@ int iucv_register(struct iucv_handler *handler, int smp)
                iucv_setmask_up();
        INIT_LIST_HEAD(&handler->paths);
 
-       spin_lock_irq(&iucv_table_lock);
+       spin_lock_bh(&iucv_table_lock);
        list_add_tail(&handler->list, &iucv_handler_list);
-       spin_unlock_irq(&iucv_table_lock);
+       spin_unlock_bh(&iucv_table_lock);
        rc = 0;
 out_mutex:
        mutex_unlock(&iucv_register_mutex);
@@ -1492,7 +1492,7 @@ static void iucv_tasklet_fn(unsigned long ignored)
                [0x08] = iucv_message_pending,
                [0x09] = iucv_message_pending,
        };
-       struct list_head task_queue = LIST_HEAD_INIT(task_queue);
+       LIST_HEAD(task_queue);
        struct iucv_irq_list *p, *n;
 
        /* Serialize tasklet, iucv_path_sever and iucv_path_connect. */
@@ -1526,7 +1526,7 @@ static void iucv_tasklet_fn(unsigned long ignored)
 static void iucv_work_fn(struct work_struct *work)
 {
        typedef void iucv_irq_fn(struct iucv_irq_data *);
-       struct list_head work_queue = LIST_HEAD_INIT(work_queue);
+       LIST_HEAD(work_queue);
        struct iucv_irq_list *p, *n;
 
        /* Serialize tasklet, iucv_path_sever and iucv_path_connect. */