Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0be4acec829ae37901aea7bd09aca1cea319833a
Commit:     0be4acec829ae37901aea7bd09aca1cea319833a
Parent:     1f8bdae9ef8e1ed2b208cdbaadb91061ede30212
Author:     Ursula Braun <[EMAIL PROTECTED]>
AuthorDate: Wed May 2 15:18:44 2007 +0200
Committer:  Jeff Garzik <[EMAIL PROTECTED]>
CommitDate: Tue May 8 01:16:24 2007 -0400

    s390: fix Oops when unloading module netiucv
    
    don't remove an entry from iucv_connection_list in netiucv_exit().
    netiucv_free_netdevice is called anyway, which takes care of entry
    removal.
    
    Signed-off-by: Ursula Braun <[EMAIL PROTECTED]>
    Signed-off-by: Frank Pavlic <[EMAIL PROTECTED]>
    Signed-off-by: Jeff Garzik <[EMAIL PROTECTED]>
---
 drivers/s390/net/netiucv.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/s390/net/netiucv.c b/drivers/s390/net/netiucv.c
index e10e85e..c358764 100644
--- a/drivers/s390/net/netiucv.c
+++ b/drivers/s390/net/netiucv.c
@@ -1862,12 +1862,14 @@ static void netiucv_remove_connection(struct 
iucv_connection *conn)
        write_lock_bh(&iucv_connection_rwlock);
        list_del_init(&conn->list);
        write_unlock_bh(&iucv_connection_rwlock);
+       fsm_deltimer(&conn->timer);
+       netiucv_purge_skb_queue(&conn->collect_queue);
        if (conn->path) {
                iucv_path_sever(conn->path, iucvMagic);
                kfree(conn->path);
                conn->path = NULL;
        }
-       fsm_deltimer(&conn->timer);
+       netiucv_purge_skb_queue(&conn->commit_queue);
        kfree_fsm(conn->fsm);
        kfree_skb(conn->rx_buff);
        kfree_skb(conn->tx_buff);
@@ -2115,7 +2117,6 @@ static void __exit netiucv_exit(void)
        while (!list_empty(&iucv_connection_list)) {
                cp = list_entry(iucv_connection_list.next,
                                struct iucv_connection, list);
-               list_del(&cp->list);
                ndev = cp->netdev;
                priv = netdev_priv(ndev);
                dev = priv->dev;
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to