]> git.baikalelectronics.ru Git - kernel.git/commit
be2iscsi: Couple MCC tag and WRB alloc and free
authorJitendra Bhivare <jitendra.bhivare@broadcom.com>
Thu, 4 Feb 2016 10:19:17 +0000 (15:49 +0530)
committerMartin K. Petersen <martin.petersen@oracle.com>
Wed, 24 Feb 2016 02:27:02 +0000 (21:27 -0500)
commit4efd010c7a23de79bb1d9dc3499c5482ae7d5b70
tree74349555eec0766a33678016b958801efee26b01
parent6870e9118d17201d0341862372e1d653872f339c
be2iscsi: Couple MCC tag and WRB alloc and free

WARN_ON(atomic_read(&mccq->used) >= mccq->len) seen when FW gets into
UE.

MCCQ overflow is happening because driver discards any new request and
frees up the tag. The tag allocation controls the number of MCC WRB
posted.  It is being replenished but WRBs are not hence the WARN_ON.

Allocation and freeing of WRB and tags for MCC is now done in one place.
This helps to achieve proper accounting of WRB indices and MCC tags.

Signed-off-by: Jitendra Bhivare <jitendra.bhivare@broadcom.com>
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/be2iscsi/be.h
drivers/scsi/be2iscsi/be_cmds.c
drivers/scsi/be2iscsi/be_cmds.h
drivers/scsi/be2iscsi/be_main.c
drivers/scsi/be2iscsi/be_mgmt.c