|
|
1.1 root 1: /*
2: * error file system:
3: * substituted for the original file system in inodes which
4: * someone still has open but which are unwanted;
5: * e.g. forcing an unmount of a file system with open files outstanding
6: * the various operations are all either no-ops
7: * or return errors
8: * t_put is explicitly a no-op.
9: * the idea is to prevent any real I/O,
10: * but allow the offending inodes to hang around
11: * until finally put
12: */
13: #include "sys/param.h"
14: #include "sys/user.h"
15: #include "sys/conf.h"
16: #include "sys/inode.h"
17:
18: int errnami();
19: struct fstypsw erfs = fsinit(nulldev, nulldev, nodev, nodev,
20: nodev, nodev, errnami, nodev, nodev, nullopen, nodev);
21:
22: errnami(p, fp, follow)
23: register struct nx *p;
24: struct flagp *fp;
25: int follow;
26: {
27: u.u_error = ENODEV;
28: iput(p->dp);
29: p->dp = NULL;
30: return (0);
31: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.