Re: [RFC 14/34] iscsi-target: export symbols

2016-04-10 Thread Sagi Grimberg



Great.  Just curious how -v2 is coming along..?

I've got a few cycles over the weekend, and plan to start reviewing as
the series hits the list.

Btw, I asked Sagi to help out with review as well.


If you did, it's lost in my old email address :)

I'll have a look this week.

Cheers,
Sagi.
--
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: [RFC 14/34] iscsi-target: export symbols

2016-04-09 Thread Varun Prakash
On Fri, Apr 08, 2016 at 12:16:43AM -0700, Nicholas A. Bellinger wrote:
> On Sun, 2016-03-13 at 17:43 +0530, Varun Prakash wrote:
> > On Fri, Mar 11, 2016 at 10:28:33PM -0800, Nicholas A. Bellinger wrote:
> > > Hi Varun & Co,
> > > 
> > > On Mon, 2016-03-07 at 15:22 -0800, Nicholas A. Bellinger wrote:
> > > 
> > > 
> > > 
> > > The drivers/net/ethernet/chelsio/cxgb4/ prerequisites for supporting
> > > iscsi segment offload (ISO) + page pod manager (PPM) are in
> > > target-pending/for-next-merge, and patches #13+ have been dropped
> > > for initial v4.6-rc1 merge.
> > > 
> > > Also, there haven't been any further linux-next subsystem merge failures
> > > beyond the initial t4fw_api.h conflict as reported by SFR.
> > > 
> > > https://lkml.org/lkml/2016/2/29/34
> > > 
> > > So please go ahead and post stand-alone cxgb4 driver changes for
> > > initial ISO + PPM to net-dev + target-devel, and Hariprasad should
> > > review + ack these ASAP.
> > 
> > Yes, I will post cxgb4 patch series, thanks.
> 
> Great.  Just curious how -v2 is coming along..?
> 
> I've got a few cycles over the weekend, and plan to start reviewing as
> the series hits the list.
>
 
I will post v2 series today, thanks.

> Btw, I asked Sagi to help out with review as well.
>
--
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: [RFC 14/34] iscsi-target: export symbols

2016-04-08 Thread Nicholas A. Bellinger
On Sun, 2016-03-13 at 17:43 +0530, Varun Prakash wrote:
> On Fri, Mar 11, 2016 at 10:28:33PM -0800, Nicholas A. Bellinger wrote:
> > Hi Varun & Co,
> > 
> > On Mon, 2016-03-07 at 15:22 -0800, Nicholas A. Bellinger wrote:
> > 
> > 
> > 
> > > So obviously this is going to take longer to sort out, and likely not
> > > end up being v4.6-rc1 material.  That is OK, as the end result will be
> > > better code.  :)
> > > 
> > > That said, it would make sense do the initial merge of the
> > > drivers/net/ethernet/chelsio/cxgb4/ + PPM prerequisites changes for
> > > v4.6, and as many basic prerequisites for iscsi-target for ISO as
> > > possible in the short time we have.
> > > 
> > > Wrt to drivers/net/ethernet/chelsio/cxgb4/ changes, please have person
> > > from Chelsio give their 'Reviewed-by' and 'Signed-off-by' to this
> > > initial series, and make sure they get posted as stand-alone patches
> > > ASAP to net-dev w/ DaveM in the loop.
> > > 
> > > I'm still happy to push these via target-pending/for-next-merge to get
> > > the ball rolling for post v4.6 development, as long as they have the
> > > extra reviews + signed-off-by from Chelsio folks, and DaveM doesn't have
> > > any objections.
> > > 
> > 
> > The drivers/net/ethernet/chelsio/cxgb4/ prerequisites for supporting
> > iscsi segment offload (ISO) + page pod manager (PPM) are in
> > target-pending/for-next-merge, and patches #13+ have been dropped
> > for initial v4.6-rc1 merge.
> > 
> > Also, there haven't been any further linux-next subsystem merge failures
> > beyond the initial t4fw_api.h conflict as reported by SFR.
> > 
> > https://lkml.org/lkml/2016/2/29/34
> > 
> > So please go ahead and post stand-alone cxgb4 driver changes for
> > initial ISO + PPM to net-dev + target-devel, and Hariprasad should
> > review + ack these ASAP.
> 
> Yes, I will post cxgb4 patch series, thanks.

Great.  Just curious how -v2 is coming along..?

I've got a few cycles over the weekend, and plan to start reviewing as
the series hits the list.

Btw, I asked Sagi to help out with review as well.

--
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: [RFC 14/34] iscsi-target: export symbols

2016-03-13 Thread Varun Prakash
On Fri, Mar 11, 2016 at 10:28:33PM -0800, Nicholas A. Bellinger wrote:
> Hi Varun & Co,
> 
> On Mon, 2016-03-07 at 15:22 -0800, Nicholas A. Bellinger wrote:
> 
> 
> 
> > So obviously this is going to take longer to sort out, and likely not
> > end up being v4.6-rc1 material.  That is OK, as the end result will be
> > better code.  :)
> > 
> > That said, it would make sense do the initial merge of the
> > drivers/net/ethernet/chelsio/cxgb4/ + PPM prerequisites changes for
> > v4.6, and as many basic prerequisites for iscsi-target for ISO as
> > possible in the short time we have.
> > 
> > Wrt to drivers/net/ethernet/chelsio/cxgb4/ changes, please have person
> > from Chelsio give their 'Reviewed-by' and 'Signed-off-by' to this
> > initial series, and make sure they get posted as stand-alone patches
> > ASAP to net-dev w/ DaveM in the loop.
> > 
> > I'm still happy to push these via target-pending/for-next-merge to get
> > the ball rolling for post v4.6 development, as long as they have the
> > extra reviews + signed-off-by from Chelsio folks, and DaveM doesn't have
> > any objections.
> > 
> 
> The drivers/net/ethernet/chelsio/cxgb4/ prerequisites for supporting
> iscsi segment offload (ISO) + page pod manager (PPM) are in
> target-pending/for-next-merge, and patches #13+ have been dropped
> for initial v4.6-rc1 merge.
> 
> Also, there haven't been any further linux-next subsystem merge failures
> beyond the initial t4fw_api.h conflict as reported by SFR.
> 
> https://lkml.org/lkml/2016/2/29/34
> 
> So please go ahead and post stand-alone cxgb4 driver changes for
> initial ISO + PPM to net-dev + target-devel, and Hariprasad should
> review + ack these ASAP.

Yes, I will post cxgb4 patch series, thanks.
--
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: [RFC 14/34] iscsi-target: export symbols

2016-03-11 Thread Nicholas A. Bellinger
Hi Varun & Co,

On Mon, 2016-03-07 at 15:22 -0800, Nicholas A. Bellinger wrote:



> So obviously this is going to take longer to sort out, and likely not
> end up being v4.6-rc1 material.  That is OK, as the end result will be
> better code.  :)
> 
> That said, it would make sense do the initial merge of the
> drivers/net/ethernet/chelsio/cxgb4/ + PPM prerequisites changes for
> v4.6, and as many basic prerequisites for iscsi-target for ISO as
> possible in the short time we have.
> 
> Wrt to drivers/net/ethernet/chelsio/cxgb4/ changes, please have person
> from Chelsio give their 'Reviewed-by' and 'Signed-off-by' to this
> initial series, and make sure they get posted as stand-alone patches
> ASAP to net-dev w/ DaveM in the loop.
> 
> I'm still happy to push these via target-pending/for-next-merge to get
> the ball rolling for post v4.6 development, as long as they have the
> extra reviews + signed-off-by from Chelsio folks, and DaveM doesn't have
> any objections.
> 

The drivers/net/ethernet/chelsio/cxgb4/ prerequisites for supporting
iscsi segment offload (ISO) + page pod manager (PPM) are in
target-pending/for-next-merge, and patches #13+ have been dropped
for initial v4.6-rc1 merge.

Also, there haven't been any further linux-next subsystem merge failures
beyond the initial t4fw_api.h conflict as reported by SFR.

https://lkml.org/lkml/2016/2/29/34

So please go ahead and post stand-alone cxgb4 driver changes for
initial ISO + PPM to net-dev + target-devel, and Hariprasad should
review + ack these ASAP.

--
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: [RFC 14/34] iscsi-target: export symbols

2016-03-07 Thread Nicholas A. Bellinger
On Sat, 2016-03-05 at 13:54 -0800, Nicholas A. Bellinger wrote:
> Hi Varun & Co,
> 
> On Wed, 2016-03-02 at 17:30 +0530, Varun Prakash wrote:
> > On Tue, Mar 01, 2016 at 08:19:21PM +0530, Christoph Hellwig wrote:
> > > This looks like pretty random exports and not something like a well
> > > defined interface to me :(
> > 
> > I have exported functions which works on iscsi-target data structures
> > and can be reused by offload drivers.
> 
> The main point here for cxgbit, as-is it's duplicating a lot of code vs.
> existing TCP code-paths using Linux/NET.
> 
> Many of these symbols are related to ->iscsit_immediate_queue() and
> ->cxgbit_response_queue() support, which for cxgbit vs. existing TCP can
> both benefit using common code.
> 
> That is, to start cxgbit should avoid using these two specific callbacks
> originally intended for iser-target, and for supporting traditional
> iscsi hw offloads we'll need to pursue:
> 
>   - New iscsit_transport per PDU callbacks invoked from 
> iscsit_immediate_queue() + iscsit_response_queue() in 
> iscsi_target.c, or
> 
>   - New iscsit_transport per PDU callbacks invoked from
> iscsi_send_$PDU() in iscsi_target.c.
>

So obviously this is going to take longer to sort out, and likely not
end up being v4.6-rc1 material.  That is OK, as the end result will be
better code.  :)

That said, it would make sense do the initial merge of the
drivers/net/ethernet/chelsio/cxgb4/ + PPM prerequisites changes for
v4.6, and as many basic prerequisites for iscsi-target for ISO as
possible in the short time we have.

Wrt to drivers/net/ethernet/chelsio/cxgb4/ changes, please have person
from Chelsio give their 'Reviewed-by' and 'Signed-off-by' to this
initial series, and make sure they get posted as stand-alone patches
ASAP to net-dev w/ DaveM in the loop.

I'm still happy to push these via target-pending/for-next-merge to get
the ball rolling for post v4.6 development, as long as they have the
extra reviews + signed-off-by from Chelsio folks, and DaveM doesn't have
any objections.

--
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: [RFC 14/34] iscsi-target: export symbols

2016-03-05 Thread Nicholas A. Bellinger
Hi Varun & Co,

On Wed, 2016-03-02 at 17:30 +0530, Varun Prakash wrote:
> On Tue, Mar 01, 2016 at 08:19:21PM +0530, Christoph Hellwig wrote:
> > This looks like pretty random exports and not something like a well
> > defined interface to me :(
> 
> I have exported functions which works on iscsi-target data structures
> and can be reused by offload drivers.

The main point here for cxgbit, as-is it's duplicating a lot of code vs.
existing TCP code-paths using Linux/NET.

Many of these symbols are related to ->iscsit_immediate_queue() and
->cxgbit_response_queue() support, which for cxgbit vs. existing TCP can
both benefit using common code.

That is, to start cxgbit should avoid using these two specific callbacks
originally intended for iser-target, and for supporting traditional
iscsi hw offloads we'll need to pursue:

  - New iscsit_transport per PDU callbacks invoked from 
iscsit_immediate_queue() + iscsit_response_queue() in 
iscsi_target.c, or

  - New iscsit_transport per PDU callbacks invoked from
iscsi_send_$PDU() in iscsi_target.c.
   


--
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: [RFC 14/34] iscsi-target: export symbols

2016-03-02 Thread Varun Prakash
On Tue, Mar 01, 2016 at 08:19:21PM +0530, Christoph Hellwig wrote:
> This looks like pretty random exports and not something like a well
> defined interface to me :(

I have exported functions which works on iscsi-target data structures
and can be reused by offload drivers.
--
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: [RFC 14/34] iscsi-target: export symbols

2016-03-01 Thread Christoph Hellwig
This looks like pretty random exports and not something like a well
defined interface to me :(
--
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


[RFC 14/34] iscsi-target: export symbols

2016-02-14 Thread Varun Prakash
export multiple symbols for
ISCSI_TCP_CXGB4 transport driver.

Signed-off-by: Varun Prakash 
---
 drivers/target/iscsi/iscsi_target_datain_values.c |  3 ++
 drivers/target/iscsi/iscsi_target_erl0.c  |  1 +
 drivers/target/iscsi/iscsi_target_erl1.c  |  1 +
 drivers/target/iscsi/iscsi_target_login.c |  3 +-
 drivers/target/iscsi/iscsi_target_nego.c  |  1 +
 drivers/target/iscsi/iscsi_target_parameters.c|  1 +
 drivers/target/iscsi/iscsi_target_util.c  |  4 +++
 include/target/iscsi/iscsi_transport.h| 34 +++
 8 files changed, 47 insertions(+), 1 deletion(-)

diff --git a/drivers/target/iscsi/iscsi_target_datain_values.c 
b/drivers/target/iscsi/iscsi_target_datain_values.c
index fb3b52b..73253e3 100644
--- a/drivers/target/iscsi/iscsi_target_datain_values.c
+++ b/drivers/target/iscsi/iscsi_target_datain_values.c
@@ -55,6 +55,7 @@ void iscsit_free_datain_req(struct iscsi_cmd *cmd, struct 
iscsi_datain_req *dr)
 
kmem_cache_free(lio_dr_cache, dr);
 }
+EXPORT_SYMBOL(iscsit_free_datain_req);
 
 void iscsit_free_all_datain_reqs(struct iscsi_cmd *cmd)
 {
@@ -79,6 +80,7 @@ struct iscsi_datain_req *iscsit_get_datain_req(struct 
iscsi_cmd *cmd)
return list_first_entry(>datain_list, struct iscsi_datain_req,
cmd_datain_node);
 }
+EXPORT_SYMBOL(iscsit_get_datain_req);
 
 /*
  * For Normal and Recovery DataSequenceInOrder=Yes and DataPDUInOrder=Yes.
@@ -524,3 +526,4 @@ struct iscsi_datain_req *iscsit_get_datain_values(
 
return NULL;
 }
+EXPORT_SYMBOL(iscsit_get_datain_values);
diff --git a/drivers/target/iscsi/iscsi_target_erl0.c 
b/drivers/target/iscsi/iscsi_target_erl0.c
index 210f6e4..4a66317 100644
--- a/drivers/target/iscsi/iscsi_target_erl0.c
+++ b/drivers/target/iscsi/iscsi_target_erl0.c
@@ -913,6 +913,7 @@ void iscsit_fall_back_to_erl0(struct iscsi_session *sess)
 
atomic_set(>session_fall_back_to_erl0, 1);
 }
+EXPORT_SYMBOL(iscsit_fall_back_to_erl0);
 
 static void iscsit_handle_connection_cleanup(struct iscsi_conn *conn)
 {
diff --git a/drivers/target/iscsi/iscsi_target_erl1.c 
b/drivers/target/iscsi/iscsi_target_erl1.c
index 9214c9da..42aaaea 100644
--- a/drivers/target/iscsi/iscsi_target_erl1.c
+++ b/drivers/target/iscsi/iscsi_target_erl1.c
@@ -1271,6 +1271,7 @@ void iscsit_start_dataout_timer(
cmd->dataout_timer_flags |= ISCSI_TF_RUNNING;
add_timer(>dataout_timer);
 }
+EXPORT_SYMBOL(iscsit_start_dataout_timer);
 
 void iscsit_stop_dataout_timer(struct iscsi_cmd *cmd)
 {
diff --git a/drivers/target/iscsi/iscsi_target_login.c 
b/drivers/target/iscsi/iscsi_target_login.c
index 96e78c8..616ec9e 100644
--- a/drivers/target/iscsi/iscsi_target_login.c
+++ b/drivers/target/iscsi/iscsi_target_login.c
@@ -249,7 +249,7 @@ static void iscsi_login_set_conn_values(
mutex_unlock(_id_lock);
 }
 
-static __printf(2, 3) int iscsi_change_param_sprintf(
+__printf(2, 3) int iscsi_change_param_sprintf(
struct iscsi_conn *conn,
const char *fmt, ...)
 {
@@ -270,6 +270,7 @@ static __printf(2, 3) int iscsi_change_param_sprintf(
 
return 0;
 }
+EXPORT_SYMBOL(iscsi_change_param_sprintf);
 
 /*
  * This is the leading connection of a new session,
diff --git a/drivers/target/iscsi/iscsi_target_nego.c 
b/drivers/target/iscsi/iscsi_target_nego.c
index 9fc9117..ca06132 100644
--- a/drivers/target/iscsi/iscsi_target_nego.c
+++ b/drivers/target/iscsi/iscsi_target_nego.c
@@ -269,6 +269,7 @@ int iscsi_target_check_login_request(
 
return 0;
 }
+EXPORT_SYMBOL(iscsi_target_check_login_request);
 
 static int iscsi_target_check_first_request(
struct iscsi_conn *conn,
diff --git a/drivers/target/iscsi/iscsi_target_parameters.c 
b/drivers/target/iscsi/iscsi_target_parameters.c
index 3a1f9a7..0efa80b 100644
--- a/drivers/target/iscsi/iscsi_target_parameters.c
+++ b/drivers/target/iscsi/iscsi_target_parameters.c
@@ -680,6 +680,7 @@ struct iscsi_param *iscsi_find_param_from_key(
pr_err("Unable to locate key \"%s\".\n", key);
return NULL;
 }
+EXPORT_SYMBOL(iscsi_find_param_from_key);
 
 int iscsi_extract_key_value(char *textbuf, char **key, char **value)
 {
diff --git a/drivers/target/iscsi/iscsi_target_util.c 
b/drivers/target/iscsi/iscsi_target_util.c
index 428b0d9..5cab517 100644
--- a/drivers/target/iscsi/iscsi_target_util.c
+++ b/drivers/target/iscsi/iscsi_target_util.c
@@ -126,6 +126,7 @@ struct iscsi_r2t *iscsit_get_r2t_from_list(struct iscsi_cmd 
*cmd)
" 0x%08x.\n", cmd->init_task_tag);
return NULL;
 }
+EXPORT_SYMBOL(iscsit_get_r2t_from_list);
 
 /*
  * Called with cmd->r2t_lock held.
@@ -514,6 +515,7 @@ void iscsit_add_cmd_to_immediate_queue(
 
wake_up(>queues_wq);
 }
+EXPORT_SYMBOL(iscsit_add_cmd_to_immediate_queue);
 
 struct iscsi_queue_req *iscsit_get_cmd_from_immediate_queue(struct iscsi_conn 
*conn)
 {
@@ -773,6 +775,7 @@ void iscsit_free_cmd(struct