Lines Matching refs:fdestp

149     struct fcip_dest *fdestp, int flags);
252 static void fcip_fdestp_enqueue_pkt(struct fcip_dest *fdestp,
254 static int fcip_fdestp_dequeue_pkt(struct fcip_dest *fdestp,
1928 struct fcip_dest *fdestp;
1952 fdestp = fptr->fcip_dest[hash_bucket];
1953 while (fdestp != NULL) {
1954 mutex_enter(&fdestp->fcipd_mutex);
1955 if (fdestp->fcipd_rtable) {
1957 &fdestp->fcipd_pwwn,
1960 &fdestp->fcipd_mutex);
1964 mutex_exit(&fdestp->fcipd_mutex);
1965 fdestp = fdestp->fcipd_next;
1969 if (fdestp == NULL) {
1979 mutex_enter(&fdestp->fcipd_mutex);
1980 while (fdestp->fcipd_ncmds &&
1982 mutex_exit(&fdestp->fcipd_mutex);
1986 mutex_enter(&fdestp->fcipd_mutex);
1994 if (fdestp->fcipd_ncmds) {
1997 mutex_exit(&fdestp->fcipd_mutex);
2676 struct fcip_dest *fdestp;
2697 fdestp = fcip_add_dest(fptr, frp);
2719 fcip_pkt->fcip_pkt_dest = fdestp;
2768 struct fcip_dest *fdestp;
2789 fdestp = fcip_add_dest(fptr, frp);
2791 if (fdestp != NULL) {
3771 struct fcip_dest *fdestp;
3816 fdestp = fcip_get_dest(fptr, &headerp->net_dest_addr);
3818 if (fdestp == NULL) {
3823 ASSERT(fdestp != NULL);
3825 (void) fcip_start(wq, mp, fptr, fdestp, KM_SLEEP);
4018 struct fcip_dest *fdestp;
4034 fdestp = fcip_get_dest(fptr,
4036 if (fdestp == NULL) {
4040 if (fcip_start(wq, mp, fptr, fdestp,
4073 struct fcip_dest *fdestp, int flags)
4088 ASSERT(fdestp != NULL);
4149 mutex_enter(&fdestp->fcipd_mutex);
4153 if (fdestp->fcipd_rtable == NULL) {
4154 mutex_exit(&fdestp->fcipd_mutex);
4163 fc_pkt->pkt_pd = fdestp->fcipd_pd;
4167 mutex_exit(&fdestp->fcipd_mutex);
4172 fcip_fdestp_enqueue_pkt(fdestp, fcip_pkt);
4173 fcip_pkt->fcip_pkt_dest = fdestp;
4174 fc_pkt->pkt_fca_device = fdestp->fcipd_fca_dev;
4181 fdestp->fcipd_did, fcip_pkt_callback);
4183 fdestp->fcipd_ncmds++;
4185 mutex_exit(&fdestp->fcipd_mutex);
4194 mutex_enter(&fdestp->fcipd_mutex);
4195 rval = fcip_fdestp_dequeue_pkt(fdestp, fcip_pkt);
4200 fdestp->fcipd_ncmds--;
4202 mutex_exit(&fdestp->fcipd_mutex);
4224 fcip_fdestp_enqueue_pkt(struct fcip_dest *fdestp, fcip_pkt_t *fcip_pkt)
4226 ASSERT(mutex_owned(&fdestp->fcipd_mutex));
4233 fcip_pkt->fcip_pkt_next = fdestp->fcipd_head;
4237 if (fdestp->fcipd_head != NULL) {
4238 ASSERT(fdestp->fcipd_head->fcip_pkt_prev == NULL);
4239 fdestp->fcipd_head->fcip_pkt_prev = fcip_pkt;
4242 fdestp->fcipd_head = fcip_pkt;
4253 fcip_fdestp_dequeue_pkt(struct fcip_dest *fdestp, fcip_pkt_t *fcip_pkt)
4257 ASSERT(mutex_owned(&fdestp->fcipd_mutex));
4259 fcipd_pkt = fdestp->fcipd_head;
4264 if (fcipd_pkt == fdestp->fcipd_head) {
4267 fdestp->fcipd_head =
4287 ASSERT(fdestp->fcipd_head == fcip_pkt);
4288 fdestp->fcipd_head = fcip_pkt->fcip_pkt_next;
4322 struct fcip_dest *fdestp;
4333 fdestp = fcip_pkt->fcip_pkt_dest;
4359 if (fdestp) {
4362 frp = fdestp->fcipd_rtable;
4364 mutex_enter(&fdestp->fcipd_mutex);
4368 mutex_exit(&fdestp->fcipd_mutex);
4386 mutex_exit(&fdestp->fcipd_mutex);
4434 struct fcip_dest *fdestp;
4437 fdestp = fcip_pkt->fcip_pkt_dest;
4443 * fdestp->fcipd_mutex isn't really intended to lock per
4446 mutex_enter(&fdestp->fcipd_mutex);
4451 mutex_exit(&fdestp->fcipd_mutex);
4457 ASSERT(fdestp->fcipd_rtable != NULL);
4459 rval = fcip_fdestp_dequeue_pkt(fdestp, fcip_pkt);
4460 fdestp->fcipd_ncmds--;
4461 mutex_exit(&fdestp->fcipd_mutex);
5195 struct fcip_dest *fdestp;
5246 fdestp = fcip_get_dest(fptr, &wwn);
5248 if (fdestp == NULL) {
5338 (void) fcip_start(wq, mp, fptr, fdestp, KM_SLEEP);
5919 struct fcip_dest *fdestp = NULL;
5939 /* fptr is stale, return fdestp */
5940 return (fdestp);
5949 fdestp = fptr->fcip_dest[hash_bucket];
5950 while (fdestp != NULL) {
5951 mutex_enter(&fdestp->fcipd_mutex);
5952 if (fdestp->fcipd_rtable) {
5953 if (fcip_wwn_compare(pwwn, &fdestp->fcipd_pwwn,
5956 (CE_NOTE, "found fdestp"));
5957 mutex_exit(&fdestp->fcipd_mutex);
5959 return (fdestp);
5962 mutex_exit(&fdestp->fcipd_mutex);
5963 fdestp = fdestp->fcipd_next;
6056 fdestp = fcip_add_dest(fptr, frp);
6064 fdestp = fcip_do_farp(fptr, pwwn, NULL,
6067 fdestp = NULL;
6073 fdestp = fcip_add_dest(fptr, frp);
6077 return (fdestp);
6118 struct fcip_dest *fdestp = NULL;
6124 return (fdestp);
6135 fdestp = fptr->fcip_dest[hash_bucket];
6136 while (fdestp != NULL) {
6137 mutex_enter(&fdestp->fcipd_mutex);
6138 if (fdestp->fcipd_rtable) {
6139 if (fcip_wwn_compare(pwwn, &fdestp->fcipd_pwwn,
6141 mutex_exit(&fdestp->fcipd_mutex);
6143 return (fdestp);
6146 mutex_exit(&fdestp->fcipd_mutex);
6147 fdestp = fdestp->fcipd_next;
6150 ASSERT(fdestp == NULL);
6173 struct fcip_dest *fdestp = NULL;
6180 fdestp = fptr->fcip_dest[i];
6181 while (fdestp != NULL) {
6182 mutex_destroy(&fdestp->fcipd_mutex);
6183 fdest_delp = fdestp;
6184 fdestp = fdestp->fcipd_next;
6211 struct fcip_dest *fdestp = NULL;
6221 return (fdestp);
6228 return (fdestp);
6238 return (fdestp);
6310 return (fdestp);
6338 fdestp = fcip_get_dest(fptr, pwwn);
6355 return (fdestp);
7200 struct fcip_dest *fdestp;
7286 fdestp = fptr->fcip_dest[i];
7287 while (fdestp != NULL) {
7288 mutex_enter(&fdestp->fcipd_mutex);
7289 for (fcip_pkt = fdestp->fcipd_head; fcip_pkt != NULL;
7301 mutex_exit(&fdestp->fcipd_mutex);
7310 mutex_enter(&fdestp->fcipd_mutex);
7324 fcip_pkt = fdestp->fcipd_head;
7330 mutex_exit(&fdestp->fcipd_mutex);
7331 fdestp = fdestp->fcipd_next;
7356 struct fcip_dest *fdestp;
7362 fdestp = fcip_pkt->fcip_pkt_dest;
7377 ASSERT(fdestp != NULL);
7383 mutex_enter(&fdestp->fcipd_mutex);
7384 rval = fcip_fdestp_dequeue_pkt(fdestp, fcip_pkt);
7386 mutex_exit(&fdestp->fcipd_mutex);
7401 mutex_enter(&fdestp->fcipd_mutex);
7402 rval = fcip_fdestp_dequeue_pkt(fdestp, fcip_pkt);
7404 mutex_exit(&fdestp->fcipd_mutex);
7422 struct fcip_dest *fdestp;
7446 fdestp = fptr->fcip_dest[hash_bucket];
7447 while (fdestp != NULL) {
7448 mutex_enter(&fdestp->fcipd_mutex);
7449 if (fdestp->fcipd_rtable) {
7451 &fdestp->fcipd_pwwn,
7454 &fdestp->fcipd_mutex);
7458 mutex_exit(&fdestp->fcipd_mutex);
7459 fdestp = fdestp->fcipd_next;
7463 if (fdestp == NULL) {
7469 mutex_enter(&fdestp->fcipd_mutex);
7470 if (fdestp->fcipd_ncmds) {
7476 mutex_exit(&fdestp->fcipd_mutex);
7485 fdestp->fcipd_rtable = NULL;
7486 mutex_exit(&fdestp->fcipd_mutex);
7530 struct fcip_dest *fdestp;
7535 fdestp = fptr->fcip_dest[i];
7536 while (fdestp != NULL) {
7537 mutex_enter(&fdestp->fcipd_mutex);
7539 ASSERT(fdestp->fcipd_ncmds >= 0);
7541 if (fdestp->fcipd_ncmds > 0) {
7542 num_cmds += fdestp->fcipd_ncmds;
7544 mutex_exit(&fdestp->fcipd_mutex);
7545 fdestp = fdestp->fcipd_next;