Re: bnx2i driver branches
Anil Veerabhadrappa wrote: > I had one question regarding following code snippet in > scsi_transport_iscsi.c::iscsi_register_transport:1597 > > if (!(tt->caps & CAP_DATA_PATH_OFFLOAD)) > priv->t.create_work_queue = 1; > > Is this still valid? while testing bnx2i changes I see libiscsi indeed > calls scsi_queue_work(). I was going to remove conditional 'if' > statement and continue to test bnx2i, but for a second I thought of > implications on other existing offload drivers like qla4xxx. any > thoughts? > opps yeah, I just did not get to cleaning everything up. bnx2i and qla4xxx do not need the workqueue. Here is a patch for that. It is not even compile tested. Basically the idea is that for offload like bnx2i we can just call the xmit/init cmd/mgmt ctasks from whatever context we are in because we do not sleep (we just setup the command and give it to the hw more or less). For software we need to queue up the execution because we need to sleep (it is also a workaround to the stack problem for software iscsi + xfs + dm + md + network layer). --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to open-iscsi@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/open-iscsi -~--~~~~--~~--~--~--- diff --git a/drivers/scsi/libiscsi.c b/drivers/scsi/libiscsi.c index dee902b..6354153 100644 --- a/drivers/scsi/libiscsi.c +++ b/drivers/scsi/libiscsi.c @@ -79,10 +79,12 @@ iscsi_update_cmdsn(struct iscsi_session *session, struct iscsi_nopin *hdr) * xmit thread */ if (!list_empty(&session->leadconn->xmitqueue) || - !list_empty(&session->leadconn->mgmtqueue)) - scsi_queue_work(session->host, - &session->leadconn->xmitwork); - } + !list_empty(&session->leadconn->mgmtqueue)) { + if (!(session->tt->caps & CAP_DATA_PATH_OFFLOAD)) +scsi_queue_work(session->host, + &session->leadconn->xmitwork); + } + } } EXPORT_SYMBOL_GPL(iscsi_update_cmdsn); @@ -421,7 +423,8 @@ __iscsi_conn_send_pdu(struct iscsi_conn *conn, struct iscsi_hdr *hdr, if (session->tt->xmit_mgmt_task(conn, mtask)) mtask = NULL; - } + } else + scsi_queue_work(conn->session->host, &conn->xmitwork); return mtask; } @@ -437,7 +440,6 @@ int iscsi_conn_send_pdu(struct iscsi_cls_conn *cls_conn, struct iscsi_hdr *hdr, if (!__iscsi_conn_send_pdu(conn, hdr, data, data_size)) err = -EPERM; spin_unlock_bh(&session->lock); - scsi_queue_work(session->host, &conn->xmitwork); return err; } EXPORT_SYMBOL_GPL(iscsi_conn_send_pdu); @@ -554,12 +556,8 @@ static void iscsi_send_nopout(struct iscsi_conn *conn, struct iscsi_nopin *rhdr) hdr.ttt = RESERVED_ITT; mtask = __iscsi_conn_send_pdu(conn, (struct iscsi_hdr *)&hdr, NULL, 0); - if (!mtask) { + if (!mtask) iscsi_conn_printk(KERN_ERR, conn, "Could not send nopout\n"); - return; - } - - scsi_queue_work(conn->session->host, &conn->xmitwork); } static int iscsi_handle_reject(struct iscsi_conn *conn, struct iscsi_hdr *hdr, @@ -1291,7 +1289,6 @@ static int iscsi_exec_task_mgmt_fn(struct iscsi_conn *conn, spin_unlock_bh(&session->lock); mutex_unlock(&session->eh_mutex); - scsi_queue_work(session->host, &conn->xmitwork); /* * block eh thread until: @@ -1366,7 +1363,8 @@ EXPORT_SYMBOL_GPL(iscsi_suspend_tx); static void iscsi_start_tx(struct iscsi_conn *conn) { clear_bit(ISCSI_SUSPEND_BIT, &conn->suspend_tx); - scsi_queue_work(conn->session->host, &conn->xmitwork); + if (!(session->tt->caps & CAP_DATA_PATH_OFFLOAD)) + scsi_queue_work(conn->session->host, &conn->xmitwork); } static enum scsi_eh_timer_return iscsi_eh_cmd_timed_out(struct scsi_cmnd *scmd)
Re: bnx2i driver branches
On Thu, 2008-01-10 at 15:55 -0600, Mike Christie wrote: > Mike Christie wrote: > > Anil Veerabhadrappa wrote: > >> On Thu, 2008-01-10 at 14:41 -0600, Mike Christie wrote: > >>> Anil Veerabhadrappa wrote: > On Thu, 2008-01-10 at 07:22 -0600, Mike Christie wrote: > > Hey Broadcom guys and iscsi list, > > > > I put up all my changes to the bnx2i driver in the bnx2i branches of > > the > > open-iscsi git tree and linux-2.6-iscsi. > Thanks Mike > > > It hooks bnx2i into the iscsi layers like how iser and iscsi_tcp is, > > except that it allocates a scsi_host per net device instead of per > > session. > > > > The code is only compile tested, and I am sure it is very broken > > because > > lot of code changed: > got following error messages while trying to test this, any idea? > > - log start - > > iscsiadm: Could not read /sys/class/scsi_host/host3/proc_name rc 22. > iscsiadm: Could not read /sys/class/scsi_host/host4/proc_name rc 22. > iscsiadm: Could not read /sys/class/scsi_host/host5/proc_name rc 22. > >>> Come man, time to put on your super hero debugging cap on. When I said I > >>> am sure it is broken I really meant that it is horribly broken :) > >> Reported error was seen during iscsi discovery session, thought it have > >> nothing to do with bnx2i related changes. iSCSI discovery & initial > >> connection setup works fine with the Dec 17, 2007 snapshot of bnx2i > >> branch. > >> > >> > >>> This error normally happens, when something goes completely screwy and > >>> you end up with partially created or partially destroyed kernel sessions > >>> or connections. > >> iSCSI discovery session does not involve any kernel sessions or am I > >> missing something? > >> > > > > Yeah, that is right. I do not know off the top of my head. > > > > Are you sure you have the bnx2i brand in the open-iscsi tree? Yes I had one question regarding following code snippet in scsi_transport_iscsi.c::iscsi_register_transport:1597 if (!(tt->caps & CAP_DATA_PATH_OFFLOAD)) priv->t.create_work_queue = 1; Is this still valid? while testing bnx2i changes I see libiscsi indeed calls scsi_queue_work(). I was going to remove conditional 'if' statement and continue to test bnx2i, but for a second I thought of implications on other existing offload drivers like qla4xxx. any thoughts? > > > --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to open-iscsi@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/open-iscsi -~--~~~~--~~--~--~---
Re: bnx2i driver branches
Mike Christie wrote: > Anil Veerabhadrappa wrote: >> On Thu, 2008-01-10 at 14:41 -0600, Mike Christie wrote: >>> Anil Veerabhadrappa wrote: On Thu, 2008-01-10 at 07:22 -0600, Mike Christie wrote: > Hey Broadcom guys and iscsi list, > > I put up all my changes to the bnx2i driver in the bnx2i branches of the > open-iscsi git tree and linux-2.6-iscsi. Thanks Mike > It hooks bnx2i into the iscsi layers like how iser and iscsi_tcp is, > except that it allocates a scsi_host per net device instead of per > session. > > The code is only compile tested, and I am sure it is very broken because > lot of code changed: got following error messages while trying to test this, any idea? - log start - iscsiadm: Could not read /sys/class/scsi_host/host3/proc_name rc 22. iscsiadm: Could not read /sys/class/scsi_host/host4/proc_name rc 22. iscsiadm: Could not read /sys/class/scsi_host/host5/proc_name rc 22. >>> Come man, time to put on your super hero debugging cap on. When I said I >>> am sure it is broken I really meant that it is horribly broken :) >> Reported error was seen during iscsi discovery session, thought it have >> nothing to do with bnx2i related changes. iSCSI discovery & initial >> connection setup works fine with the Dec 17, 2007 snapshot of bnx2i >> branch. >> >> >>> This error normally happens, when something goes completely screwy and >>> you end up with partially created or partially destroyed kernel sessions >>> or connections. >> iSCSI discovery session does not involve any kernel sessions or am I >> missing something? >> > > Yeah, that is right. I do not know off the top of my head. > Are you sure you have the bnx2i brand in the open-iscsi tree? --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to open-iscsi@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/open-iscsi -~--~~~~--~~--~--~---
Re: bnx2i driver branches
On Thu, 2008-01-10 at 15:15 -0600, Mike Christie wrote: > Mike Christie wrote: > > Hey Broadcom guys and iscsi list, > > > > I put up all my changes to the bnx2i driver in the bnx2i branches of the > > open-iscsi git tree and linux-2.6-iscsi. > > > > It hooks bnx2i into the iscsi layers like how iser and iscsi_tcp is, > > except that it allocates a scsi_host per net device instead of per session. > > > > The code is only compile tested, and I am sure it is very broken because > > lot of code changed: > > > > bnx2i.h | 272 -- > > bnx2i_hwi.c | 930 +++--- > > bnx2i_init.c | 15 > > bnx2i_iscsi.c | 2365 > > +++--- > > 4 files changed, 947 insertions(+), 2635 deletions(-) > > > > There are also lots of TODO items in the code. Grep for TODO and/or mnc > > for review comments mixed into the code, and check out the git commits > > for some more todo items. > > > > One thing I forgot was that in the bnx2i driver I was grabbing the > session spin lock with spin_lock_irqsave, but in libiscsi we use > spin_lock_bh since the software initiators recv path gets run directly > from a softirq or tasklet. > > It looked like bnx2i's bnx2i_hwi.c processing actually got run from the > network layer's softirq instead of a driver's interrupt handler. Is that > right? We need to sync up the driver to use spin_lock_bh or modify the > libiscsi code to use spin_lock_irqsave. In IRQ or MSI mode bnx2 driver is the master for handling interrupts from NetXtreme II device and iscsi completion are propagated through netdev callback. In MSI-X mode cnic driver registers it own handler for all layer-5 (iSCSI) related interrupts > > > > --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to open-iscsi@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/open-iscsi -~--~~~~--~~--~--~---
Re: bnx2i driver branches
Anil Veerabhadrappa wrote: > On Thu, 2008-01-10 at 14:41 -0600, Mike Christie wrote: >> Anil Veerabhadrappa wrote: >>> On Thu, 2008-01-10 at 07:22 -0600, Mike Christie wrote: Hey Broadcom guys and iscsi list, I put up all my changes to the bnx2i driver in the bnx2i branches of the open-iscsi git tree and linux-2.6-iscsi. >>> Thanks Mike >>> It hooks bnx2i into the iscsi layers like how iser and iscsi_tcp is, except that it allocates a scsi_host per net device instead of per session. The code is only compile tested, and I am sure it is very broken because lot of code changed: >>> got following error messages while trying to test this, any idea? >>> >>> - log start - >>> >>> iscsiadm: Could not read /sys/class/scsi_host/host3/proc_name rc 22. >>> iscsiadm: Could not read /sys/class/scsi_host/host4/proc_name rc 22. >>> iscsiadm: Could not read /sys/class/scsi_host/host5/proc_name rc 22. >> Come man, time to put on your super hero debugging cap on. When I said I >> am sure it is broken I really meant that it is horribly broken :) > Reported error was seen during iscsi discovery session, thought it have > nothing to do with bnx2i related changes. iSCSI discovery & initial > connection setup works fine with the Dec 17, 2007 snapshot of bnx2i > branch. > > >> This error normally happens, when something goes completely screwy and >> you end up with partially created or partially destroyed kernel sessions >> or connections. > > iSCSI discovery session does not involve any kernel sessions or am I > missing something? > Yeah, that is right. I do not know off the top of my head. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to open-iscsi@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/open-iscsi -~--~~~~--~~--~--~---
Re: bnx2i driver branches
Mike Christie wrote: > Hey Broadcom guys and iscsi list, > > I put up all my changes to the bnx2i driver in the bnx2i branches of the > open-iscsi git tree and linux-2.6-iscsi. > > It hooks bnx2i into the iscsi layers like how iser and iscsi_tcp is, > except that it allocates a scsi_host per net device instead of per session. > > The code is only compile tested, and I am sure it is very broken because > lot of code changed: > > bnx2i.h | 272 -- > bnx2i_hwi.c | 930 +++--- > bnx2i_init.c | 15 > bnx2i_iscsi.c | 2365 > +++--- > 4 files changed, 947 insertions(+), 2635 deletions(-) > > There are also lots of TODO items in the code. Grep for TODO and/or mnc > for review comments mixed into the code, and check out the git commits > for some more todo items. > One thing I forgot was that in the bnx2i driver I was grabbing the session spin lock with spin_lock_irqsave, but in libiscsi we use spin_lock_bh since the software initiators recv path gets run directly from a softirq or tasklet. It looked like bnx2i's bnx2i_hwi.c processing actually got run from the network layer's softirq instead of a driver's interrupt handler. Is that right? We need to sync up the driver to use spin_lock_bh or modify the libiscsi code to use spin_lock_irqsave. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to open-iscsi@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/open-iscsi -~--~~~~--~~--~--~---
Re: bnx2i driver branches
On Thu, 2008-01-10 at 14:41 -0600, Mike Christie wrote: > Anil Veerabhadrappa wrote: > > On Thu, 2008-01-10 at 07:22 -0600, Mike Christie wrote: > >> Hey Broadcom guys and iscsi list, > >> > >> I put up all my changes to the bnx2i driver in the bnx2i branches of the > >> open-iscsi git tree and linux-2.6-iscsi. > > Thanks Mike > > > >> It hooks bnx2i into the iscsi layers like how iser and iscsi_tcp is, > >> except that it allocates a scsi_host per net device instead of per session. > >> > >> The code is only compile tested, and I am sure it is very broken because > >> lot of code changed: > > got following error messages while trying to test this, any idea? > > > > - log start - > > > > iscsiadm: Could not read /sys/class/scsi_host/host3/proc_name rc 22. > > iscsiadm: Could not read /sys/class/scsi_host/host4/proc_name rc 22. > > iscsiadm: Could not read /sys/class/scsi_host/host5/proc_name rc 22. > > Come man, time to put on your super hero debugging cap on. When I said I > am sure it is broken I really meant that it is horribly broken :) Reported error was seen during iscsi discovery session, thought it have nothing to do with bnx2i related changes. iSCSI discovery & initial connection setup works fine with the Dec 17, 2007 snapshot of bnx2i branch. > > This error normally happens, when something goes completely screwy and > you end up with partially created or partially destroyed kernel sessions > or connections. iSCSI discovery session does not involve any kernel sessions or am I missing something? > > > iscsiadm: Could not read def iface iface0 (err 22) > > iscsiadm: Invalid iface name iface.example. Must be from 1 to 64 characters. > > iscsiadm: Invalid iface name iface1. Must be from 1 to 64 characters. > > iscsiadm: Invalid iface name iface2. Must be from 1 to 64 characters. > > iscsiadm: Could not read def iface iface0 (err 22) > > iscsiadm: Invalid iface name iface.example. Must be from 1 to 64 characters. > > iscsiadm: Invalid iface name iface1. Must be from 1 to 64 characters. > > iscsiadm: Invalid iface name iface2. Must be from 1 to 64 characters. > > iscsiadm: Could not read def iface iface0 (err 22) > > iscsiadm: Invalid iface name iface.example. Must be from 1 to 64 characters. > > iscsiadm: Invalid iface name iface1. Must be from 1 to 64 characters. > > iscsiadm: Invalid iface name iface2. Must be from 1 to 64 characters. > > iscsiadm: Could not read node record for > > iqn.2001-04.com.broadcom:iscsi-target 172.18.48.190 3260 default > > iscsiadm: Could not read node record for > > iqn.2001-04.com.broadcom:ramdisk-target 172.18.48.190 3260 default > > iscsiadm: Could not read node record for > > iqn.2001-04.com.example:storage.disk2.sys1.xyz 172.18.48.190 3260 default > > > > Run iscsiadm with -d 8 to get more debugging. It looks like fopen of > some file in /etc/iscsi/ifaces failed. Might be some issue caused from > bad handling of the first error since the first error's code path only > happens when we hit really nasty kernel errors (typically where we > goofed up in the kernel during development). > > > > --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to open-iscsi@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/open-iscsi -~--~~~~--~~--~--~---
Re: bnx2i driver branches
Anil Veerabhadrappa wrote: > On Thu, 2008-01-10 at 07:22 -0600, Mike Christie wrote: >> Hey Broadcom guys and iscsi list, >> >> I put up all my changes to the bnx2i driver in the bnx2i branches of the >> open-iscsi git tree and linux-2.6-iscsi. > Thanks Mike > >> It hooks bnx2i into the iscsi layers like how iser and iscsi_tcp is, >> except that it allocates a scsi_host per net device instead of per session. >> >> The code is only compile tested, and I am sure it is very broken because >> lot of code changed: > got following error messages while trying to test this, any idea? > > - log start - > > iscsiadm: Could not read /sys/class/scsi_host/host3/proc_name rc 22. > iscsiadm: Could not read /sys/class/scsi_host/host4/proc_name rc 22. > iscsiadm: Could not read /sys/class/scsi_host/host5/proc_name rc 22. Come man, time to put on your super hero debugging cap on. When I said I am sure it is broken I really meant that it is horribly broken :) This error normally happens, when something goes completely screwy and you end up with partially created or partially destroyed kernel sessions or connections. > iscsiadm: Could not read def iface iface0 (err 22) > iscsiadm: Invalid iface name iface.example. Must be from 1 to 64 characters. > iscsiadm: Invalid iface name iface1. Must be from 1 to 64 characters. > iscsiadm: Invalid iface name iface2. Must be from 1 to 64 characters. > iscsiadm: Could not read def iface iface0 (err 22) > iscsiadm: Invalid iface name iface.example. Must be from 1 to 64 characters. > iscsiadm: Invalid iface name iface1. Must be from 1 to 64 characters. > iscsiadm: Invalid iface name iface2. Must be from 1 to 64 characters. > iscsiadm: Could not read def iface iface0 (err 22) > iscsiadm: Invalid iface name iface.example. Must be from 1 to 64 characters. > iscsiadm: Invalid iface name iface1. Must be from 1 to 64 characters. > iscsiadm: Invalid iface name iface2. Must be from 1 to 64 characters. > iscsiadm: Could not read node record for > iqn.2001-04.com.broadcom:iscsi-target 172.18.48.190 3260 default > iscsiadm: Could not read node record for > iqn.2001-04.com.broadcom:ramdisk-target 172.18.48.190 3260 default > iscsiadm: Could not read node record for > iqn.2001-04.com.example:storage.disk2.sys1.xyz 172.18.48.190 3260 default > Run iscsiadm with -d 8 to get more debugging. It looks like fopen of some file in /etc/iscsi/ifaces failed. Might be some issue caused from bad handling of the first error since the first error's code path only happens when we hit really nasty kernel errors (typically where we goofed up in the kernel during development). --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to open-iscsi@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/open-iscsi -~--~~~~--~~--~--~---
Re: bnx2i driver branches
On Thu, 2008-01-10 at 07:22 -0600, Mike Christie wrote: > Hey Broadcom guys and iscsi list, > > I put up all my changes to the bnx2i driver in the bnx2i branches of the > open-iscsi git tree and linux-2.6-iscsi. Thanks Mike > > It hooks bnx2i into the iscsi layers like how iser and iscsi_tcp is, > except that it allocates a scsi_host per net device instead of per session. > > The code is only compile tested, and I am sure it is very broken because > lot of code changed: got following error messages while trying to test this, any idea? - log start - iscsiadm: Could not read /sys/class/scsi_host/host3/proc_name rc 22. iscsiadm: Could not read /sys/class/scsi_host/host4/proc_name rc 22. iscsiadm: Could not read /sys/class/scsi_host/host5/proc_name rc 22. iscsiadm: Could not read def iface iface0 (err 22) iscsiadm: Invalid iface name iface.example. Must be from 1 to 64 characters. iscsiadm: Invalid iface name iface1. Must be from 1 to 64 characters. iscsiadm: Invalid iface name iface2. Must be from 1 to 64 characters. iscsiadm: Could not read def iface iface0 (err 22) iscsiadm: Invalid iface name iface.example. Must be from 1 to 64 characters. iscsiadm: Invalid iface name iface1. Must be from 1 to 64 characters. iscsiadm: Invalid iface name iface2. Must be from 1 to 64 characters. iscsiadm: Could not read def iface iface0 (err 22) iscsiadm: Invalid iface name iface.example. Must be from 1 to 64 characters. iscsiadm: Invalid iface name iface1. Must be from 1 to 64 characters. iscsiadm: Invalid iface name iface2. Must be from 1 to 64 characters. iscsiadm: Could not read node record for iqn.2001-04.com.broadcom:iscsi-target 172.18.48.190 3260 default iscsiadm: Could not read node record for iqn.2001-04.com.broadcom:ramdisk-target 172.18.48.190 3260 default iscsiadm: Could not read node record for iqn.2001-04.com.example:storage.disk2.sys1.xyz 172.18.48.190 3260 default > > bnx2i.h | 272 -- > bnx2i_hwi.c | 930 +++--- > bnx2i_init.c | 15 > bnx2i_iscsi.c | 2365 > +++--- > 4 files changed, 947 insertions(+), 2635 deletions(-) > > There are also lots of TODO items in the code. Grep for TODO and/or mnc > for review comments mixed into the code, and check out the git commits > for some more todo items. > > I did most of this work over my christmas break, and right now I am busy > trying to finish up some red hat items so I do not want it to sit around > on my box for just me to admire :) After my red hat work is done I can > help out more, but you guys (and some people asked about helping > offlist) should be able to get most of it done. > --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to open-iscsi@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/open-iscsi -~--~~~~--~~--~--~---
Re: bnx2i driver branches
Mike Christie wrote: > Hey Broadcom guys and iscsi list, > > I put up all my changes to the bnx2i driver in the bnx2i branches of the > open-iscsi git tree and linux-2.6-iscsi. > > It hooks bnx2i into the iscsi layers like how iser and iscsi_tcp is, > except that it allocates a scsi_host per net device instead of per session. > > The code is only compile tested, and I am sure it is very broken because > lot of code changed: > > bnx2i.h | 272 -- > bnx2i_hwi.c | 930 +++--- > bnx2i_init.c | 15 > bnx2i_iscsi.c | 2365 > +++--- > 4 files changed, 947 insertions(+), 2635 deletions(-) > > There are also lots of TODO items in the code. Grep for TODO and/or mnc > for review comments mixed into the code, and check out the git commits > for some more todo items. > Oh yeah if you see todo items in the libiscsi code, do not worry about it. I want to do some things like merge the mtask and ctask structs and their xmit and init paths and then merge that with the send pdu callout, so there is just one transfer path and one task struct, but I have been wanting to do that for a long time and that cleanup does not have anything to do with bnx2i's inclusion - it would just make the drivers nicer. Just stick the bxn2i items. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to open-iscsi@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/open-iscsi -~--~~~~--~~--~--~---
bnx2i driver branches
Hey Broadcom guys and iscsi list, I put up all my changes to the bnx2i driver in the bnx2i branches of the open-iscsi git tree and linux-2.6-iscsi. It hooks bnx2i into the iscsi layers like how iser and iscsi_tcp is, except that it allocates a scsi_host per net device instead of per session. The code is only compile tested, and I am sure it is very broken because lot of code changed: bnx2i.h | 272 -- bnx2i_hwi.c | 930 +++--- bnx2i_init.c | 15 bnx2i_iscsi.c | 2365 +++--- 4 files changed, 947 insertions(+), 2635 deletions(-) There are also lots of TODO items in the code. Grep for TODO and/or mnc for review comments mixed into the code, and check out the git commits for some more todo items. I did most of this work over my christmas break, and right now I am busy trying to finish up some red hat items so I do not want it to sit around on my box for just me to admire :) After my red hat work is done I can help out more, but you guys (and some people asked about helping offlist) should be able to get most of it done. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to open-iscsi@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/open-iscsi -~--~~~~--~~--~--~---