@@ -3837,29 +3837,34 @@ int mpi3mr_init_ioc(struct mpi3mr_ioc *mrioc)
3837
3837
3838
3838
mpi3mr_print_ioc_info (mrioc );
3839
3839
3840
- dprint_init (mrioc , "allocating config page buffers\n" );
3841
- mrioc -> cfg_page = dma_alloc_coherent (& mrioc -> pdev -> dev ,
3842
- MPI3MR_DEFAULT_CFG_PAGE_SZ , & mrioc -> cfg_page_dma , GFP_KERNEL );
3843
3840
if (!mrioc -> cfg_page ) {
3844
- retval = -1 ;
3845
- goto out_failed_noretry ;
3841
+ dprint_init (mrioc , "allocating config page buffers\n" );
3842
+ mrioc -> cfg_page_sz = MPI3MR_DEFAULT_CFG_PAGE_SZ ;
3843
+ mrioc -> cfg_page = dma_alloc_coherent (& mrioc -> pdev -> dev ,
3844
+ mrioc -> cfg_page_sz , & mrioc -> cfg_page_dma , GFP_KERNEL );
3845
+ if (!mrioc -> cfg_page ) {
3846
+ retval = -1 ;
3847
+ goto out_failed_noretry ;
3848
+ }
3846
3849
}
3847
3850
3848
- mrioc -> cfg_page_sz = MPI3MR_DEFAULT_CFG_PAGE_SZ ;
3849
-
3850
- retval = mpi3mr_alloc_reply_sense_bufs ( mrioc );
3851
- if ( retval ) {
3852
- ioc_err ( mrioc ,
3853
- "%s :Failed to allocated reply sense buffers %d\n" ,
3854
- __func__ , retval ) ;
3855
- goto out_failed_noretry ;
3851
+ if (! mrioc -> init_cmds . reply ) {
3852
+ retval = mpi3mr_alloc_reply_sense_bufs ( mrioc );
3853
+ if ( retval ) {
3854
+ ioc_err ( mrioc ,
3855
+ "%s :Failed to allocated reply sense buffers %d\n" ,
3856
+ __func__ , retval );
3857
+ goto out_failed_noretry ;
3858
+ }
3856
3859
}
3857
3860
3858
- retval = mpi3mr_alloc_chain_bufs (mrioc );
3859
- if (retval ) {
3860
- ioc_err (mrioc , "Failed to allocated chain buffers %d\n" ,
3861
- retval );
3862
- goto out_failed_noretry ;
3861
+ if (!mrioc -> chain_sgl_list ) {
3862
+ retval = mpi3mr_alloc_chain_bufs (mrioc );
3863
+ if (retval ) {
3864
+ ioc_err (mrioc , "Failed to allocated chain buffers %d\n" ,
3865
+ retval );
3866
+ goto out_failed_noretry ;
3867
+ }
3863
3868
}
3864
3869
3865
3870
retval = mpi3mr_issue_iocinit (mrioc );
0 commit comments