Scroll to navigation

STRUCT PIPE_INODE_IN(9) pipes API STRUCT PIPE_INODE_IN(9)

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;
  unsigned int buffers;
  unsigned int readers;
  unsigned int writers;
  unsigned int waiting_writers;
  unsigned int r_counter;
  unsigned int w_counter;
  struct page * tmp_page;
  struct fasync_struct * fasync_readers;
  struct fasync_struct * fasync_writers;
  struct inode * inode;
  struct pipe_buffer * bufs;
#ifndef __GENKSYMS__
  struct user_struct * user;
#endif
};  

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
buffers
total number of buffers (should be a power of 2)
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
tmp_page
cached released page
fasync_readers
reader side fasync
fasync_writers
writer side fasync
inode
inode this pipe is attached to
bufs
the circular array of pipe buffers
user
the user who created this pipe

COPYRIGHT

March 2016 Kernel Hackers Manual 3.2.