Re: [PATCH 08/22] qla2xxx: Refactore target code to remove symbol dependency

2017-01-17 Thread Dr. Greg Wettstein
On Dec 16, 12:17am, Christoph Hellwig wrote:
} Subject: Re: [PATCH 08/22] qla2xxx: Refactore target code to remove symbol

Good morning, I hope the week is going well for everyone.

Really late to this thread but am just getting caught d up after the
holidays and putting out fires.

> On Thu, Dec 15, 2016 at 08:50:39PM +, Tran, Quinn wrote:
>
> > Christoph, Qlogic was asked to support other Target Stack (SC ST)
> > using the same qla2xxx.ko upstream driver.  I had mentioned this
> > during the last 2015 LSF get together.  Hopefully, that gives a
> > better context.  The understanding that came away was Qlogic do
> > what is needed to provide this support without creating any dead
> > code.

> Right.  And what you're doing here is to create tons of pointless
> and dead code.  If you can support something else without clearly
> making the in-kernel version worse it's all fine.  This patch on the
> other hand is complete crap and totally unacceptable in this form.

It would be helpful to get an architectural overview of how Qlogic is
proposing to interface SCST to the in-kernel Qlogic target driver
code.  Are you going to follow a model of having an analogue of
tcm_qla2xxx for SCST?

We've been running for 3-4 years on the SCST target interface driver
we wrote to allow us to use the in-kernel Qlogic target driver code
with SCST.  We used the model of implementing the interface in
something we referred to as the scst_qla2xxx module and the model
seems solid.  There was a bit of an impedance mismatch but the changes
to the core kernel code were negligible.

Our code is being scheduled for an upgrade to 4.4 and to chase down
what have been reports about issues on 4 GBPS Qlogic cards.  Any
notion of a timeframe on the Cavium/Qlogic based solution?

Have a good day.

Dr. Greg

}-- End of excerpt from Christoph Hellwig

As always,
Dr. G.W. Wettstein, Ph.D.   Enjellic Systems Development, LLC.
4206 N. 19th Ave.   Specializing in information infra-structure
Fargo, ND  58102development.
PH: 701-281-1686
FAX: 701-281-3949   EMAIL: g...@enjellic.com
--
"Try to remove the color-problem by restarting your computer several
 times."
-- Microsoft-Internet Explorer
   README.TXT
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 08/22] qla2xxx: Refactore target code to remove symbol dependency

2016-12-16 Thread Bart Van Assche
On 12/15/2016 09:50 PM, Tran, Quinn wrote:
> Qlogic was asked to support other Target Stack (SCST) using the same
> qla2xxx.ko upstream driver.  I had mentioned this during the last 2015
> LSF get together.  Hopefully, that gives a better context.  The
> understanding that came away was “Qlogic do what is needed to provide
> this support without creating any dead code”.
>
> [ ... ]
>
> The patches look like its copying a lot of fields without doing a whole
> lot, instead the patches are translating the request from tcm_qla2xxx to
> qla2xxx.

Hello Quinn,

Are you perhaps referring to the 2015 LSF/MM session I had proposed
([LSF/MM TOPIC] Unifying the LIO and SCST target drivers -
https://marc.info/?l=linux-scsi&m=142122995413575)? The approach taken
in patch 08/22 of this series is not what I had in mind. More in
general, as you maybe know shim (translation) layers are not welcome in
the Linux kernel.

Simplifying the LIO core is still on my to do list. A possible starting
point is the patch series I posted one year ago ([PATCH 00/20] SCSI
target patches for kernel v4.4 -
https://www.spinics.net/lists/target-devel/msg10788.html). That kind of
simplification helps with reducing the maintenance burden for target
drivers that support the two in-kernel SCSI target stacks without
violating any of the established rules for kernel driver development.

Bart.
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 08/22] qla2xxx: Refactore target code to remove symbol dependency

2016-12-16 Thread Christoph Hellwig
On Thu, Dec 15, 2016 at 08:50:39PM +, Tran, Quinn wrote:
> Christoph,
> 
> Qlogic was asked to support other Target Stack (SC ST) using the same 
> qla2xxx.ko upstream driver.  I had mentioned this during the last 2015 LSF 
> get together.  Hopefully, that gives a better context.  The understanding 
> that came away was “Qlogic do what is needed to provide this support without 
> creating any dead code”.

Right.  And what you're doing here is to create tons of pointless and
dead code.  If you can support something else without clearly making the
in-kernel version worse it's all fine.  This patch on the other hand is
complete crap and totally unacceptable in this form.
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 08/22] qla2xxx: Refactore target code to remove symbol dependency

2016-12-15 Thread Tran, Quinn
Christoph,

Qlogic was asked to support other Target Stack (SC ST) using the same 
qla2xxx.ko upstream driver.  I had mentioned this during the last 2015 LSF get 
together.  Hopefully, that gives a better context.  The understanding that came 
away was “Qlogic do what is needed to provide this support without creating any 
dead code”.

As for the cleanup patch(es), we fail to mention that conversation.  The patch 
attempts to remove any knowledge of TCM’s specific symbol and try to formalize 
the interface.  Qla2xxx driver will behave in a more generic manner when it 
comes to Target Mode.  All TCM knowledge will be confined to the tcm_qla2xxx 
driver before communicating with QLA driver.   The same goes for other target 
stack.

The patches look like its copying a lot of fields without doing a whole lot, 
instead the patches are translating the request from tcm_qla2xxx to qla2xxx.

As for T10-PI change in this series, the goal were the same : 1) remove TCM 
knowledge/cleanup, 2) additional bug fixes were needed while testing with other 
stacks. 

Regards,
Quinn Tran

-Original Message-
From:  on behalf of "Madhani, Himanshu" 

Date: Thursday, December 15, 2016 at 11:29 AM
To: Christoph Hellwig 
Cc: target-devel , Nicholas Bellinger 
, "Malavali, Giridhar" , 
"linux-scsi@vger.kernel.org" 
Subject: Re: [PATCH 08/22] qla2xxx: Refactore target code to remove symbol 
dependency
Resent-From: 

Hi Christoph, 



On 12/14/16, 1:18 PM, "Christoph Hellwig"  wrote:

> - the new qla2x00_free_fcport is entirely pointless, please drop
>   that part of the patch (and even if it wasn't pointless it should
>   have been a patch on it's own)
> - please use struct names and not typedefs for your new structures
> - pretty much avery single items in your list should be a separate
>   patch.  And some of them are actively counterproductive and should
>   be dropped:
>
>- Remove direct access of scsi_status field in se_cmd
>   - Remove se_cmd from qlt_do_ctio_completion
>   - Remove se_cmd access in srr code section
>   - Move se_cmd struct outside of qla_tgt_cmd/qla_tgt_mgmt_cmd.

We combined the patches which includes fixes, enhancements and cleanups to 
Support multiple target stacks, reviews from customer, and to improve code
maintainability. This patch tries to organize code logically which is spread
across qla_target and tcm_qla2xxx. We will split this patch into multiple 
subset and resubmit the series. 

Thanks, 
- Himanshu
>

?�{.n�+���+%��lzwm��b�맲��r��zX��??�(��?��ܨ}���Ơz�&j:+v���?zZ+��+zf���h���~i���z�?�w���?&�)ߢ?f



Re: [PATCH 08/22] qla2xxx: Refactore target code to remove symbol dependency

2016-12-15 Thread Madhani, Himanshu
Hi Christoph, 



On 12/14/16, 1:18 PM, "Christoph Hellwig"  wrote:

> - the new qla2x00_free_fcport is entirely pointless, please drop
>   that part of the patch (and even if it wasn't pointless it should
>   have been a patch on it's own)
> - please use struct names and not typedefs for your new structures
> - pretty much avery single items in your list should be a separate
>   patch.  And some of them are actively counterproductive and should
>   be dropped:
>
>- Remove direct access of scsi_status field in se_cmd
>   - Remove se_cmd from qlt_do_ctio_completion
>   - Remove se_cmd access in srr code section
>   - Move se_cmd struct outside of qla_tgt_cmd/qla_tgt_mgmt_cmd.

We combined the patches which includes fixes, enhancements and cleanups to 
Support multiple target stacks, reviews from customer, and to improve code
maintainability. This patch tries to organize code logically which is spread
across qla_target and tcm_qla2xxx. We will split this patch into multiple 
subset and resubmit the series. 

Thanks, 
- Himanshu
>


Re: [PATCH 08/22] qla2xxx: Refactore target code to remove symbol dependency

2016-12-14 Thread Christoph Hellwig
 - the new qla2x00_free_fcport is entirely pointless, please drop
   that part of the patch (and even if it wasn't pointless it should
   have been a patch on it's own)
 - please use struct names and not typedefs for your new structures
 - pretty much avery single items in your list should be a separate
   patch.  And some of them are actively counterproductive and should
   be dropped:

- Remove direct access of scsi_status field in se_cmd
- Remove se_cmd from qlt_do_ctio_completion
- Remove se_cmd access in srr code section
- Move se_cmd struct outside of qla_tgt_cmd/qla_tgt_mgmt_cmd.
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html