Lines Matching defs:pcc
177 #define CUSE_CLIENT_CLOSING(pcc) \
178 ((pcc)->cflags & CUSE_CLI_IS_CLOSING)
359 struct cuse_client *pcc;
366 TAILQ_FOREACH(pcc, &pcs->hcli, entry) {
367 cuse_client_is_closing(pcc);
374 struct cuse_client *pcc;
380 TAILQ_FOREACH(pcc, &pcs->hcli, entry) {
381 if (CUSE_CLIENT_CLOSING(pcc))
384 if (pcc->cmds[n].entered == td)
385 return (&pcc->cmds[n]);
525 struct cuse_client *pcc;
529 error = devfs_get_cdevpriv((void **)&pcc);
534 if (CUSE_CLIENT_CLOSING(pcc) || pcc->server->is_closing) {
538 *ppcc = pcc;
543 cuse_client_is_closing(struct cuse_client *pcc)
548 if (CUSE_CLIENT_CLOSING(pcc))
551 pcc->cflags |= CUSE_CLI_IS_CLOSING;
552 pcc->server_dev = NULL;
555 pccmd = &pcc->cmds[n];
558 TAILQ_REMOVE(&pcc->server->head, pccmd, entry);
672 struct cuse_client *pcc;
682 TAILQ_FOREACH(pcc, &pcs->hcli, entry) {
683 if (pcc->server_dev == pcsd)
684 cuse_client_is_closing(pcc);
1069 struct cuse_client *pcc;
1071 TAILQ_FOREACH(pcc, &pcs->hcli, entry) {
1072 pcc->cflags |= (CUSE_CLI_KNOTE_NEED_READ |
1110 struct cuse_client *pcc;
1260 pcc = pccmd->client;
1262 pcc->cmds[n].sub.per_file_handle = *(uintptr_t *)data;
1456 struct cuse_client *pcc = arg;
1461 pcs = pcc->server;
1464 cuse_client_is_closing(pcc);
1465 TAILQ_REMOVE(&pcs->hcli, pcc, entry);
1469 pccmd = &pcc->cmds[n];
1475 free(pcc, M_CUSE);
1486 struct cuse_client *pcc;
1516 pcc = malloc(sizeof(*pcc), M_CUSE, M_WAITOK | M_ZERO);
1517 if (devfs_set_cdevpriv(pcc, &cuse_client_free)) {
1521 free(pcc, M_CUSE);
1524 pcc->fflags = fflags;
1525 pcc->server_dev = pcsd;
1526 pcc->server = pcs;
1529 pccmd = &pcc->cmds[n];
1533 pccmd->client = pcc;
1544 TAILQ_INSERT_TAIL(&pcs->hcli, pcc, entry);
1558 pccmd = &pcc->cmds[CUSE_CMD_OPEN];
1563 cuse_client_send_command_locked(pccmd, 0, 0, pcc->fflags, 0);
1586 struct cuse_client *pcc;
1590 error = cuse_client_get(&pcc);
1594 pccmd = &pcc->cmds[CUSE_CMD_CLOSE];
1595 pcs = pcc->server;
1600 cuse_client_send_command_locked(pccmd, 0, 0, pcc->fflags, 0);
1605 cuse_client_is_closing(pcc);
1612 cuse_client_kqfilter_poll(struct cdev *dev, struct cuse_client *pcc)
1614 struct cuse_server *pcs = pcc->server;
1618 temp = (pcc->cflags & (CUSE_CLI_KNOTE_HAS_READ |
1620 pcc->cflags &= ~(CUSE_CLI_KNOTE_NEED_READ |
1631 pcc->cflags |= CUSE_CLI_KNOTE_NEED_READ;
1633 pcc->cflags |= CUSE_CLI_KNOTE_NEED_WRITE;
1636 cuse_server_wakeup_locked(pcc->server);
1646 struct cuse_client *pcc;
1652 error = cuse_client_get(&pcc);
1656 pccmd = &pcc->cmds[CUSE_CMD_READ];
1657 pcs = pcc->server;
1676 pcc->read_base = (uintptr_t)uio->uio_iov->iov_base;
1677 pcc->read_length = len;
1681 (unsigned long)(unsigned int)len, pcc->fflags, ioflag);
1689 pcc->read_base = 0;
1690 pcc->read_length = 0;
1702 temp = copyout(pcc->read_buffer,
1726 cuse_client_kqfilter_poll(dev, pcc);
1735 struct cuse_client *pcc;
1740 error = cuse_client_get(&pcc);
1744 pccmd = &pcc->cmds[CUSE_CMD_WRITE];
1745 pcs = pcc->server;
1763 pcc->write_buffer, len);
1771 pcc->write_base = (uintptr_t)uio->uio_iov->iov_base;
1772 pcc->write_length = len;
1776 (unsigned long)(unsigned int)len, pcc->fflags, ioflag);
1785 pcc->write_base = 0;
1786 pcc->write_length = 0;
1815 cuse_client_kqfilter_poll(dev, pcc);
1825 struct cuse_client *pcc;
1830 error = cuse_client_get(&pcc);
1838 pccmd = &pcc->cmds[CUSE_CMD_IOCTL];
1839 pcs = pcc->server;
1844 memcpy(pcc->ioctl_buffer, data, len);
1855 (unsigned long)cmd, pcc->fflags,
1868 memcpy(data, pcc->ioctl_buffer, len);
1873 cuse_client_kqfilter_poll(dev, pcc);
1882 struct cuse_client *pcc;
1888 error = cuse_client_get(&pcc);
1893 pcs = pcc->server;
1904 pccmd = &pcc->cmds[CUSE_CMD_POLL];
1914 0, temp, pcc->fflags, IO_NDELAY);
1944 struct cuse_client *pcc;
1947 error = cuse_client_get(&pcc);
1951 return (cuse_common_mmap_single(pcc->server, offset, size, object));
1957 struct cuse_client *pcc;
1960 pcc = kn->kn_hook;
1961 pcs = pcc->server;
1971 struct cuse_client *pcc;
1974 pcc = kn->kn_hook;
1975 pcs = pcc->server;
1985 struct cuse_client *pcc;
1987 pcc = kn->kn_hook;
1989 mtx_assert(&pcc->server->mtx, MA_OWNED);
1991 return ((pcc->cflags & CUSE_CLI_KNOTE_NEED_READ) ? 1 : 0);
1997 struct cuse_client *pcc;
1999 pcc = kn->kn_hook;
2001 mtx_assert(&pcc->server->mtx, MA_OWNED);
2003 return ((pcc->cflags & CUSE_CLI_KNOTE_NEED_WRITE) ? 1 : 0);
2009 struct cuse_client *pcc;
2013 error = cuse_client_get(&pcc);
2017 pcs = pcc->server;
2022 pcc->cflags |= CUSE_CLI_KNOTE_HAS_READ;
2023 kn->kn_hook = pcc;
2028 pcc->cflags |= CUSE_CLI_KNOTE_HAS_WRITE;
2029 kn->kn_hook = pcc;
2040 cuse_client_kqfilter_poll(dev, pcc);