emlxs_pkt.c (a9800beb) | emlxs_pkt.c (8f23e9fa) |
---|---|
1/* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License (the "License"). 6 * You may not use this file except in compliance with the License. 7 * | 1/* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License (the "License"). 6 * You may not use this file except in compliance with the License. 7 * |
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9 * or http://www.opensolaris.org/os/licensing. | 8 * You can obtain a copy of the license at 9 * http://www.opensource.org/licenses/cddl1.txt. |
10 * See the License for the specific language governing permissions 11 * and limitations under the License. 12 * 13 * When distributing Covered Code, include this CDDL HEADER in each 14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15 * If applicable, add the following below this CDDL HEADER, with the 16 * fields enclosed by brackets "[]" replaced with your own identifying 17 * information: Portions Copyright [yyyy] [name of copyright owner] 18 * 19 * CDDL HEADER END 20 */ 21 22/* | 10 * See the License for the specific language governing permissions 11 * and limitations under the License. 12 * 13 * When distributing Covered Code, include this CDDL HEADER in each 14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15 * If applicable, add the following below this CDDL HEADER, with the 16 * fields enclosed by brackets "[]" replaced with your own identifying 17 * information: Portions Copyright [yyyy] [name of copyright owner] 18 * 19 * CDDL HEADER END 20 */ 21 22/* |
23 * Copyright 2010 Emulex. All rights reserved. | 23 * Copyright (c) 2004-2011 Emulex. All rights reserved. |
24 * Use is subject to license terms. 25 */ 26 | 24 * Use is subject to license terms. 25 */ 26 |
27 | |
28#include <emlxs.h> 29 30/* Required for EMLXS_CONTEXT in EMLXS_MSGF calls */ 31EMLXS_MSG_DEF(EMLXS_PKT_C); 32 33#if (EMLXS_MODREV >= EMLXS_MODREV3) | 27#include <emlxs.h> 28 29/* Required for EMLXS_CONTEXT in EMLXS_MSGF calls */ 30EMLXS_MSG_DEF(EMLXS_PKT_C); 31 32#if (EMLXS_MODREV >= EMLXS_MODREV3) |
34typedef struct _emlxs_pkt_cookie_t | 33typedef struct |
35{ 36 ddi_dma_cookie_t pkt_cmd_cookie; 37 ddi_dma_cookie_t pkt_resp_cookie; 38 ddi_dma_cookie_t pkt_data_cookie; 39 40} emlxs_pkt_cookie_t; 41#endif /* >= EMLXS_MODREV3 */ 42 --- 10 unchanged lines hidden (view full) --- 53 sbp = PKT2PRIV(pkt); 54 port = sbp->port; 55 56 /* Send the pkt now */ 57 rval = emlxs_pkt_send(pkt, 1); 58 59 if (rval != FC_SUCCESS) { 60 EMLXS_MSGF(EMLXS_CONTEXT, &emlxs_pkt_trans_msg, | 34{ 35 ddi_dma_cookie_t pkt_cmd_cookie; 36 ddi_dma_cookie_t pkt_resp_cookie; 37 ddi_dma_cookie_t pkt_data_cookie; 38 39} emlxs_pkt_cookie_t; 40#endif /* >= EMLXS_MODREV3 */ 41 --- 10 unchanged lines hidden (view full) --- 52 sbp = PKT2PRIV(pkt); 53 port = sbp->port; 54 55 /* Send the pkt now */ 56 rval = emlxs_pkt_send(pkt, 1); 57 58 if (rval != FC_SUCCESS) { 59 EMLXS_MSGF(EMLXS_CONTEXT, &emlxs_pkt_trans_msg, |
61 "Deferred emlxs_pkt_send failed: status=%x pkt=%p", rval, | 60 "Deferred pkt_send failed: status=%x pkt=%p", rval, |
62 pkt); 63 64 if (pkt->pkt_comp) { 65 emlxs_set_pkt_state(sbp, IOSTAT_LOCAL_REJECT, 0, 1); 66 67 ((CHANNEL *)sbp->channel)->ulpCmplCmd++; 68 (*pkt->pkt_comp) (pkt); 69 } else { --- 355 unchanged lines hidden --- | 61 pkt); 62 63 if (pkt->pkt_comp) { 64 emlxs_set_pkt_state(sbp, IOSTAT_LOCAL_REJECT, 0, 1); 65 66 ((CHANNEL *)sbp->channel)->ulpCmplCmd++; 67 (*pkt->pkt_comp) (pkt); 68 } else { --- 355 unchanged lines hidden --- |