[SCSI] fcoe: Correct fcoe_transports initialization vs. registration

The registration function shouldn't initialize the mutex or
list head. The fcoe SW transport should initialize itself
before registering.

Signed-off-by: Robert Love <robert.w.love@intel.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
This commit is contained in:
Robert Love 2009-02-27 10:56:06 -08:00 committed by James Bottomley
parent a468f328ad
commit 03ec862dff
2 changed files with 5 additions and 3 deletions

View File

@ -258,9 +258,6 @@ int fcoe_transport_register(struct fcoe_transport *t)
list_add_tail(&t->list, &fcoe_transports); list_add_tail(&t->list, &fcoe_transports);
mutex_unlock(&fcoe_transports_lock); mutex_unlock(&fcoe_transports_lock);
mutex_init(&t->devlock);
INIT_LIST_HEAD(&t->devlist);
printk(KERN_DEBUG "fcoe_transport_register:%s\n", t->name); printk(KERN_DEBUG "fcoe_transport_register:%s\n", t->name);
return 0; return 0;

View File

@ -467,10 +467,15 @@ int __init fcoe_sw_init(void)
/* attach to scsi transport */ /* attach to scsi transport */
scsi_transport_fcoe_sw = scsi_transport_fcoe_sw =
fc_attach_transport(&fcoe_sw_transport_function); fc_attach_transport(&fcoe_sw_transport_function);
if (!scsi_transport_fcoe_sw) { if (!scsi_transport_fcoe_sw) {
printk(KERN_ERR "fcoe_sw_init:fc_attach_transport() failed\n"); printk(KERN_ERR "fcoe_sw_init:fc_attach_transport() failed\n");
return -ENODEV; return -ENODEV;
} }
mutex_init(&fcoe_sw_transport.devlock);
INIT_LIST_HEAD(&fcoe_sw_transport.devlist);
/* register sw transport */ /* register sw transport */
fcoe_transport_register(&fcoe_sw_transport); fcoe_transport_register(&fcoe_sw_transport);
return 0; return 0;