taglinefilesource code
fa1224drivers/char/tty_io.cstruct fasync_struct *fa, *prev;
fa1230drivers/char/tty_io.cfor (fa = tty->fasync, prev = 0; fa; prev= fa, fa = fa->fa_next) {
fa1231drivers/char/tty_io.cif (fa->fa_file == filp)
fa1236drivers/char/tty_io.cif (fa)
fa1238drivers/char/tty_io.cfa = (struct fasync_struct *)kmalloc(sizeof(struct fasync_struct), GFP_KERNEL);
fa1239drivers/char/tty_io.cif (!fa)
fa1241drivers/char/tty_io.cfa->magic = FASYNC_MAGIC;
fa1242drivers/char/tty_io.cfa->fa_file = filp;
fa1243drivers/char/tty_io.cfa->fa_next = tty->fasync;
fa1244drivers/char/tty_io.ctty->fasync = fa;
fa1254drivers/char/tty_io.cif (!fa)
fa1257drivers/char/tty_io.cprev->fa_next = fa->fa_next;
fa1259drivers/char/tty_io.ctty->fasync = fa->fa_next;
fa1260drivers/char/tty_io.ckfree_s(fa, sizeof(struct fasync_struct));
fa174fs/fcntl.cvoid kill_fasync(struct fasync_struct *fa, int sig)
fa176fs/fcntl.cwhile (fa) {
fa177fs/fcntl.cif (fa->magic != FASYNC_MAGIC) {
fa182fs/fcntl.cif (fa->fa_file->f_owner > 0)
fa183fs/fcntl.ckill_proc(fa->fa_file->f_owner, sig, 1);
fa185fs/fcntl.ckill_pg(-fa->fa_file->f_owner, sig, 1);
fa186fs/fcntl.cfa = fa->fa_next;
fa17fs/nfs/cache.cvoid nfs_bl_cache_revalidate(nfs_cache *nh, struct fattr fa)
fa395include/linux/fs.hextern void kill_fasync(struct fasync_struct *fa, int sig);
fa408net/socket.cstruct fasync_struct *fa, *fna=NULL, **prev;
fa426net/socket.cfor(fa=*prev; fa!=NULL; prev=&fa->fa_next,fa=*prev)
fa427net/socket.cif(fa->fa_file==filp)
fa432net/socket.cif(fa!=NULL)
fa445net/socket.cif(fa!=NULL)
fa447net/socket.c*prev=fa->fa_next;
fa448net/socket.ckfree_s(fa,sizeof(struct fasync_struct));