[S390] qdio: remove the module_get & module_put pair
authorJan Glauber <jang@linux.vnet.ibm.com>
Thu, 21 Aug 2008 17:46:35 +0000 (19:46 +0200)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Thu, 21 Aug 2008 17:46:40 +0000 (19:46 +0200)
Increasing the qdio reference count for every used subchannel
is unnecessary since unloading qdio (if build as a module) is
only possible if other modules that use qdio are unloaded.
Unloading modules that use qdio in turn requires that these
modules shut down all qdio subchannels. Therefore the additional
module_get reference is not needed.

Signed-off-by: Jan Glauber <jang@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
drivers/s390/cio/qdio_main.c

index 444fc7e521d47b89a0d94b9e8cd4b999d0e1c269..e6eabc853422cc9320c7925099471ec04e48f44b 100644 (file)
@@ -1251,7 +1251,6 @@ no_cleanup:
 
        qdio_set_state(irq_ptr, QDIO_IRQ_STATE_INACTIVE);
        mutex_unlock(&irq_ptr->setup_mutex);
-       module_put(THIS_MODULE);
        if (rc)
                return rc;
        return 0;
@@ -1399,9 +1398,6 @@ int qdio_establish(struct qdio_initialize *init_data)
        if (cdev->private->state != DEV_STATE_ONLINE)
                return -EINVAL;
 
-       if (!try_module_get(THIS_MODULE))
-               return -EINVAL;
-
        mutex_lock(&irq_ptr->setup_mutex);
        qdio_setup_irq(init_data);