]> git.proxmox.com Git - pve-kernel-3.10.0.git/blob - vhost-scsi-fixes.patch
use upstream bnx2 and aacraid drivers
[pve-kernel-3.10.0.git] / vhost-scsi-fixes.patch
1 several vhosts-scsi fixes to allow compile
2
3 seems RH backported, some patches, but cghanges for disabled VHOST_SCSI
4 module are missing.
5
6 --- linux-2.6-3.10.0/drivers/vhost/scsi.c.backup 2015-12-18 12:27:17.000000000 +0100
7 +++ linux-2.6-3.10.0/drivers/vhost/scsi.c 2015-12-18 13:07:38.000000000 +0100
8 @@ -54,6 +54,7 @@
9 #define TCM_VHOST_VERSION "v0.1"
10 #define TCM_VHOST_NAMELEN 256
11 #define TCM_VHOST_MAX_CDB_SIZE 32
12 +#define TCM_VHOST_DEFAULT_TAGS 256
13
14 struct vhost_scsi_inflight {
15 /* Wait for the flush operation to finish */
16 @@ -847,7 +848,7 @@
17 tv_cmd->tvc_lun, tv_cmd->tvc_exp_data_len,
18 tv_cmd->tvc_task_attr, tv_cmd->tvc_data_direction,
19 0, sg_ptr, tv_cmd->tvc_sgl_count,
20 - sg_bidi_ptr, sg_no_bidi);
21 + sg_bidi_ptr, sg_no_bidi, NULL, 0);
22 if (rc < 0) {
23 transport_send_check_condition_and_sense(se_cmd,
24 TCM_LOGICAL_UNIT_COMMUNICATION_FAILURE, 0);
25 @@ -1656,7 +1657,11 @@
26 /*
27 * Initialize the struct se_session pointer
28 */
29 - tv_nexus->tvn_se_sess = transport_init_session();
30 + tv_nexus->tvn_se_sess = transport_init_session_tags(
31 + TCM_VHOST_DEFAULT_TAGS,
32 + sizeof(struct tcm_vhost_cmd),
33 + TARGET_PROT_NORMAL);
34 +
35 if (IS_ERR(tv_nexus->tvn_se_sess)) {
36 mutex_unlock(&tv_tpg->tv_tpg_mutex);
37 kfree(tv_nexus);
38 @@ -2056,15 +2061,15 @@
39 /*
40 * Setup default attribute lists for various fabric->tf_cit_tmpl
41 */
42 - TF_CIT_TMPL(fabric)->tfc_wwn_cit.ct_attrs = tcm_vhost_wwn_attrs;
43 - TF_CIT_TMPL(fabric)->tfc_tpg_base_cit.ct_attrs = tcm_vhost_tpg_attrs;
44 - TF_CIT_TMPL(fabric)->tfc_tpg_attrib_cit.ct_attrs = NULL;
45 - TF_CIT_TMPL(fabric)->tfc_tpg_param_cit.ct_attrs = NULL;
46 - TF_CIT_TMPL(fabric)->tfc_tpg_np_base_cit.ct_attrs = NULL;
47 - TF_CIT_TMPL(fabric)->tfc_tpg_nacl_base_cit.ct_attrs = NULL;
48 - TF_CIT_TMPL(fabric)->tfc_tpg_nacl_attrib_cit.ct_attrs = NULL;
49 - TF_CIT_TMPL(fabric)->tfc_tpg_nacl_auth_cit.ct_attrs = NULL;
50 - TF_CIT_TMPL(fabric)->tfc_tpg_nacl_param_cit.ct_attrs = NULL;
51 + fabric->tf_cit_tmpl.tfc_wwn_cit.ct_attrs = tcm_vhost_wwn_attrs;
52 + fabric->tf_cit_tmpl.tfc_tpg_base_cit.ct_attrs = tcm_vhost_tpg_attrs;
53 + fabric->tf_cit_tmpl.tfc_tpg_attrib_cit.ct_attrs = NULL;
54 + fabric->tf_cit_tmpl.tfc_tpg_param_cit.ct_attrs = NULL;
55 + fabric->tf_cit_tmpl.tfc_tpg_np_base_cit.ct_attrs = NULL;
56 + fabric->tf_cit_tmpl.tfc_tpg_nacl_base_cit.ct_attrs = NULL;
57 + fabric->tf_cit_tmpl.tfc_tpg_nacl_attrib_cit.ct_attrs = NULL;
58 + fabric->tf_cit_tmpl.tfc_tpg_nacl_auth_cit.ct_attrs = NULL;
59 + fabric->tf_cit_tmpl.tfc_tpg_nacl_param_cit.ct_attrs = NULL;
60 /*
61 * Register the fabric for use within TCM
62 */