fcst: Port to openSUSE Leap

git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7243 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This commit is contained in:
Bart Van Assche
2017-10-05 23:48:25 +00:00
parent d3a4f1d79f
commit 4c9fb0ecf0
3 changed files with 20 additions and 14 deletions
+6
View File
@@ -19,9 +19,15 @@
#ifdef INSIDE_KERNEL_TREE
#include <scst/scst.h>
#define NEW_LIBFC_API
#else
#include <linux/version.h>
#include "scst.h"
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 10, 0) || \
defined(CONFIG_SUSE_KERNEL) && \
LINUX_VERSION_CODE >= KERNEL_VERSION(4, 4, 0)
#define NEW_LIBFC_API
#endif
#endif
#define FT_VERSION "3.4.0-pre"
+12 -12
View File
@@ -256,12 +256,12 @@ static void ft_cmd_done(struct ft_cmd *fcmd)
{
struct fc_frame *fp = fcmd->req_frame;
struct fc_seq *sp = fcmd->seq;
#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
#ifndef NEW_LIBFC_API
struct fc_lport *lport = fr_dev(fp);
#endif
if (sp)
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 10, 0)
#ifdef NEW_LIBFC_API
fc_exch_done(sp);
#else
lport->tt.exch_done(sp);
@@ -269,7 +269,7 @@ static void ft_cmd_done(struct ft_cmd *fcmd)
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 36)
if (fr_seq(fp))
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 10, 0)
#ifdef NEW_LIBFC_API
fc_seq_release(fr_seq(fp));
#else
lport->tt.seq_release(fr_seq(fp));
@@ -395,7 +395,7 @@ int ft_send_response(struct scst_cmd *cmd)
/*
* Send response.
*/
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 10, 0)
#ifdef NEW_LIBFC_API
fcmd->seq = fc_seq_start_next(fcmd->seq);
#else
fcmd->seq = lport->tt.seq_start_next(fcmd->seq);
@@ -403,7 +403,7 @@ int ft_send_response(struct scst_cmd *cmd)
fc_fill_fc_hdr(fp, FC_RCTL_DD_CMD_STATUS, ep->did, ep->sid, FC_TYPE_FCP,
FC_FC_EX_CTX | FC_FC_LAST_SEQ | FC_FC_END_SEQ, 0);
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 10, 0)
#ifdef NEW_LIBFC_API
error = FCST_INJ_SEND_ERR(fc_seq_send(lport, fcmd->seq, fp));
#else
error = FCST_INJ_SEND_ERR(lport->tt.seq_send(lport, fcmd->seq, fp));
@@ -505,14 +505,14 @@ int ft_send_xfer_rdy(struct scst_cmd *cmd)
txrdy->ft_data_ro = 0;
txrdy->ft_burst_len = htonl(scst_cmd_get_bufflen(cmd));
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 10, 0)
#ifdef NEW_LIBFC_API
fcmd->seq = fc_seq_start_next(fcmd->seq);
#else
fcmd->seq = lport->tt.seq_start_next(fcmd->seq);
#endif
fc_fill_fc_hdr(fp, FC_RCTL_DD_DATA_DESC, ep->did, ep->sid, FC_TYPE_FCP,
FC_FC_EX_CTX | FC_FC_END_SEQ | FC_FC_SEQ_INIT, 0);
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 10, 0)
#ifdef NEW_LIBFC_API
error = FCST_INJ_SEND_ERR(fc_seq_send(lport, fcmd->seq, fp));
#else
error = FCST_INJ_SEND_ERR(lport->tt.seq_send(lport, fcmd->seq, fp));
@@ -586,7 +586,7 @@ out:
fc_fill_reply_hdr(fp, rx_fp, FC_RCTL_DD_CMD_STATUS, 0);
sp = fr_seq(fp);
if (sp)
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 10, 0)
#ifdef NEW_LIBFC_API
fc_seq_send(lport, sp, fp);
#else
lport->tt.seq_send(lport, sp, fp);
@@ -718,7 +718,7 @@ static void ft_recv_cmd(struct ft_sess *sess, struct fc_frame *fp)
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 36)
sp = fr_seq(fp);
#else
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 10, 0)
#ifdef NEW_LIBFC_API
sp = fc_seq_assign(lport, fp);
#else
sp = lport->tt.seq_assign(lport, fp);
@@ -771,7 +771,7 @@ static void ft_recv_cmd(struct ft_sess *sess, struct fc_frame *fp)
cmd->state = FT_STATE_NEW;
fcmd->seq = sp;
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 10, 0)
#ifdef NEW_LIBFC_API
fc_seq_set_resp(sp, ft_recv_seq, cmd);
#else
lport->tt.seq_set_resp(sp, ft_recv_seq, cmd);
@@ -824,7 +824,7 @@ busy:
if (fcmd)
ft_cmd_done(fcmd);
else if (sp)
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 10, 0)
#ifdef NEW_LIBFC_API
fc_exch_done(sp);
#else
lport->tt.exch_done(sp);
@@ -867,7 +867,7 @@ static void ft_cmd_ls_rjt(struct fc_frame *rx_fp, enum fc_els_rjt_reason reason,
lport = fr_dev(rx_fp);
rjt_data.reason = reason;
rjt_data.explan = explan;
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 10, 0)
#ifdef NEW_LIBFC_API
fc_seq_els_rsp_send(rx_fp, ELS_LS_RJT, &rjt_data);
#else
lport->tt.seq_els_rsp_send(rx_fp, ELS_LS_RJT, &rjt_data);
+2 -2
View File
@@ -89,7 +89,7 @@ int ft_send_read_data(struct scst_cmd *cmd)
mem_len -= tlen;
mem_off = tlen;
} else
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 10, 0)
#ifdef NEW_LIBFC_API
fcmd->seq = fc_seq_start_next(fcmd->seq);
#else
fcmd->seq = lport->tt.seq_start_next(fcmd->seq);
@@ -179,7 +179,7 @@ int ft_send_read_data(struct scst_cmd *cmd)
remaining ? (FC_FC_EX_CTX | FC_FC_REL_OFF) :
(FC_FC_EX_CTX | FC_FC_REL_OFF | FC_FC_END_SEQ),
fh_off);
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 10, 0)
#ifdef NEW_LIBFC_API
error = FCST_INJ_SEND_ERR(fc_seq_send(lport, fcmd->seq, fp));
#else
error = FCST_INJ_SEND_ERR(lport->tt.seq_send(lport, fcmd->seq,