• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/scsi/lpfc/

Lines Matching refs:sglq

467  * __lpfc_clear_active_sglq - Remove the active sglq for this XRI.
471 * This function clears the sglq pointer from the array of acive
472 * sglq's. The xritag that is passed in is used to index into the
476 * Returns sglq ponter = success, NULL = Failure.
482 struct lpfc_sglq *sglq;
486 sglq = phba->sli4_hba.lpfc_sglq_active_list[adj_xri];
488 return sglq;
492 * __lpfc_get_active_sglq - Get the active sglq for this XRI.
496 * This function returns the sglq pointer from the array of acive
497 * sglq's. The xritag that is passed in is used to index into the
501 * Returns sglq ponter = success, NULL = Failure.
507 struct lpfc_sglq *sglq;
511 sglq = phba->sli4_hba.lpfc_sglq_active_list[adj_xri];
512 return sglq;
520 * Gets a new driver sglq object from the sglq list. If the
522 * allocated sglq object else it returns NULL.
528 struct lpfc_sglq *sglq = NULL;
530 list_remove_head(lpfc_sgl_list, sglq, struct lpfc_sglq, list);
531 if (!sglq)
533 adj_xri = sglq->sli4_xritag - phba->sli4_hba.max_cfg_param.xri_base;
534 phba->sli4_hba.lpfc_sglq_active_list[adj_xri] = sglq;
535 sglq->state = SGL_ALLOCATED;
536 return sglq;
571 * active array of sglq. The get of the sglq pointer also clears
573 * this IO was aborted then the sglq entry it put on the
575 * IO has good status or fails for any other reason then the sglq
581 struct lpfc_sglq *sglq;
587 sglq = NULL;
589 sglq = __lpfc_clear_active_sglq(phba, iocbq->sli4_xritag);
590 if (sglq) {
592 (sglq->state != SGL_XRI_ABORTED)) {
595 list_add(&sglq->list,
600 sglq->state = SGL_FREED;
601 list_add(&sglq->list, &phba->sli4_hba.lpfc_sgl_list);
5822 * @sglq: Pointer to the scatter gather queue object.
5837 struct lpfc_sglq *sglq)
5847 if (!piocbq || !sglq)
5850 sgl = (struct sli4_sge *)sglq->sgl;
5897 return sglq->sli4_xritag;
6261 struct lpfc_sglq *sglq;
6268 sglq = NULL;
6279 sglq = __lpfc_sli_get_sglq(phba);
6280 if (!sglq) {
6292 sglq = NULL; /* These IO's already have an XRI and
6297 * sglq is on the active list
6299 sglq = __lpfc_get_active_sglq(phba, piocb->sli4_xritag);
6300 if (!sglq)
6304 if (sglq) {
6305 piocb->sli4_xritag = sglq->sli4_xritag;
6307 if (NO_XRI == lpfc_sli4_bpl2sgl(phba, piocb, sglq))
12879 struct lpfc_sglq *sglq;
12891 sglq = __lpfc_sli_get_sglq(phba);
12892 if (!sglq) {
12901 sglq = __lpfc_clear_active_sglq(phba,
12902 sglq->sli4_xritag);
12914 piocbq->sli4_xritag = sglq->sli4_xritag;
12915 if (NO_XRI == lpfc_sli4_bpl2sgl(phba, piocbq, sglq))