_base_release_memory_pools(ioc);
                goto retry_allocation;
        }
+       memset(ioc->request, 0, sz);
 
        if (retry_sz)
                ioc_err(ioc, "request pool: dma_alloc_coherent succeed: hba_depth(%d), chains_per_io(%d), frame_sz(%d), total(%d kb)\n",
        ioc->base_cmds.status = MPT3_CMD_PENDING;
        request = mpt3sas_base_get_msg_frame(ioc, smid);
        ioc->base_cmds.smid = smid;
+       memset(request, 0, ioc->request_sz);
        memcpy(request, mpi_request, sizeof(Mpi2SepReply_t));
        init_completion(&ioc->base_cmds.done);
        ioc->put_smid_default(ioc, smid);
 
        ioc->ctl_cmds.status = MPT3_CMD_PENDING;
        memset(ioc->ctl_cmds.reply, 0, ioc->reply_sz);
        request = mpt3sas_base_get_msg_frame(ioc, smid);
+       memset(request, 0, ioc->request_sz);
        memcpy(request, mpi_request, karg.data_sge_offset*4);
        ioc->ctl_cmds.smid = smid;
        data_out_sz = karg.data_out_size;