• Home
  • Raw
  • Download

Lines Matching refs:winch

595 struct winch {  struct
607 struct winch *winch = container_of(work, struct winch, work); in __free_winch() argument
608 um_free_irq(WINCH_IRQ, winch); in __free_winch()
610 if (winch->pid != -1) in __free_winch()
611 os_kill_process(winch->pid, 1); in __free_winch()
612 if (winch->stack != 0) in __free_winch()
613 free_stack(winch->stack, 0); in __free_winch()
614 kfree(winch); in __free_winch()
617 static void free_winch(struct winch *winch) in free_winch() argument
619 int fd = winch->fd; in free_winch()
620 winch->fd = -1; in free_winch()
623 list_del(&winch->list); in free_winch()
624 __free_winch(&winch->work); in free_winch()
629 struct winch *winch = data; in winch_interrupt() local
632 int fd = winch->fd; in winch_interrupt()
640 winch->fd = -1; in winch_interrupt()
641 list_del(&winch->list); in winch_interrupt()
646 "support\n", winch->tty_fd); in winch_interrupt()
647 INIT_WORK(&winch->work, __free_winch); in winch_interrupt()
648 schedule_work(&winch->work); in winch_interrupt()
654 tty = tty_port_tty_get(winch->port); in winch_interrupt()
665 if (winch->fd != -1) in winch_interrupt()
666 reactivate_fd(winch->fd, WINCH_IRQ); in winch_interrupt()
673 struct winch *winch; in register_winch_irq() local
675 winch = kmalloc(sizeof(*winch), GFP_KERNEL); in register_winch_irq()
676 if (winch == NULL) { in register_winch_irq()
681 *winch = ((struct winch) { .list = LIST_HEAD_INIT(winch->list), in register_winch_irq()
689 IRQF_SHARED, "winch", winch) < 0) { in register_winch_irq()
696 list_add(&winch->list, &winch_handlers); in register_winch_irq()
702 kfree(winch); in register_winch_irq()
713 struct winch *winch; in unregister_winch() local
719 winch = list_entry(ele, struct winch, list); in unregister_winch()
720 wtty = tty_port_tty_get(winch->port); in unregister_winch()
722 free_winch(winch); in unregister_winch()
733 struct winch *winch; in winch_cleanup() local
738 winch = list_entry(ele, struct winch, list); in winch_cleanup()
739 free_winch(winch); in winch_cleanup()