Name

struct pipe_inode_info — a linux kernel pipe

Synopsis

struct pipe_inode_info {
  wait_queue_head_t wait;
  unsigned int nrbufs;
  unsigned int curbuf;
  struct page * tmp_page;
  unsigned int readers;
  unsigned int writers;
  unsigned int waiting_writers;
  unsigned int r_counter;
  unsigned int w_counter;
  struct fasync_struct * fasync_readers;
  struct fasync_struct * fasync_writers;
  struct inode * inode;
  struct pipe_buffer bufs[PIPE_BUFFERS];
};  

Members

wait

reader/writer wait point in case of empty/full pipe

nrbufs

the number of non-empty pipe buffers in this pipe

curbuf

the current pipe buffer entry

tmp_page

cached released page

readers

number of current readers of this pipe

writers

number of current writers of this pipe

waiting_writers

number of writers blocked waiting for room

r_counter

reader counter

w_counter

writer counter

fasync_readers

reader side fasync

fasync_writers

writer side fasync

inode

inode this pipe is attached to

bufs[PIPE_BUFFERS]

the circular array of pipe buffers