/* * Unified info structure. This is pointed to by both the dentry and * inode structures. Each file in the filesystem has an instance of this * structure. It holds a reference to the dentry, so dentries are never * flushed while the file exists. All name lookups are dealt with at the * dentry level, although the filesystem can interfere in the validation * process. Readdir is implemented by traversing the dentry lists.
*/ struct autofs_info { struct dentry *dentry; int flags;
struct completion expire_complete;
struct list_head active;
struct list_head expiring;
struct autofs_sb_info *sbi; unsignedlong exp_timeout; unsignedlong last_used; int count;
kuid_t uid;
kgid_t gid; struct rcu_head rcu;
};
#define AUTOFS_INF_EXPIRING (1<<0) /* dentry in the process of expiring */ #define AUTOFS_INF_WANT_EXPIRE (1<<1) /* the dentry is being considered * for expiry, so RCU_walk is * not permitted. If it progresses to * actual expiry attempt, the flag is * not cleared when EXPIRING is set - * in that case it gets cleared only * when it comes to clearing EXPIRING.
*/ #define AUTOFS_INF_PENDING (1<<2) /* dentry pending mount */
#define AUTOFS_INF_EXPIRE_SET (1<<3) /* per-dentry expire timeout set for this mount point.
*/ struct autofs_wait_queue {
wait_queue_head_t queue; struct autofs_wait_queue *next;
autofs_wqt_t wait_queue_token; /* We use the following to see what we are waiting for */ struct qstr name;
u32 offset;
u32 dev;
u64 ino;
kuid_t uid;
kgid_t gid;
pid_t pid;
pid_t tgid; /* This is for status reporting upon return */ int status; unsignedint wait_ctr;
};
/* autofs_oz_mode(): do we see the man behind the curtain? (The * processes which do manipulations for us in user space sees the raw * filesystem without "magic".)
*/ staticinlineint autofs_oz_mode(struct autofs_sb_info *sbi)
{ return ((sbi->flags & AUTOFS_SBI_CATATONIC) ||
task_pgrp(current) == sbi->oz_pgrp);
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.