[stgt] tgtd stuck in infinite loop
    Elliot Peele 
    elliot at rpath.com
       
    Thu Feb 18 21:28:53 CET 2010
    
    
  
I am running tgt 1.0.1, serving four iSCSI targets to an ESX 4i cluster.
I have seen the daemon get into an infinite loop a couple of times and stop responding to any requests. From the looks of it in iscsi_data_out_rx_start the cmd_list ends up looping back on itself.
(gdb) l -
1478    static int iscsi_data_out_rx_start(struct iscsi_connection *conn)
1479    {
1480            struct iscsi_task *task;
1481            struct iscsi_data *req = (struct iscsi_data *) &conn->req.bhs;
1482
1483            list_for_each_entry(task, &conn->session->cmd_list, c_hlist) {
1484                    if (task->tag == req->itt)
1485                            goto found;
1486            }
1487            return -EINVAL;
(gdb) p conn->session->cmd_list->next
$9 = (struct list_head *) 0x785330
(gdb) p &conn->session->cmd_list->next
$10 = (struct list_head **) 0x690fb8
(gdb) p &conn->session->cmd_list->next->next
$11 = (struct list_head **) 0x785330
Has anyone seen this behavior before? Is there anymore information that I can provide?
Thanks,
Elliot
--
Elliot Peele
rPath, Inc.
elliot at rpath.com
--
To unsubscribe from this list: send the line "unsubscribe stgt" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
    
    
More information about the stgt
mailing list