* [RFC] qla4xxx: TODO for re-submission
@ 2006-06-11 1:16 Doug Maxey
2006-06-12 16:49 ` Ravi Anand
` (2 more replies)
0 siblings, 3 replies; 25+ messages in thread
From: Doug Maxey @ 2006-06-11 1:16 UTC (permalink / raw)
To: Mike Christie, Ravi Anand, David Somayajulu, Duane Grigsby
Cc: linux-scsi, dwm
Subject: [RFC] qla4xxx: TODO for re-submission
Howdy!
The qla4xxx driver for the QLogic ISP4XXX chipset will be getting a
little janitorial love along the lines of:
A) a rework of the 2006-06-06 Qlogic submitted qla4xxx code to get the
driver to be in line with the kernel coding style.
B) being made more compliant with the scsi_mid_low_api.txt. Being
compiled for M$ does not count as an alternative OS. :) In
particular, move all the code to single .c file. If and when
another chipset comes along that can utilize some of the bits, look
into splitting it back up.
C) removal of unreachable or unused code.
D) a rework of the function layout and size, including linewidth adjustments
E) fixups to printk formatting, and moving to dev_printk(). For the
first pass, just remove the debug printk()'s
This will not be a re-write of the driver per se, just a refactoring
going on in parallel to the work of the QLogic folks and mike, in an
effort to get this driver into mainline.
The plan is to:
1) submit the Documentation/LICENSE.qla4xxx.txt file and check
the provenance with the original submitters..
2) pull all the data structs into the file, swizzle the types to be
kernel compliant.
3) pull the core driver initialization (module_init(), pci init et al)
into the file drivers/scsi/qla4xxx.c
4) add the iscsi transport code.
5) add the block layer code.
6) add the device firmware access.
7) add the hooks for the Kconfig and Makefile
Does this appear to be a workable plan? Should the struct cleanup
wait and come in on an as needed basis?
All comments will be appreciated.
++doug
^ permalink raw reply [flat|nested] 25+ messages in thread* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-11 1:16 [RFC] qla4xxx: TODO for re-submission Doug Maxey @ 2006-06-12 16:49 ` Ravi Anand 2006-06-12 16:52 ` Mike Christie 2006-06-12 19:01 ` Doug Maxey 2006-06-12 17:43 ` Mike Christie 2006-06-12 18:05 ` Mike Christie 2 siblings, 2 replies; 25+ messages in thread From: Ravi Anand @ 2006-06-12 16:49 UTC (permalink / raw) To: Doug Maxey Cc: Mike Christie, David Somayajulu, Duane Grigsby, linux-scsi, dwm >On Sat, 10 Jun 2006, Doug Maxey wrote: > > Subject: [RFC] qla4xxx: TODO for re-submission > > Howdy! > > The qla4xxx driver for the QLogic ISP4XXX chipset will be getting a > little janitorial love along the lines of: > > A) a rework of the 2006-06-06 Qlogic submitted qla4xxx code to get the > driver to be in line with the kernel coding style. Agreed. There are some cleanup's that still need to be done. If you have the patch please forward it over. > B) being made more compliant with the scsi_mid_low_api.txt. OK. Whats the missing piece ? > Being compiled for M$ does not count as an alternative OS. :) In > particular, move all the code to single .c file. If and when > another chipset comes along that can utilize some of the bits, look > into splitting it back up. Layout of the file is pretty intutive and we would like to it pretty much inline like the qla2xxx FC driver. Anyway this is very low down the priroity. Getting the other items done which you have outlined below is more important. > C) removal of unreachable or unused code. Agreed. > D) a rework of the function layout and size, including linewidth adjustments Patch would help to understand. > E) fixups to printk formatting, and moving to dev_printk(). For the > first pass, just remove the debug printk()'s Agreed. > > This will not be a re-write of the driver per se, just a refactoring > going on in parallel to the work of the QLogic folks and mike, in an > effort to get this driver into mainline. > > The plan is to: > 1) submit the Documentation/LICENSE.qla4xxx.txt file and check > the provenance with the original submitters.. We already submitted it. Will be updating it most probably. > 2) pull all the data structs into the file, swizzle the types to be > kernel compliant. OK. > 3) pull the core driver initialization (module_init(), pci init et al) > into the file drivers/scsi/qla4xxx.c Same as outlined in B. > 4) add the iscsi transport code. > 5) add the block layer code. In my mind item 4 & 5 are the important one's that we need to accomplish. Mike I believe has done some of the modifications in the latest patch set which he send out recently on open-iscsi reflector. > 6) add the device firmware access. Not sure about this. > 7) add the hooks for the Kconfig and Makefile > In one of the later patches we did update the top level Makefile and Kconfig. > Does this appear to be a workable plan? Should the struct cleanup > wait and come in on an as needed basis? Yes, it is. Prioritising the work is important. Broadly speaking item 4 & 5 are the imporantant ones as well cleaning up the code to be more compliant with the linux style. Apart from what David Somayajulu is working on, there are other stuff which we need to do on the driver side. Important piece is the sysfs stuff which I am working on. If you can takeup the item 4 & 5 that would be great. Cleanup part let me know what part want to do and I can do the rest. > > All comments will be appreciated. > Thanx for putting it together. Ravi ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-12 16:49 ` Ravi Anand @ 2006-06-12 16:52 ` Mike Christie 2006-06-12 16:57 ` Ravi Anand 2006-06-12 19:08 ` Doug Maxey 2006-06-12 19:01 ` Doug Maxey 1 sibling, 2 replies; 25+ messages in thread From: Mike Christie @ 2006-06-12 16:52 UTC (permalink / raw) To: Ravi Anand; +Cc: Doug Maxey, David Somayajulu, Duane Grigsby, linux-scsi, dwm Ravi Anand wrote: >> 4) add the iscsi transport code. >> 5) add the block layer code. > > In my mind item 4 & 5 are the important one's that we need to accomplish. > Mike I believe has done some of the modifications in the latest patch > set which he send out recently on open-iscsi reflector. Doug, could you post a link to the git tree for Ravi and them if it is ready so we can all sync up our patches? ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-12 16:52 ` Mike Christie @ 2006-06-12 16:57 ` Ravi Anand 2006-06-12 19:08 ` Doug Maxey 1 sibling, 0 replies; 25+ messages in thread From: Ravi Anand @ 2006-06-12 16:57 UTC (permalink / raw) To: Mike Christie Cc: Doug Maxey, David Somayajulu, Duane Grigsby, linux-scsi, dwm >On Mon, 12 Jun 2006, Mike Christie wrote: > Ravi Anand wrote: > >> 4) add the iscsi transport code. > >> 5) add the block layer code. > > > > In my mind item 4 & 5 are the important one's that we need to accomplish. > > Mike I believe has done some of the modifications in the latest patch > > set which he send out recently on open-iscsi reflector. > > Doug, could you post a link to the git tree for Ravi and them if it is > ready so we can all sync up our patches? That would be great. Internally we are also rolling those patches. Just want to make sure that we are in sync. Thanx Ravi ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-12 16:52 ` Mike Christie 2006-06-12 16:57 ` Ravi Anand @ 2006-06-12 19:08 ` Doug Maxey 1 sibling, 0 replies; 25+ messages in thread From: Doug Maxey @ 2006-06-12 19:08 UTC (permalink / raw) To: Mike Christie; +Cc: Ravi Anand, David Somayajulu, Duane Grigsby, linux-scsi On Mon, 12 Jun 2006 11:52:16 CDT, Mike Christie wrote: > Ravi Anand wrote: > >> 4) add the iscsi transport code. > >> 5) add the block layer code. > > > > In my mind item 4 & 5 are the important one's that we need to accomplish. > > Mike I believe has done some of the modifications in the latest patch > > set which he send out recently on open-iscsi reflector. > > Doug, could you post a link to the git tree for Ravi and them if it is > ready so we can all sync up our patches? > Oh yes, no problem. Just nothing has been checked in yet. Am about 50% of the way through the cleanup. Once I get a clean compile out of this, will post the tree. ++doug ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-12 16:49 ` Ravi Anand 2006-06-12 16:52 ` Mike Christie @ 2006-06-12 19:01 ` Doug Maxey 1 sibling, 0 replies; 25+ messages in thread From: Doug Maxey @ 2006-06-12 19:01 UTC (permalink / raw) To: Ravi Anand; +Cc: Mike Christie, David Somayajulu, Duane Grigsby, linux-scsi On Mon, 12 Jun 2006 09:49:34 PDT, Ravi Anand wrote: > >On Sat, 10 Jun 2006, Doug Maxey wrote: > > > > Subject: [RFC] qla4xxx: TODO for re-submission > > > > Howdy! > > > > The qla4xxx driver for the QLogic ISP4XXX chipset will be getting a > > little janitorial love along the lines of: > > > > A) a rework of the 2006-06-06 Qlogic submitted qla4xxx code to get the > > driver to be in line with the kernel coding style. > > Agreed. There are some cleanup's that still need to be done. > If you have the patch please forward it over. > > > B) being made more compliant with the scsi_mid_low_api.txt. > > OK. Whats the missing piece ? Right now, the original driver is in functional separate pieces, which is good from a development team standpoint. One of the requests (directives?) from smla is to have the driver in one file. Dunno, really not that big deal to me, but with function re-order, we could shrink the line count by roughly 30%, from my current estimate. Once that is done, the patch submissions could flow from functionally standalone pieces that compile, but may not actually do anything. The subsequent patches would add the layers of current functionality (and the newer transport stuff) in layers, and be in small enough pieces to allow easy review. Making the driver patches suitable for easy review is really my goal... > > > Being compiled for M$ does not count as an alternative OS. :) In > > particular, move all the code to single .c file. If and when > > another chipset comes along that can utilize some of the bits, look > > into splitting it back up. > > Layout of the file is pretty intutive and we would like to it > pretty much inline like the qla2xxx FC driver. > Anyway this is very low down the priroity. Getting the other > items done which you have outlined below is more important. maybe on your list. :) Mike may have Christoph's and James' ears, but the earlier offline comments lead me to believe otherwise, at least style-wise. Of course, Mike is the QB on this, so anxiously awaiting his comments. > > > C) removal of unreachable or unused code. > Agreed. > > > D) a rework of the function layout and size, including linewidth adjustments > > Patch would help to understand. Yeah, let me wade through this once first. > > > E) fixups to printk formatting, and moving to dev_printk(). For the > > first pass, just remove the debug printk()'s > > Agreed. wilco. > > > > This will not be a re-write of the driver per se, just a refactoring > > going on in parallel to the work of the QLogic folks and mike, in an > > effort to get this driver into mainline. > > > > The plan is to: > > 1) submit the Documentation/LICENSE.qla4xxx.txt file and check > > the provenance with the original submitters.. > > We already submitted it. Will be updating it most probably. Yes, but see my response for B). :-> > > > 2) pull all the data structs into the file, swizzle the types to be > > kernel compliant. > OK. > > > 3) pull the core driver initialization (module_init(), pci init et al) > > into the file drivers/scsi/qla4xxx.c > Same as outlined in B. > > > 4) add the iscsi transport code. > > 5) add the block layer code. > > In my mind item 4 & 5 are the important one's that we need to accomplish. > Mike I believe has done some of the modifications in the latest patch > set which he send out recently on open-iscsi reflector. > > 6) add the device firmware access. > > Not sure about this. simply an ordering of patches. Maybe that should go in as step 2. > > > 7) add the hooks for the Kconfig and Makefile > > > In one of the later patches we did update the top level Makefile and Kconfig. Am thinking this would be the last of the series, no need to build if it does not get accepted. > > > Does this appear to be a workable plan? Should the struct cleanup > > wait and come in on an as needed basis? > > Yes, it is. Prioritising the work is important. Broadly speaking item 4 & 5 are the imporantant > ones as well cleaning up the code to be more compliant with the linux style. > > Apart from what David Somayajulu is working on, there are other stuff which we need to do > on the driver side. Important piece is the sysfs stuff which I am working on. > > If you can takeup the item 4 & 5 that would be great. Cleanup part let me know what part > want to do and I can do the rest. > > > > > All comments will be appreciated. > > > > Thanx for putting it together. > > Ravi > ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-11 1:16 [RFC] qla4xxx: TODO for re-submission Doug Maxey 2006-06-12 16:49 ` Ravi Anand @ 2006-06-12 17:43 ` Mike Christie 2006-06-12 17:44 ` Mike Christie 2006-06-12 19:04 ` Doug Maxey 2006-06-12 18:05 ` Mike Christie 2 siblings, 2 replies; 25+ messages in thread From: Mike Christie @ 2006-06-12 17:43 UTC (permalink / raw) To: Doug Maxey; +Cc: Ravi Anand, David Somayajulu, Duane Grigsby, linux-scsi, dwm Doug Maxey wrote: > Subject: [RFC] qla4xxx: TODO for re-submission > > Howdy! > > The qla4xxx driver for the QLogic ISP4XXX chipset will be getting a > little janitorial love along the lines of: > > A) a rework of the 2006-06-06 Qlogic submitted qla4xxx code to get the > driver to be in line with the kernel coding style. > B) being made more compliant with the scsi_mid_low_api.txt. Being > compiled for M$ does not count as an alternative OS. :) In > particular, move all the code to single .c file. If and when > another chipset comes along that can utilize some of the bits, look > into splitting it back up. > C) removal of unreachable or unused code. > D) a rework of the function layout and size, including linewidth adjustments > E) fixups to printk formatting, and moving to dev_printk(). For the > first pass, just remove the debug printk()'s > > This will not be a re-write of the driver per se, just a refactoring > going on in parallel to the work of the QLogic folks and mike, in an > effort to get this driver into mainline. > > The plan is to: > 1) submit the Documentation/LICENSE.qla4xxx.txt file and check > the provenance with the original submitters.. > 2) pull all the data structs into the file, swizzle the types to be > kernel compliant. > 3) pull the core driver initialization (module_init(), pci init et al) > into the file drivers/scsi/qla4xxx.c > 4) add the iscsi transport code. > 5) add the block layer code. > 6) add the device firmware access. > 7) add the hooks for the Kconfig and Makefile > > Does this appear to be a workable plan? Should the struct cleanup > wait and come in on an as needed basis? > I think I am fine with what I have already said needs to be done + all the cleanup issues where the coding style got mixed up during driver writer transitions. I don't think putting everything in one file is very nice. There will be code that will want the seperation that is being worked on right now like the target code. What is the struct cleanup though? typedef->just struct usage? ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-12 17:43 ` Mike Christie @ 2006-06-12 17:44 ` Mike Christie 2006-06-12 19:04 ` Doug Maxey 1 sibling, 0 replies; 25+ messages in thread From: Mike Christie @ 2006-06-12 17:44 UTC (permalink / raw) To: Doug Maxey; +Cc: Ravi Anand, David Somayajulu, Duane Grigsby, linux-scsi, dwm Mike Christie wrote: > Doug Maxey wrote: >> Subject: [RFC] qla4xxx: TODO for re-submission >> >> Howdy! >> >> The qla4xxx driver for the QLogic ISP4XXX chipset will be getting a >> little janitorial love along the lines of: >> >> A) a rework of the 2006-06-06 Qlogic submitted qla4xxx code to get the >> driver to be in line with the kernel coding style. >> B) being made more compliant with the scsi_mid_low_api.txt. Being >> compiled for M$ does not count as an alternative OS. :) In >> particular, move all the code to single .c file. If and when >> another chipset comes along that can utilize some of the bits, look >> into splitting it back up. >> C) removal of unreachable or unused code. >> D) a rework of the function layout and size, including linewidth adjustments >> E) fixups to printk formatting, and moving to dev_printk(). For the >> first pass, just remove the debug printk()'s >> >> This will not be a re-write of the driver per se, just a refactoring >> going on in parallel to the work of the QLogic folks and mike, in an >> effort to get this driver into mainline. >> >> The plan is to: >> 1) submit the Documentation/LICENSE.qla4xxx.txt file and check >> the provenance with the original submitters.. >> 2) pull all the data structs into the file, swizzle the types to be >> kernel compliant. >> 3) pull the core driver initialization (module_init(), pci init et al) >> into the file drivers/scsi/qla4xxx.c >> 4) add the iscsi transport code. >> 5) add the block layer code. >> 6) add the device firmware access. >> 7) add the hooks for the Kconfig and Makefile >> >> Does this appear to be a workable plan? Should the struct cleanup >> wait and come in on an as needed basis? >> > > I think I am fine with what I have already said needs to be done + all > the cleanup issues where the coding style got mixed up during driver > writer transitions. The removing of the dead/unused code should of course be done too. ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-12 17:43 ` Mike Christie 2006-06-12 17:44 ` Mike Christie @ 2006-06-12 19:04 ` Doug Maxey 2006-06-12 20:05 ` Mike Christie 1 sibling, 1 reply; 25+ messages in thread From: Doug Maxey @ 2006-06-12 19:04 UTC (permalink / raw) To: Mike Christie; +Cc: Ravi Anand, David Somayajulu, Duane Grigsby, linux-scsi On Mon, 12 Jun 2006 12:43:09 CDT, Mike Christie wrote: > Doug Maxey wrote: > > Subject: [RFC] qla4xxx: TODO for re-submission > > > > Howdy! > > > > The qla4xxx driver for the QLogic ISP4XXX chipset will be getting a > > little janitorial love along the lines of: > > > > A) a rework of the 2006-06-06 Qlogic submitted qla4xxx code to get the > > driver to be in line with the kernel coding style. > > B) being made more compliant with the scsi_mid_low_api.txt. Being > > compiled for M$ does not count as an alternative OS. :) In > > particular, move all the code to single .c file. If and when > > another chipset comes along that can utilize some of the bits, look > > into splitting it back up. > > C) removal of unreachable or unused code. > > D) a rework of the function layout and size, including linewidth adjustments > > E) fixups to printk formatting, and moving to dev_printk(). For the > > first pass, just remove the debug printk()'s > > > > This will not be a re-write of the driver per se, just a refactoring > > going on in parallel to the work of the QLogic folks and mike, in an > > effort to get this driver into mainline. > > > > The plan is to: > > 1) submit the Documentation/LICENSE.qla4xxx.txt file and check > > the provenance with the original submitters.. > > 2) pull all the data structs into the file, swizzle the types to be > > kernel compliant. > > 3) pull the core driver initialization (module_init(), pci init et al) > > into the file drivers/scsi/qla4xxx.c > > 4) add the iscsi transport code. > > 5) add the block layer code. > > 6) add the device firmware access. > > 7) add the hooks for the Kconfig and Makefile > > > > Does this appear to be a workable plan? Should the struct cleanup > > wait and come in on an as needed basis? > > > > I think I am fine with what I have already said needs to be done + all > the cleanup issues where the coding style got mixed up during driver > writer transitions. > > I don't think putting everything in one file is very nice. There will be > code that will want the seperation that is being worked on right now > like the target code. Ah, ok. We can do it that way. > > What is the struct cleanup though? typedef->just struct usage? > mainly, yes. do we need to track the sparse types (__le*) for device data? ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-12 19:04 ` Doug Maxey @ 2006-06-12 20:05 ` Mike Christie 0 siblings, 0 replies; 25+ messages in thread From: Mike Christie @ 2006-06-12 20:05 UTC (permalink / raw) To: Doug Maxey; +Cc: Ravi Anand, David Somayajulu, Duane Grigsby, linux-scsi Doug Maxey wrote: >> What is the struct cleanup though? typedef->just struct usage? >> > > mainly, yes. Ok. I am fine if you want to do that. For iscsi_tcp and friends we fixed this, but nobody ever said anything about the typedef usage during the initial qla4xxx postings so I thought we had been overly careful/picky. For scsi I never saw anyone complain about the single file issue either. However for the netdev review it looks like the qlogic net driver got that comment and the typedef one. What about the mixed case variable names and other junk? Some people get a way with them and others don't. For scsi is the policy to not be that picky or did some drivers sneak in? > do we need to track the sparse types (__le*) for device > data? > Yeah I think so. I do not think you were CCd on the coding style todo. Qlogic and I sometimes drop you form CCs and forget to add you back on later. Sorry about that. ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-11 1:16 [RFC] qla4xxx: TODO for re-submission Doug Maxey 2006-06-12 16:49 ` Ravi Anand 2006-06-12 17:43 ` Mike Christie @ 2006-06-12 18:05 ` Mike Christie 2006-06-12 21:10 ` Ravi Anand 2 siblings, 1 reply; 25+ messages in thread From: Mike Christie @ 2006-06-12 18:05 UTC (permalink / raw) To: Doug Maxey; +Cc: Ravi Anand, David Somayajulu, Duane Grigsby, linux-scsi, dwm Doug Maxey wrote: > 5) add the block layer code. Some related issues that we have discussed offlist about this and should probably be discussed here are: - Are we supposed to follow FC's lead and remove the devices (rport, session, target, scsi_device, etc) if the dev_loss_tmo fires. Currently for software iscsi, we leave the devices/session. This was to reduce memory allocations and because software iscsi has to basically poll the connection during connect as part of the relogin process. So unlike FC or hw iscsi, if we remove the devices/structs we have to end up rebuilding some of them right away anyways. Removing the devices has the benefit of simplifying the scsi/iscsi code. - Scanning. We currently do scanning for open-iscsi in userspace. For iscsi root this requires distro support. SUSE has it. Fedora is working on it. There is also Debian and Gentoo users or maintainers posting about working on it. For qla4xxx, we could stick the scanning in the kernel like FC and distros would not have to worry about it, but since they have to get this working for software iscsi do we just keep the scanning in userspace? ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-12 18:05 ` Mike Christie @ 2006-06-12 21:10 ` Ravi Anand 2006-06-12 21:35 ` Mike Christie 0 siblings, 1 reply; 25+ messages in thread From: Ravi Anand @ 2006-06-12 21:10 UTC (permalink / raw) To: Mike Christie Cc: Doug Maxey, David Somayajulu, Duane Grigsby, linux-scsi, dwm >On Mon, 12 Jun 2006, Mike Christie wrote: > Doug Maxey wrote: > > 5) add the block layer code. > > Some related issues that we have discussed offlist about this and should > probably be discussed here are: > > - Are we supposed to follow FC's lead and remove the devices (rport, > session, target, scsi_device, etc) if the dev_loss_tmo fires. Currently > for software iscsi, we leave the devices/session. This was to reduce > memory allocations and because software iscsi has to basically poll the > connection during connect as part of the relogin process. So unlike FC > or hw iscsi, if we remove the devices/structs we have to end up > rebuilding some of them right away anyways. > > Removing the devices has the benefit of simplifying the scsi/iscsi code. > > - Scanning. We currently do scanning for open-iscsi in userspace. For > iscsi root this requires distro support. SUSE has it. Fedora is working > on it. There is also Debian and Gentoo users or maintainers posting > about working on it. For qla4xxx, we could stick the scanning in the > kernel like FC and distros would not have to worry about it, but since > they have to get this working for software iscsi do we just keep the > scanning in userspace? Our preference is also to have the scanning for all the HBA's which does the discovery of the tgt's in the kernel space. This way we are consistent with all the HBA's which does the port discovery like the FC HBA's. Our iSCSI HBA's is similar in that regard. As you have already stated, it simplies support from distro perspective as well. Ravi ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-12 21:10 ` Ravi Anand @ 2006-06-12 21:35 ` Mike Christie 2006-06-12 22:35 ` Mike Christie 2006-06-12 22:43 ` Ravi Anand 0 siblings, 2 replies; 25+ messages in thread From: Mike Christie @ 2006-06-12 21:35 UTC (permalink / raw) To: Ravi Anand; +Cc: Doug Maxey, David Somayajulu, Duane Grigsby, linux-scsi, dwm Ravi Anand wrote: >> On Mon, 12 Jun 2006, Mike Christie wrote: >> Doug Maxey wrote: >>> 5) add the block layer code. >> Some related issues that we have discussed offlist about this and should >> probably be discussed here are: >> >> - Are we supposed to follow FC's lead and remove the devices (rport, >> session, target, scsi_device, etc) if the dev_loss_tmo fires. Currently >> for software iscsi, we leave the devices/session. This was to reduce >> memory allocations and because software iscsi has to basically poll the >> connection during connect as part of the relogin process. So unlike FC >> or hw iscsi, if we remove the devices/structs we have to end up >> rebuilding some of them right away anyways. >> >> Removing the devices has the benefit of simplifying the scsi/iscsi code. >> >> - Scanning. We currently do scanning for open-iscsi in userspace. For >> iscsi root this requires distro support. SUSE has it. Fedora is working >> on it. There is also Debian and Gentoo users or maintainers posting >> about working on it. For qla4xxx, we could stick the scanning in the >> kernel like FC and distros would not have to worry about it, but since >> they have to get this working for software iscsi do we just keep the >> scanning in userspace? > > Our preference is also to have the scanning for all the HBA's which > does the discovery of the tgt's in the kernel space. This way we are > consistent with all the HBA's which does the port discovery like > the FC HBA's. Our iSCSI HBA's is similar in that regard. Yeah, but your HBA can also function in connection mode and just use open-iscsi's login code too. I am not saying that is that way to go. I am just saying that there are alternatives. > > As you have already stated, it simplies support from distro perspective > as well. > It does for qla4xxx, but I think you then have to go and fix it so iscsi_tcp and iscsi_iser sync up with userspace correctly if you convert them. Either that or we maintain two ways of scanning for iscsi drivers. For iscsi_tcp/iser we have some sync code to avoid the async scanning root disk problem, but that code is in userspace. ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-12 21:35 ` Mike Christie @ 2006-06-12 22:35 ` Mike Christie 2006-06-12 22:50 ` Ravi Anand 2006-06-12 22:43 ` Ravi Anand 1 sibling, 1 reply; 25+ messages in thread From: Mike Christie @ 2006-06-12 22:35 UTC (permalink / raw) To: Ravi Anand; +Cc: Doug Maxey, David Somayajulu, Duane Grigsby, linux-scsi, dwm Mike Christie wrote: > Ravi Anand wrote: >>> On Mon, 12 Jun 2006, Mike Christie wrote: >>> Doug Maxey wrote: >>>> 5) add the block layer code. >>> Some related issues that we have discussed offlist about this and should >>> probably be discussed here are: >>> >>> - Are we supposed to follow FC's lead and remove the devices (rport, >>> session, target, scsi_device, etc) if the dev_loss_tmo fires. Currently >>> for software iscsi, we leave the devices/session. This was to reduce >>> memory allocations and because software iscsi has to basically poll the >>> connection during connect as part of the relogin process. So unlike FC >>> or hw iscsi, if we remove the devices/structs we have to end up >>> rebuilding some of them right away anyways. >>> >>> Removing the devices has the benefit of simplifying the scsi/iscsi code. >>> >>> - Scanning. We currently do scanning for open-iscsi in userspace. For >>> iscsi root this requires distro support. SUSE has it. Fedora is working >>> on it. There is also Debian and Gentoo users or maintainers posting >>> about working on it. For qla4xxx, we could stick the scanning in the >>> kernel like FC and distros would not have to worry about it, but since >>> they have to get this working for software iscsi do we just keep the >>> scanning in userspace? >> Our preference is also to have the scanning for all the HBA's which >> does the discovery of the tgt's in the kernel space. This way we are >> consistent with all the HBA's which does the port discovery like >> the FC HBA's. Our iSCSI HBA's is similar in that regard. > > Yeah, but your HBA can also function in connection mode and just use > open-iscsi's login code too. I am not saying that is that way to go. I > am just saying that there are alternatives. > >> As you have already stated, it simplies support from distro perspective >> as well. >> > > It does for qla4xxx, but I think you then have to go and fix it so > iscsi_tcp and iscsi_iser sync up with userspace correctly if you convert > them. Either that or we maintain two ways of scanning for iscsi drivers. > For iscsi_tcp/iser we have some sync code to avoid the async scanning > root disk problem, but that code is in userspace. Oh yeah for install, do all your cards have the ability to be able to set values like a discovery address from a bios or open firmware screen? Is this ability on the card when you first get it or do you have to download it or do you just have to download it for older cards? ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-12 22:35 ` Mike Christie @ 2006-06-12 22:50 ` Ravi Anand 0 siblings, 0 replies; 25+ messages in thread From: Ravi Anand @ 2006-06-12 22:50 UTC (permalink / raw) To: Mike Christie Cc: Doug Maxey, David Somayajulu, Duane Grigsby, linux-scsi, dwm >On Mon, 12 Jun 2006, Mike Christie wrote: > Mike Christie wrote: > > Ravi Anand wrote: > >>> On Mon, 12 Jun 2006, Mike Christie wrote: > >>> Doug Maxey wrote: > >>>> 5) add the block layer code. > >>> Some related issues that we have discussed offlist about this and should > >>> probably be discussed here are: > >>> > >>> - Are we supposed to follow FC's lead and remove the devices (rport, > >>> session, target, scsi_device, etc) if the dev_loss_tmo fires. Currently > >>> for software iscsi, we leave the devices/session. This was to reduce > >>> memory allocations and because software iscsi has to basically poll the > >>> connection during connect as part of the relogin process. So unlike FC > >>> or hw iscsi, if we remove the devices/structs we have to end up > >>> rebuilding some of them right away anyways. > >>> > >>> Removing the devices has the benefit of simplifying the scsi/iscsi code. > >>> > >>> - Scanning. We currently do scanning for open-iscsi in userspace. For > >>> iscsi root this requires distro support. SUSE has it. Fedora is working > >>> on it. There is also Debian and Gentoo users or maintainers posting > >>> about working on it. For qla4xxx, we could stick the scanning in the > >>> kernel like FC and distros would not have to worry about it, but since > >>> they have to get this working for software iscsi do we just keep the > >>> scanning in userspace? > >> Our preference is also to have the scanning for all the HBA's which > >> does the discovery of the tgt's in the kernel space. This way we are > >> consistent with all the HBA's which does the port discovery like > >> the FC HBA's. Our iSCSI HBA's is similar in that regard. > > > > Yeah, but your HBA can also function in connection mode and just use > > open-iscsi's login code too. I am not saying that is that way to go. I > > am just saying that there are alternatives. > > > >> As you have already stated, it simplies support from distro perspective > >> as well. > >> > > > > It does for qla4xxx, but I think you then have to go and fix it so > > iscsi_tcp and iscsi_iser sync up with userspace correctly if you convert > > them. Either that or we maintain two ways of scanning for iscsi drivers. > > For iscsi_tcp/iser we have some sync code to avoid the async scanning > > root disk problem, but that code is in userspace. > > > Oh yeah for install, do all your cards have the ability to be able to > set values like a discovery address from a bios or open firmware screen? Yes. On x86 system you have to use Ctrl+Q to enter the HBA bios and you can set it from there. > Is this ability on the card when you first get it or do you have to > download it or do you just have to download it for older cards? Thats correct. Its built in when you first get it. In case its not there, you can download the flashuitl to update it or better just use SANSufer for iSCSI HBA's to udpate it. Ravi ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-12 21:35 ` Mike Christie 2006-06-12 22:35 ` Mike Christie @ 2006-06-12 22:43 ` Ravi Anand 2006-06-13 3:30 ` Mike Christie 1 sibling, 1 reply; 25+ messages in thread From: Ravi Anand @ 2006-06-12 22:43 UTC (permalink / raw) To: Mike Christie Cc: Doug Maxey, David Somayajulu, Duane Grigsby, linux-scsi, dwm >On Mon, 12 Jun 2006, Mike Christie wrote: > Date: Mon, 12 Jun 2006 16:35:45 -0500 > From: Mike Christie <michaelc@cs.wisc.edu> > To: Ravi Anand <ravi.anand@qlogic.com> > CC: Doug Maxey <dwm@bebe.enoyolf.org>, > David Somayajulu <davidcs2005@gmail.com>, > Duane Grigsby <duane.grigsby@qlogic.com>, > linux-scsi@vger.kernel.org, dwm@austin.ibm.com > Subject: Re: [RFC] qla4xxx: TODO for re-submission > User-Agent: Thunderbird 1.5 (X11/20060313) > > Ravi Anand wrote: > >> On Mon, 12 Jun 2006, Mike Christie wrote: > >> Doug Maxey wrote: > >>> 5) add the block layer code. > >> Some related issues that we have discussed offlist about this and should > >> probably be discussed here are: > >> > >> - Are we supposed to follow FC's lead and remove the devices (rport, > >> session, target, scsi_device, etc) if the dev_loss_tmo fires. Currently > >> for software iscsi, we leave the devices/session. This was to reduce > >> memory allocations and because software iscsi has to basically poll the > >> connection during connect as part of the relogin process. So unlike FC > >> or hw iscsi, if we remove the devices/structs we have to end up > >> rebuilding some of them right away anyways. > >> > >> Removing the devices has the benefit of simplifying the scsi/iscsi code. > >> > >> - Scanning. We currently do scanning for open-iscsi in userspace. For > >> iscsi root this requires distro support. SUSE has it. Fedora is working > >> on it. There is also Debian and Gentoo users or maintainers posting > >> about working on it. For qla4xxx, we could stick the scanning in the > >> kernel like FC and distros would not have to worry about it, but since > >> they have to get this working for software iscsi do we just keep the > >> scanning in userspace? > > > > Our preference is also to have the scanning for all the HBA's which > > does the discovery of the tgt's in the kernel space. This way we are > > consistent with all the HBA's which does the port discovery like > > the FC HBA's. Our iSCSI HBA's is similar in that regard. > > Yeah, but your HBA can also function in connection mode and just use > open-iscsi's login code too. I am not saying that is that way to go. I > am just saying that there are alternatives. Agreed. But it was added later on. So the driver always used the session mode. > > > > > As you have already stated, it simplies support from distro perspective > > as well. > > > > It does for qla4xxx, but I think you then have to go and fix it so > iscsi_tcp and iscsi_iser sync up with userspace correctly if you convert > them. Either that or we maintain two ways of scanning for iscsi drivers. I like the later part. Keeping it seperate. Ravi ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-12 22:43 ` Ravi Anand @ 2006-06-13 3:30 ` Mike Christie 2006-06-13 3:48 ` Doug Maxey ` (2 more replies) 0 siblings, 3 replies; 25+ messages in thread From: Mike Christie @ 2006-06-13 3:30 UTC (permalink / raw) To: Ravi Anand; +Cc: Doug Maxey, David Somayajulu, Duane Grigsby, linux-scsi, dwm Ravi Anand wrote: >> On Mon, 12 Jun 2006, Mike Christie wrote: > >> Date: Mon, 12 Jun 2006 16:35:45 -0500 >> From: Mike Christie <michaelc@cs.wisc.edu> >> To: Ravi Anand <ravi.anand@qlogic.com> >> CC: Doug Maxey <dwm@bebe.enoyolf.org>, >> David Somayajulu <davidcs2005@gmail.com>, >> Duane Grigsby <duane.grigsby@qlogic.com>, >> linux-scsi@vger.kernel.org, dwm@austin.ibm.com >> Subject: Re: [RFC] qla4xxx: TODO for re-submission >> User-Agent: Thunderbird 1.5 (X11/20060313) >> >> Ravi Anand wrote: >>>> On Mon, 12 Jun 2006, Mike Christie wrote: >>>> Doug Maxey wrote: >>>>> 5) add the block layer code. >>>> Some related issues that we have discussed offlist about this and should >>>> probably be discussed here are: >>>> >>>> - Are we supposed to follow FC's lead and remove the devices (rport, >>>> session, target, scsi_device, etc) if the dev_loss_tmo fires. Currently >>>> for software iscsi, we leave the devices/session. This was to reduce >>>> memory allocations and because software iscsi has to basically poll the >>>> connection during connect as part of the relogin process. So unlike FC >>>> or hw iscsi, if we remove the devices/structs we have to end up >>>> rebuilding some of them right away anyways. >>>> >>>> Removing the devices has the benefit of simplifying the scsi/iscsi code. >>>> >>>> - Scanning. We currently do scanning for open-iscsi in userspace. For >>>> iscsi root this requires distro support. SUSE has it. Fedora is working >>>> on it. There is also Debian and Gentoo users or maintainers posting >>>> about working on it. For qla4xxx, we could stick the scanning in the >>>> kernel like FC and distros would not have to worry about it, but since >>>> they have to get this working for software iscsi do we just keep the >>>> scanning in userspace? >>> Our preference is also to have the scanning for all the HBA's which >>> does the discovery of the tgt's in the kernel space. This way we are >>> consistent with all the HBA's which does the port discovery like >>> the FC HBA's. Our iSCSI HBA's is similar in that regard. >> Yeah, but your HBA can also function in connection mode and just use >> open-iscsi's login code too. I am not saying that is that way to go. I >> am just saying that there are alternatives. > > Agreed. But it was added later on. So the driver always used the session mode. And we never redo iscsi drivers right ;) >>> As you have already stated, it simplies support from distro perspective >>> as well. >>> >> It does for qla4xxx, but I think you then have to go and fix it so >> iscsi_tcp and iscsi_iser sync up with userspace correctly if you convert >> them. Either that or we maintain two ways of scanning for iscsi drivers. > > I like the later part. Keeping it seperate. > I think I was only kidding about that option. But now we have votes for every possible solution :) You also still have the iSNS issue. That will be in userspace, so one day you will have to modify the distros to do iscsi root when using iSNS and use iSNS for installer targets. ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-13 3:30 ` Mike Christie @ 2006-06-13 3:48 ` Doug Maxey 2006-06-13 4:31 ` Jeff Garzik 2006-06-15 0:35 ` Ravi Anand 2006-06-15 0:43 ` Ravi Anand 2 siblings, 1 reply; 25+ messages in thread From: Doug Maxey @ 2006-06-13 3:48 UTC (permalink / raw) To: Mike Christie; +Cc: Ravi Anand, David Somayajulu, Duane Grigsby, linux-scsi On Mon, 12 Jun 2006 22:30:22 CDT, Mike Christie wrote: > Ravi Anand wrote: > >> On Mon, 12 Jun 2006, Mike Christie wrote: > > > >> Date: Mon, 12 Jun 2006 16:35:45 -0500 > >> From: Mike Christie <michaelc@cs.wisc.edu> > >> To: Ravi Anand <ravi.anand@qlogic.com> > >> CC: Doug Maxey <dwm@bebe.enoyolf.org>, > >> David Somayajulu <davidcs2005@gmail.com>, > >> Duane Grigsby <duane.grigsby@qlogic.com>, > >> linux-scsi@vger.kernel.org, dwm@austin.ibm.com > >> Subject: Re: [RFC] qla4xxx: TODO for re-submission > >> User-Agent: Thunderbird 1.5 (X11/20060313) > >> > >> Ravi Anand wrote: > >>>> On Mon, 12 Jun 2006, Mike Christie wrote: > >>>> Doug Maxey wrote: > >>>>> 5) add the block layer code. > >>>> Some related issues that we have discussed offlist about this and should > >>>> probably be discussed here are: > >>>> > >>>> - Are we supposed to follow FC's lead and remove the devices (rport, > >>>> session, target, scsi_device, etc) if the dev_loss_tmo fires. Currently > >>>> for software iscsi, we leave the devices/session. This was to reduce > >>>> memory allocations and because software iscsi has to basically poll the > >>>> connection during connect as part of the relogin process. So unlike FC > >>>> or hw iscsi, if we remove the devices/structs we have to end up > >>>> rebuilding some of them right away anyways. > >>>> > >>>> Removing the devices has the benefit of simplifying the scsi/iscsi code. > >>>> > >>>> - Scanning. We currently do scanning for open-iscsi in userspace. For > >>>> iscsi root this requires distro support. SUSE has it. Fedora is working > >>>> on it. There is also Debian and Gentoo users or maintainers posting > >>>> about working on it. For qla4xxx, we could stick the scanning in the > >>>> kernel like FC and distros would not have to worry about it, but since > >>>> they have to get this working for software iscsi do we just keep the > >>>> scanning in userspace? > >>> Our preference is also to have the scanning for all the HBA's which > >>> does the discovery of the tgt's in the kernel space. This way we are > >>> consistent with all the HBA's which does the port discovery like > >>> the FC HBA's. Our iSCSI HBA's is similar in that regard. > >> Yeah, but your HBA can also function in connection mode and just use > >> open-iscsi's login code too. I am not saying that is that way to go. I > >> am just saying that there are alternatives. > > > > Agreed. But it was added later on. So the driver always used the session mode. > > > And we never redo iscsi drivers right ;) > > > >>> As you have already stated, it simplies support from distro perspective > >>> as well. > >>> > >> It does for qla4xxx, but I think you then have to go and fix it so > >> iscsi_tcp and iscsi_iser sync up with userspace correctly if you convert > >> them. Either that or we maintain two ways of scanning for iscsi drivers. > > > > I like the later part. Keeping it seperate. > > > > I think I was only kidding about that option. But now we have votes for > every possible solution :) > > You also still have the iSNS issue. That will be in userspace, so one > day you will have to modify the distros to do iscsi root when using iSNS > and use iSNS for installer targets. > Having a common solution (ala ethtool) for the user/admin, across all SWI, all HBAs, and all distros would be optimal in my view. Although the QLogic tools are out there, they only work AFAIK, for the other, non-mainline drivers. It is enough pain to manage the targets, making one end of the configuration common would be a big bonus. ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-13 3:48 ` Doug Maxey @ 2006-06-13 4:31 ` Jeff Garzik 2006-06-13 5:00 ` Doug Maxey 2006-06-13 12:16 ` berthiaume_wayne 0 siblings, 2 replies; 25+ messages in thread From: Jeff Garzik @ 2006-06-13 4:31 UTC (permalink / raw) To: Doug Maxey Cc: Mike Christie, Ravi Anand, David Somayajulu, Duane Grigsby, linux-scsi Doug Maxey wrote: > Having a common solution (ala ethtool) for the user/admin, across all > SWI, all HBAs, and all distros would be optimal in my view. Although > the QLogic tools are out there, they only work AFAIK, for the other, > non-mainline drivers. It is enough pain to manage the targets, > making one end of the configuration common would be a big bonus. Why, in fact... that's the purpose of blktool :) Vendor-specific code in blktool is quite welcome. The general idea is to manage various vendor-specific capabilities which fit common patterns. git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/blktool.git http://sourceforge.net/projects/gkernel/ Jeff ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-13 4:31 ` Jeff Garzik @ 2006-06-13 5:00 ` Doug Maxey 2006-06-13 12:16 ` berthiaume_wayne 1 sibling, 0 replies; 25+ messages in thread From: Doug Maxey @ 2006-06-13 5:00 UTC (permalink / raw) To: Jeff Garzik Cc: Mike Christie, Ravi Anand, David Somayajulu, Duane Grigsby, linux-scsi On Tue, 13 Jun 2006 00:31:36 EDT, Jeff Garzik wrote: > Doug Maxey wrote: > > Having a common solution (ala ethtool) for the user/admin, across all > > SWI, all HBAs, and all distros would be optimal in my view. Although > > the QLogic tools are out there, they only work AFAIK, for the other, > > non-mainline drivers. It is enough pain to manage the targets, > > making one end of the configuration common would be a big bonus. > > > Why, in fact... that's the purpose of blktool :) Eureka! You really are prescient. ;) > > Vendor-specific code in blktool is quite welcome. The general idea is > to manage various vendor-specific capabilities which fit common patterns. > > git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/blktool.git > http://sourceforge.net/projects/gkernel/ Will check it out. Thank you. ++Doug ^ permalink raw reply [flat|nested] 25+ messages in thread
* RE: [RFC] qla4xxx: TODO for re-submission 2006-06-13 4:31 ` Jeff Garzik 2006-06-13 5:00 ` Doug Maxey @ 2006-06-13 12:16 ` berthiaume_wayne 1 sibling, 0 replies; 25+ messages in thread From: berthiaume_wayne @ 2006-06-13 12:16 UTC (permalink / raw) To: jeff, dwm; +Cc: michaelc, ravi.anand, davidcs2005, duane.grigsby, linux-scsi A one tool fits all is the best solution if your interest is to get iSCSI and Linux accepted in the enterprise and, especially, the SMB markets. This should be the goal. -----Original Message----- From: linux-scsi-owner@vger.kernel.org [mailto:linux-scsi-owner@vger.kernel.org] On Behalf Of Jeff Garzik Sent: Tuesday, June 13, 2006 12:32 AM To: Doug Maxey Cc: Mike Christie; Ravi Anand; David Somayajulu; Duane Grigsby; linux-scsi@vger.kernel.org Subject: Re: [RFC] qla4xxx: TODO for re-submission Doug Maxey wrote: > Having a common solution (ala ethtool) for the user/admin, across all > SWI, all HBAs, and all distros would be optimal in my view. Although > the QLogic tools are out there, they only work AFAIK, for the other, > non-mainline drivers. It is enough pain to manage the targets, > making one end of the configuration common would be a big bonus. Why, in fact... that's the purpose of blktool :) Vendor-specific code in blktool is quite welcome. The general idea is to manage various vendor-specific capabilities which fit common patterns. git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/blktool.git http://sourceforge.net/projects/gkernel/ Jeff - To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-13 3:30 ` Mike Christie 2006-06-13 3:48 ` Doug Maxey @ 2006-06-15 0:35 ` Ravi Anand 2006-06-15 0:43 ` Ravi Anand 2 siblings, 0 replies; 25+ messages in thread From: Ravi Anand @ 2006-06-15 0:35 UTC (permalink / raw) To: Mike Christie Cc: Doug Maxey, David Somayajulu, Duane Grigsby, linux-scsi, dwm >On Mon, 12 Jun 2006, Mike Christie wrote: > Ravi Anand wrote: > >> On Mon, 12 Jun 2006, Mike Christie wrote: > > > >> Date: Mon, 12 Jun 2006 16:35:45 -0500 > >> From: Mike Christie <michaelc@cs.wisc.edu> > >> To: Ravi Anand <ravi.anand@qlogic.com> > >> CC: Doug Maxey <dwm@bebe.enoyolf.org>, > >> David Somayajulu <davidcs2005@gmail.com>, > >> Duane Grigsby <duane.grigsby@qlogic.com>, > >> linux-scsi@vger.kernel.org, dwm@austin.ibm.com > >> Subject: Re: [RFC] qla4xxx: TODO for re-submission > >> User-Agent: Thunderbird 1.5 (X11/20060313) > >> > >> Ravi Anand wrote: > >>>> On Mon, 12 Jun 2006, Mike Christie wrote: > >>>> Doug Maxey wrote: > >>>>> 5) add the block layer code. > >>>> Some related issues that we have discussed offlist about this and should > >>>> probably be discussed here are: > >>>> > >>>> - Are we supposed to follow FC's lead and remove the devices (rport, > >>>> session, target, scsi_device, etc) if the dev_loss_tmo fires. Currently > >>>> for software iscsi, we leave the devices/session. This was to reduce > >>>> memory allocations and because software iscsi has to basically poll the > >>>> connection during connect as part of the relogin process. So unlike FC > >>>> or hw iscsi, if we remove the devices/structs we have to end up > >>>> rebuilding some of them right away anyways. > >>>> > >>>> Removing the devices has the benefit of simplifying the scsi/iscsi code. > >>>> > >>>> - Scanning. We currently do scanning for open-iscsi in userspace. For > >>>> iscsi root this requires distro support. SUSE has it. Fedora is working > >>>> on it. There is also Debian and Gentoo users or maintainers posting > >>>> about working on it. For qla4xxx, we could stick the scanning in the > >>>> kernel like FC and distros would not have to worry about it, but since > >>>> they have to get this working for software iscsi do we just keep the > >>>> scanning in userspace? > >>> Our preference is also to have the scanning for all the HBA's which > >>> does the discovery of the tgt's in the kernel space. This way we are > >>> consistent with all the HBA's which does the port discovery like > >>> the FC HBA's. Our iSCSI HBA's is similar in that regard. > >> Yeah, but your HBA can also function in connection mode and just use > >> open-iscsi's login code too. I am not saying that is that way to go. I > >> am just saying that there are alternatives. > > > > Agreed. But it was added later on. So the driver always used the session mode. > > > And we never redo iscsi drivers right ;) > > > >>> As you have already stated, it simplies support from distro perspective > >>> as well. > >>> > >> It does for qla4xxx, but I think you then have to go and fix it so > >> iscsi_tcp and iscsi_iser sync up with userspace correctly if you convert > >> them. Either that or we maintain two ways of scanning for iscsi drivers. > > > > I like the later part. Keeping it seperate. > > > > I think I was only kidding about that option. But now we have votes for > every possible solution :) > > You also still have the iSNS issue. That will be in userspace, so one > day you will have to modify the distros to do iscsi root when using iSNS > and use iSNS for installer targets. ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-13 3:30 ` Mike Christie 2006-06-13 3:48 ` Doug Maxey 2006-06-15 0:35 ` Ravi Anand @ 2006-06-15 0:43 ` Ravi Anand 2006-06-15 17:31 ` Mike Christie 2 siblings, 1 reply; 25+ messages in thread From: Ravi Anand @ 2006-06-15 0:43 UTC (permalink / raw) To: Mike Christie Cc: Doug Maxey, David Somayajulu, Duane Grigsby, linux-scsi, dwm, David Wagner >On Mon, 12 Jun 2006, Mike Christie wrote: > Ravi Anand wrote: > >> On Mon, 12 Jun 2006, Mike Christie wrote: > > > >> Date: Mon, 12 Jun 2006 16:35:45 -0500 > >> From: Mike Christie <michaelc@cs.wisc.edu> > >> To: Ravi Anand <ravi.anand@qlogic.com> > >> CC: Doug Maxey <dwm@bebe.enoyolf.org>, > >> David Somayajulu <davidcs2005@gmail.com>, > >> Duane Grigsby <duane.grigsby@qlogic.com>, > >> linux-scsi@vger.kernel.org, dwm@austin.ibm.com > >> Subject: Re: [RFC] qla4xxx: TODO for re-submission > >> User-Agent: Thunderbird 1.5 (X11/20060313) > >> > >> Ravi Anand wrote: > >>>> On Mon, 12 Jun 2006, Mike Christie wrote: > >>>> Doug Maxey wrote: > >>>>> 5) add the block layer code. > >>>> Some related issues that we have discussed offlist about this and should > >>>> probably be discussed here are: > >>>> > >>>> - Are we supposed to follow FC's lead and remove the devices (rport, > >>>> session, target, scsi_device, etc) if the dev_loss_tmo fires. Currently > >>>> for software iscsi, we leave the devices/session. This was to reduce > >>>> memory allocations and because software iscsi has to basically poll the > >>>> connection during connect as part of the relogin process. So unlike FC > >>>> or hw iscsi, if we remove the devices/structs we have to end up > >>>> rebuilding some of them right away anyways. > >>>> > >>>> Removing the devices has the benefit of simplifying the scsi/iscsi code. > >>>> > >>>> - Scanning. We currently do scanning for open-iscsi in userspace. For > >>>> iscsi root this requires distro support. SUSE has it. Fedora is working > >>>> on it. There is also Debian and Gentoo users or maintainers posting > >>>> about working on it. For qla4xxx, we could stick the scanning in the > >>>> kernel like FC and distros would not have to worry about it, but since > >>>> they have to get this working for software iscsi do we just keep the > >>>> scanning in userspace? > >>> Our preference is also to have the scanning for all the HBA's which > >>> does the discovery of the tgt's in the kernel space. This way we are > >>> consistent with all the HBA's which does the port discovery like > >>> the FC HBA's. Our iSCSI HBA's is similar in that regard. > >> Yeah, but your HBA can also function in connection mode and just use > >> open-iscsi's login code too. I am not saying that is that way to go. I > >> am just saying that there are alternatives. > > > > Agreed. But it was added later on. So the driver always used the session mode. > And we never redo iscsi drivers right ;) This is the one which I wanted to send out. Please discard the previous one. We really want to fit in with the open-iscsi model. But at this point of time we will have to live with this for the existing products. Reason being we are so far down the road with the session mode support in the driver that's it not possible to revert back to connection mode. For the future products we are definitely committed to be using connection mode which fits in very well with the open-iscsi. And since in the session mode, all the targets has already been discovered and logged in, it make more sense for HW iscsi driver to initiate tgt port scan in the kernel space like we do for FC-rport. I dont think in that regard iSCSI/FC is any different. For open-iscsi if I am not mistaken it really initiates the scanning from userspace thru sysfs, but still tgt/lun scanning happens in the kernel space. This really simplifies for HW iscsi from booting perspective as well. > > >>> As you have already stated, it simplies support from distro perspective > >>> as well. > >>> > >> It does for qla4xxx, but I think you then have to go and fix it so > >> iscsi_tcp and iscsi_iser sync up with userspace correctly if you convert > >> them. Either that or we maintain two ways of scanning for iscsi drivers. > > > > I like the later part. Keeping it seperate. > > > > I think I was only kidding about that option. But now we have votes for > every possible solution :) > > You also still have the iSNS issue. That will be in userspace, so one > day you will have to modify the distros to do iscsi root when using iSNS > and use iSNS for installer targets. For iSNS in our case, the App's just present the targets, but it still need to be saved in the flash for it to persistently bound and automatically logged in. So again its pretty much the same in terms of behaviour from driver perspective even for non iSNS scenario. Ravi ^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [RFC] qla4xxx: TODO for re-submission 2006-06-15 0:43 ` Ravi Anand @ 2006-06-15 17:31 ` Mike Christie 0 siblings, 0 replies; 25+ messages in thread From: Mike Christie @ 2006-06-15 17:31 UTC (permalink / raw) To: Ravi Anand Cc: Doug Maxey, David Somayajulu, Duane Grigsby, linux-scsi, dwm, David Wagner Ravi Anand wrote: >> On Mon, 12 Jun 2006, Mike Christie wrote: >> Ravi Anand wrote: >>>> On Mon, 12 Jun 2006, Mike Christie wrote: >>>> Date: Mon, 12 Jun 2006 16:35:45 -0500 >>>> From: Mike Christie <michaelc@cs.wisc.edu> >>>> To: Ravi Anand <ravi.anand@qlogic.com> >>>> CC: Doug Maxey <dwm@bebe.enoyolf.org>, >>>> David Somayajulu <davidcs2005@gmail.com>, >>>> Duane Grigsby <duane.grigsby@qlogic.com>, >>>> linux-scsi@vger.kernel.org, dwm@austin.ibm.com >>>> Subject: Re: [RFC] qla4xxx: TODO for re-submission >>>> User-Agent: Thunderbird 1.5 (X11/20060313) >>>> >>>> Ravi Anand wrote: >>>>>> On Mon, 12 Jun 2006, Mike Christie wrote: >>>>>> Doug Maxey wrote: >>>>>>> 5) add the block layer code. >>>>>> Some related issues that we have discussed offlist about this and should >>>>>> probably be discussed here are: >>>>>> >>>>>> - Are we supposed to follow FC's lead and remove the devices (rport, >>>>>> session, target, scsi_device, etc) if the dev_loss_tmo fires. Currently >>>>>> for software iscsi, we leave the devices/session. This was to reduce >>>>>> memory allocations and because software iscsi has to basically poll the >>>>>> connection during connect as part of the relogin process. So unlike FC >>>>>> or hw iscsi, if we remove the devices/structs we have to end up >>>>>> rebuilding some of them right away anyways. >>>>>> >>>>>> Removing the devices has the benefit of simplifying the scsi/iscsi code. >>>>>> >>>>>> - Scanning. We currently do scanning for open-iscsi in userspace. For >>>>>> iscsi root this requires distro support. SUSE has it. Fedora is working >>>>>> on it. There is also Debian and Gentoo users or maintainers posting >>>>>> about working on it. For qla4xxx, we could stick the scanning in the >>>>>> kernel like FC and distros would not have to worry about it, but since >>>>>> they have to get this working for software iscsi do we just keep the >>>>>> scanning in userspace? >>>>> Our preference is also to have the scanning for all the HBA's which >>>>> does the discovery of the tgt's in the kernel space. This way we are >>>>> consistent with all the HBA's which does the port discovery like >>>>> the FC HBA's. Our iSCSI HBA's is similar in that regard. >>>> Yeah, but your HBA can also function in connection mode and just use >>>> open-iscsi's login code too. I am not saying that is that way to go. I >>>> am just saying that there are alternatives. >>> Agreed. But it was added later on. So the driver always used the session mode. >> And we never redo iscsi drivers right ;) > > This is the one which I wanted to send out. Please discard the previous one. > > We really want to fit in with the open-iscsi model. But at this point of time > we will have to live with this for the existing products. Reason being we are > so far down the road with the session mode support in the driver that's it not > possible to revert back to connection mode. > > For the future products we are definitely committed to be using connection > mode which fits in very well with the open-iscsi. > > And since in the session mode, all the targets has already been discovered > and logged in, it make more sense for HW iscsi driver to initiate tgt port > scan in the kernel space like we do for FC-rport. I dont think in that > regard iSCSI/FC is any different. > See below. > For open-iscsi if I am not mistaken it really initiates the scanning from > userspace thru sysfs, but still tgt/lun scanning happens in the kernel space. I think I see where you are going, but for both of these as you can see from the work JamesS did with the FC class, we are more talking about the thread work and iscsi state machine bits that are pushed to userspace. The initiation of the scanning is a big part too, but that is not all we are talking about. My only opinion is that if we go to the kernel both should go. I do not want to mess around with maintaining two paths like we have to with the connect code. Ditto for the block/unblock code. > > This really simplifies for HW iscsi from booting perspective as well. Yeah we went over this, I agree if we always are talking about persistent targets and if we use your FW vs the common open-iscsi db and if we are assuming distros are not going to add open-iscsi root boot support. > > >>>>> As you have already stated, it simplies support from distro perspective >>>>> as well. >>>>> >>>> It does for qla4xxx, but I think you then have to go and fix it so >>>> iscsi_tcp and iscsi_iser sync up with userspace correctly if you convert >>>> them. Either that or we maintain two ways of scanning for iscsi drivers. >>> I like the later part. Keeping it seperate. >>> >> I think I was only kidding about that option. But now we have votes for >> every possible solution :) >> >> You also still have the iSNS issue. That will be in userspace, so one >> day you will have to modify the distros to do iscsi root when using iSNS >> and use iSNS for installer targets. > > For iSNS in our case, the App's just present the targets, but it still need > to be saved in the flash for it to persistently bound and automatically logged in. > So again its pretty much the same in terms of behaviour from driver perspective > even for non iSNS scenario. So normally when you say target you mean portal. I mean for sendtargets we set a portals as persistent not a whole target right (this is from jsut using iscli)? For iSNS, can't we get updates that there are new portals popping in the san? You are not saying that normally we want to handle this by starting up a config app and setting them as persistent. I thought we would want to dyncallically add them to the system. What is the point of using iSNS and setting the targets as persistent in the initiator DB anyways? I thought one of the benefits of iSNS is that we would manage all the targets and initiator access from a central location? ^ permalink raw reply [flat|nested] 25+ messages in thread
* RE: [RFC] qla4xxx: TODO for re-submission @ 2006-06-16 22:32 David Somayajulu 0 siblings, 0 replies; 25+ messages in thread From: David Somayajulu @ 2006-06-16 22:32 UTC (permalink / raw) To: Mike Christie, Ravi Anand Cc: Doug Maxey, Duane Grigsby, linux-scsi, dwm, David Wagner > > So normally when you say target you mean portal. I mean for sendtargets iSCSI Target when there is an iSCSI Name associated with it, otherwise a portal. I guess it would be clear to say Target Portal and Node instead. > we set a portals as persistent not a whole target right (this is from > jsut using iscli)? For iSNS, can't we get updates that there are new > portals popping in the san? You are not saying that normally we want to > handle this by starting up a config app and setting them as persistent. That is correct we should field SCN (state change notification) and ESI (entity status inquiry) events. > I thought we would want to dyncallically add them to the system. That is correct. > > What is the point of using iSNS and setting the targets as persistent in > the initiator DB anyways? I thought one of the benefits of iSNS is that > we would manage all the targets and initiator access from a central > location? The HBA architecture allows any iSCSI Target Node or Portal (in case of Send targets) to be made persistent. It is up to the user to determine which ones need to be persistent. ^ permalink raw reply [flat|nested] 25+ messages in thread
end of thread, other threads:[~2006-06-16 22:32 UTC | newest] Thread overview: 25+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2006-06-11 1:16 [RFC] qla4xxx: TODO for re-submission Doug Maxey 2006-06-12 16:49 ` Ravi Anand 2006-06-12 16:52 ` Mike Christie 2006-06-12 16:57 ` Ravi Anand 2006-06-12 19:08 ` Doug Maxey 2006-06-12 19:01 ` Doug Maxey 2006-06-12 17:43 ` Mike Christie 2006-06-12 17:44 ` Mike Christie 2006-06-12 19:04 ` Doug Maxey 2006-06-12 20:05 ` Mike Christie 2006-06-12 18:05 ` Mike Christie 2006-06-12 21:10 ` Ravi Anand 2006-06-12 21:35 ` Mike Christie 2006-06-12 22:35 ` Mike Christie 2006-06-12 22:50 ` Ravi Anand 2006-06-12 22:43 ` Ravi Anand 2006-06-13 3:30 ` Mike Christie 2006-06-13 3:48 ` Doug Maxey 2006-06-13 4:31 ` Jeff Garzik 2006-06-13 5:00 ` Doug Maxey 2006-06-13 12:16 ` berthiaume_wayne 2006-06-15 0:35 ` Ravi Anand 2006-06-15 0:43 ` Ravi Anand 2006-06-15 17:31 ` Mike Christie -- strict thread matches above, loose matches on Subject: below -- 2006-06-16 22:32 David Somayajulu
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).