Lines Matching refs:pipes
127 /* pipe ID - index into goldfish_pipe_dev::pipes array */
144 /* doubly linked list of signalled pipes, protected by
177 * - pipes, pipes_capacity
178 * - [*pipes, *pipes + pipes_capacity) - array data
183 * in all allocated pipes
187 * the only operation that happens often is the signalled pipes array
195 * Array of the pipes of |pipes_capacity| elements,
198 struct goldfish_pipe **pipes;
204 /* Head of a doubly linked list of signalled pipes */
525 pipe = dev->pipes[id];
582 /* Iterate over the signalled pipes and wake them one by one */
611 * 2. IRQ handler reads the signalled pipes and their count from the device
613 * it only resets the IRQ if it has returned all signalled pipes,
616 * 4. IRQ handler adds all returned pipes to the device's signalled pipes list
617 * 5. IRQ handler launches a tasklet to process the signalled pipes from the
630 /* Request the signalled pipes from the device */
657 if (!dev->pipes[id])
666 struct goldfish_pipe **pipes =
667 kcalloc(new_capacity, sizeof(*pipes), GFP_ATOMIC);
668 if (!pipes)
670 memcpy(pipes, dev->pipes, sizeof(*pipes) * dev->pipes_capacity);
671 kfree(dev->pipes);
672 dev->pipes = pipes;
735 dev->pipes[id] = pipe;
754 dev->pipes[id] = NULL;
773 dev->pipes[pipe->id] = NULL;
835 dev->pipes = kcalloc(dev->pipes_capacity, sizeof(*dev->pipes),
837 if (!dev->pipes) {
852 kfree(dev->pipes);
878 kfree(dev->pipes);