mm: Remove slab destructors from kmem_cache_create().
[sfrench/cifs-2.6.git] / drivers / infiniband / ulp / iser / iscsi_iser.c
index 9782190a9ee58de36e975666b0b4b4e5653036ae..5db31438027109588ea50018a4875bfd64ae9521 100644 (file)
@@ -210,10 +210,10 @@ iscsi_iser_ctask_xmit(struct iscsi_conn *conn,
        int error = 0;
 
        if (ctask->sc->sc_data_direction == DMA_TO_DEVICE) {
-               BUG_ON(ctask->sc->request_bufflen == 0);
+               BUG_ON(scsi_bufflen(ctask->sc) == 0);
 
                debug_scsi("cmd [itt %x total %d imm %d unsol_data %d\n",
-                          ctask->itt, ctask->sc->request_bufflen,
+                          ctask->itt, scsi_bufflen(ctask->sc),
                           ctask->imm_count, ctask->unsol_count);
        }
 
@@ -373,7 +373,8 @@ static struct iscsi_transport iscsi_iser_transport;
 static struct iscsi_cls_session *
 iscsi_iser_session_create(struct iscsi_transport *iscsit,
                         struct scsi_transport_template *scsit,
-                         uint32_t initial_cmdsn, uint32_t *hostno)
+                        uint16_t cmds_max, uint16_t qdepth,
+                        uint32_t initial_cmdsn, uint32_t *hostno)
 {
        struct iscsi_cls_session *cls_session;
        struct iscsi_session *session;
@@ -384,7 +385,13 @@ iscsi_iser_session_create(struct iscsi_transport *iscsit,
        struct iscsi_iser_cmd_task *iser_ctask;
        struct iser_desc *desc;
 
+       /*
+        * we do not support setting can_queue cmd_per_lun from userspace yet
+        * because we preallocate so many resources
+        */
        cls_session = iscsi_session_setup(iscsit, scsit,
+                                         ISCSI_DEF_XMIT_CMDS_MAX,
+                                         ISCSI_MAX_CMD_PER_LUN,
                                          sizeof(struct iscsi_iser_cmd_task),
                                          sizeof(struct iser_desc),
                                          initial_cmdsn, &hn);
@@ -543,7 +550,7 @@ iscsi_iser_ep_disconnect(__u64 ep_handle)
 static struct scsi_host_template iscsi_iser_sht = {
        .name                   = "iSCSI Initiator over iSER, v." DRV_VER,
        .queuecommand           = iscsi_queuecommand,
-       .can_queue              = ISCSI_XMIT_CMDS_MAX - 1,
+       .can_queue              = ISCSI_DEF_XMIT_CMDS_MAX - 1,
        .sg_tablesize           = ISCSI_ISER_SG_TABLESIZE,
        .max_sectors            = 1024,
        .cmd_per_lun            = ISCSI_MAX_CMD_PER_LUN,
@@ -576,6 +583,7 @@ static struct iscsi_transport iscsi_iser_transport = {
                                  ISCSI_USERNAME | ISCSI_PASSWORD |
                                  ISCSI_USERNAME_IN | ISCSI_PASSWORD_IN,
        .host_param_mask        = ISCSI_HOST_HWADDRESS |
+                                 ISCSI_HOST_NETDEV_NAME |
                                  ISCSI_HOST_INITIATOR_NAME,
        .host_template          = &iscsi_iser_sht,
        .conndata_size          = sizeof(struct iscsi_conn),
@@ -629,7 +637,7 @@ static int __init iser_init(void)
        ig.desc_cache = kmem_cache_create("iser_descriptors",
                                          sizeof (struct iser_desc),
                                          0, SLAB_HWCACHE_ALIGN,
-                                         NULL, NULL);
+                                         NULL);
        if (ig.desc_cache == NULL)
                return -ENOMEM;