aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/be2iscsi/be_mgmt.h
diff options
context:
space:
mode:
authorJohn Soni Jose <sony.john@avagotech.com>2015-08-19 19:14:30 -0400
committerJames Bottomley <JBottomley@Odin.com>2015-11-09 18:48:03 -0500
commit340c99e9adacfe1bc7dd50eec4d4fa3203288042 (patch)
tree603ff2cc9039752e4aec81c69caf33e3618266b8 /drivers/scsi/be2iscsi/be_mgmt.h
parent40998193560dab6c3ce8d25f4fa58a23e252ef38 (diff)
be2iscsi: Fix updating the next pointer during WRB posting
While posting WRB the next_pointer of the current WRB should point to itself and the previous WRB next_pointer should point to the current WRB. The next pointer value was retrieved during alloc_pdu and was updated in wrb before ringing the doorbell. The fix retrieves the next_pointer just before ringing the doorbell and updates in the WRB. Signed-off-by: John Soni Jose <sony.john@avagotech.com> Reviewed-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <JBottomley@Odin.com>
Diffstat (limited to 'drivers/scsi/be2iscsi/be_mgmt.h')
-rw-r--r--drivers/scsi/be2iscsi/be_mgmt.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/scsi/be2iscsi/be_mgmt.h b/drivers/scsi/be2iscsi/be_mgmt.h
index afa326da75c6..c1dbb690ee27 100644
--- a/drivers/scsi/be2iscsi/be_mgmt.h
+++ b/drivers/scsi/be2iscsi/be_mgmt.h
@@ -330,10 +330,13 @@ ssize_t beiscsi_phys_port_disp(struct device *dev,
330 330
331void beiscsi_offload_cxn_v0(struct beiscsi_offload_params *params, 331void beiscsi_offload_cxn_v0(struct beiscsi_offload_params *params,
332 struct wrb_handle *pwrb_handle, 332 struct wrb_handle *pwrb_handle,
333 struct be_mem_descriptor *mem_descr); 333 struct be_mem_descriptor *mem_descr,
334 struct hwi_wrb_context *pwrb_context);
334 335
335void beiscsi_offload_cxn_v2(struct beiscsi_offload_params *params, 336void beiscsi_offload_cxn_v2(struct beiscsi_offload_params *params,
336 struct wrb_handle *pwrb_handle); 337 struct wrb_handle *pwrb_handle,
338 struct hwi_wrb_context *pwrb_context);
339
337void beiscsi_ue_detect(struct beiscsi_hba *phba); 340void beiscsi_ue_detect(struct beiscsi_hba *phba);
338int be_cmd_modify_eq_delay(struct beiscsi_hba *phba, 341int be_cmd_modify_eq_delay(struct beiscsi_hba *phba,
339 struct be_set_eqd *, int num); 342 struct be_set_eqd *, int num);