Lines Matching refs:afd

458 	afd_t *afd = &curthread->t_activefd;  in clear_stale_fd()  local
462 for (i = 0; i < afd->a_nfd; i++) { in clear_stale_fd()
464 ASSERT(afd->a_fd[i] == -1); in clear_stale_fd()
465 afd->a_fd[i] = -1; in clear_stale_fd()
467 afd->a_stale = 0; in clear_stale_fd()
471 free_afd(afd_t *afd) /* called below and from thread_free() */ in free_afd() argument
476 if (afd->a_nfd > sizeof (afd->a_buf) / sizeof (afd->a_buf[0])) { in free_afd()
478 kmem_free(afd->a_fd, afd->a_nfd * sizeof (afd->a_fd[0])); in free_afd()
482 afd->a_fd = &afd->a_buf[0]; in free_afd()
483 afd->a_nfd = sizeof (afd->a_buf) / sizeof (afd->a_buf[0]); in free_afd()
484 afd->a_stale = 0; in free_afd()
485 for (i = 0; i < afd->a_nfd; i++) in free_afd()
486 afd->a_fd[i] = -1; in free_afd()
492 afd_t *afd = &curthread->t_activefd; in set_active_fd() local
499 if (afd->a_nfd == 0) { /* first time initialization */ in set_active_fd()
501 mutex_enter(&afd->a_fdlock); in set_active_fd()
502 free_afd(afd); in set_active_fd()
503 mutex_exit(&afd->a_fdlock); in set_active_fd()
507 for (i = 0; i < afd->a_nfd; i++) { in set_active_fd()
508 if (afd->a_fd[i] == -1) { in set_active_fd()
509 afd->a_fd[i] = fd; in set_active_fd()
518 old_nfd = afd->a_nfd; in set_active_fd()
519 old_fd = afd->a_fd; in set_active_fd()
521 new_fd = kmem_alloc(new_nfd * sizeof (afd->a_fd[0]), KM_SLEEP); in set_active_fd()
525 mutex_enter(&afd->a_fdlock); in set_active_fd()
526 afd->a_fd = new_fd; in set_active_fd()
527 afd->a_nfd = new_nfd; in set_active_fd()
529 afd->a_fd[i] = old_fd[i]; in set_active_fd()
530 afd->a_fd[i] = fd; in set_active_fd()
531 mutex_exit(&afd->a_fdlock); in set_active_fd()
533 if (old_nfd > sizeof (afd->a_buf) / sizeof (afd->a_buf[0])) { in set_active_fd()
535 kmem_free(old_fd, old_nfd * sizeof (afd->a_fd[0])); in set_active_fd()
542 afd_t *afd = &curthread->t_activefd; in clear_active_fd() local
545 for (i = 0; i < afd->a_nfd; i++) { in clear_active_fd()
546 if (afd->a_fd[i] == fd) { in clear_active_fd()
547 afd->a_fd[i] = -1; in clear_active_fd()
551 ASSERT(i < afd->a_nfd); /* not found is not ok */ in clear_active_fd()
560 afd_t *afd = &t->t_activefd; in is_active_fd() local
564 mutex_enter(&afd->a_fdlock); in is_active_fd()
566 for (i = 0; i < afd->a_nfd; i++) { in is_active_fd()
567 if (afd->a_fd[i] == fd) { in is_active_fd()
568 mutex_exit(&afd->a_fdlock); in is_active_fd()
572 mutex_exit(&afd->a_fdlock); in is_active_fd()