| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
devfs_vnops.c: move a debug printf to be consistent.
|
|
|
|
|
|
|
|
|
|
| |
just ignore it instead.
===================================================================
RCS file: /home/ncvs/src/sys/miscfs/devfs/devfs_vnops.c,v
retrieving revision 1.30
diff -r1.30 devfs_vnops.c
631d630
< (vap->va_size != VNOVAL) || /* doesn't make sense in devfs */
|
|
|
|
|
| |
that resemble what the man pages say.
also fix braino (type last week)
|
| |
|
|
|
|
|
|
| |
add some security onn the chmod/chown operations
should now be root or owner
(still needs more thought but kinda-plugs tow holes pointed out by bde)
|
|
|
|
|
|
| |
to get the declaration of va_list; just use _BSD_VA_LIST. Fixed
the 2 places that need <machine.stdarg.h> but didn't include it
explicitly.
|
|
|
|
| |
for timespec structure.
|
|
|
|
| |
(was resulting in panics, especially when DIAGNOSTIC was set.)
|
| |
|
|
|
|
|
|
|
| |
Include it directly in the few places where it is used.
Reduced some #includes of <sys/file.h> to #includes of <sys/fcntl.h> or
nothing.
|
|
|
|
|
|
|
|
|
| |
cleaning up some of the vnode usage..
(I'm sure it still needs more..)
where can one find out what each vfs call expects to be locked
on completion, and how can one find out what each layer expects
to be freed on error.?
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
it only barely works so don't get too carried away..
I noticed that teh symlink is length 0..
I guess I'll fix that tomorrow..
it also sometimes panics with "cleaned vnode isn't" but it's not more
broken than it was before.. I really want to go over it with someone
who understands the lifecycle of a vnode better than I do..
terry?
kirk?
david?
john?
|
|
|
|
| |
makes option DEVFS safe to use again (although mounting devfs is unsafe).
|
|
|
|
| |
I just noticed some junk in my patch. I'll remove that in a sec.
|
|
|
|
|
| |
``ready for devices'' printed out earlier by changing `devs '
to be `DEVFS: '
|
|
|
|
|
|
| |
out unused code as this is still work in progress.
Reviewed by: bde
|
|
|
|
| |
Pointed out by: bde
|
|
|
|
| |
function names don't start in column 1.
|
| |
|
|
|
|
| |
Removed dev_link() and dev_linkf(), replacing dev_linkf() with devfs_link()
|
|
|
|
| |
Reviewed by: julian@freebsd.org
|
|
|
|
| |
allows correct creation of subdirectories in devfs_add_devswf()
|
|
|
|
|
|
|
|
|
| |
DEVFS filesystems..
- if ( error = dev_add_name(child->name,parent->dnp
+ if ( error = dev_add_name(child->name,falias->dnp
Ok bruce, this is the one you were seeing..
|
|
|
|
| |
a bunch of system include files.
|
| |
|
| |
|
| |
|
|
|
|
| |
get the last edit right
|
|
|
|
|
| |
better naming for exported devfs function
and better place for the prototype
|
|
|
|
|
|
|
|
|
| |
were development aids :-) and normal events.
Initialise the "hidden" blueprint mount "mnt_op" and "mnt_vfc" fields so
that a statfs() on a devfs file would not panic anymore. Fixes PR#911.
Head-scratching by: Julian and Peter
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
fix a bug where you couldn't place devices in the root directory
of devfs
remove deprecated routines
On my machine devfs now shows:
julian@erf.tfs.com:
julian@erf.tfs.com: ls -RF
bpf0 mem ptypb spkr ttyp8
bpf1 null ptypc stderr ttyp9
bpf2 pcaudio ptypd stdin ttypa
bpf3 pcaudioctl ptype stdout ttypb
console pt ptypf tty ttypc
cuaa0 ptyp0 random ttyd0 ttypd
cuaia0 ptyp1 rsd0 ttyid0 ttype
cuala0 ptyp2 rsd1 ttyld0 ttypf
fd/ ptyp3 rvn ttyp0 tun0
fd0.1440 ptyp4 rworm ttyp1 urandom
fd1.1200 ptyp5 scsi/ ttyp2 vn
io ptyp6 sd0 ttyp3 zero
kmem ptyp7 sd1 ttyp4
lkm ptyp8 snp0 ttyp5
log ptyp9 snp1 ttyp6
lpt0 ptypa snp2 ttyp7
./fd:
0 15 21 28 34 40 47 53 6 9
1 16 22 29 35 41 48 54 60
10 17 23 3 36 42 49 55 61
11 18 24 30 37 43 5 56 62
12 19 25 31 38 44 50 57 63
13 2 26 32 39 45 51 58 7
14 20 27 33 4 46 52 59 8
./scsi:
sctarg ssc
julian@erf.tfs.com:
which is all devices really there except for disk slices/partitions..
(if I don't have it it's not there, which has GOT to be an improvement..)
no DEVFS fixes from device maintainers yet?
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
most devsw referenced functions are now static, as they are
in the same file as their devsw structure. I've also added DEVFS
support for nearly every device in the system, however
many of the devices have 'incorrect' names under DEVFS
because I couldn't quickly work out the correct naming conventions.
(but devfs won't be coming on line for a month or so anyhow so that doesn't
matter)
If you "OWN" a device which would normally have an entry in /dev
then search for the devfs_add_devsw() entries and munge to make them right..
check out similar devices to see what I might have done in them in you
can't see what's going on..
for a laugh compare conf.c conf.h defore and after... :)
I have not doen DEVFS entries for any DISKSLICE devices yet as that will be
a much more complicated job.. (pass 5 :)
pass 4 will be to make the devsw tables of type (cdevsw * )
rather than (cdevsw)
seems to work here..
complaints to the usual places.. :)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
That's EVERY SINGLE driver that has an entry in conf.c..
my next trick will be to define cdevsw[] and bdevsw[]
as empty arrays and remove all those DAMNED defines as well..
Each of these drivers has a SYSINIT linker set entry
that comes in very early.. and asks teh driver to add it's own
entry to the two devsw[] tables.
some slight reworking of the commits from yesterday (added the SYSINIT
stuff and some usually wrong but token DEVFS entries to all these
devices.
BTW does anyone know where the 'ata' entries in conf.c actually reside?
seems we don't actually have a 'ataopen() etc...
If you want to add a new device in conf.c
please make sure I know
so I can keep it up to date too..
as before, this is all dependent on #if defined(JREMOD)
(and #ifdef DEVFS in parts)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
it 1138 times (:-() in casts and a few more times in declarations.
This change is null for the i386.
The type has to be `typedef int vop_t(void *)' and not `typedef
int vop_t()' because `gcc -Wstrict-prototypes' warns about the
latter. Since vnode op functions are called with args of different
(struct pointer) types, neither of these function types is any use
for type checking of the arg, so it would be preferable not to use
the complete function type, especially since using the complete
type requires adding 1138 casts to avoid compiler warnings and
another 40+ casts to reverse the function pointer conversions before
calling the functions.
|
|
|
|
| |
just keeping the sources in sync with my own set..
|
|
|
|
|
|
|
|
| |
it was referenced from.. stops a rather annoying panic, but
introduces a rather interesting but "I can live with it" bug
`ln a b ; mv a b; echo ?`
returns a rather than b..
I know why but I need to think of the 'correct' answer. at least this is 'safe'
|
|
|
|
|
|
| |
can now ln /devs/disks/floppy/fd1.1200 to fd1
and remove unwanted dirs and devices etc.
Still has a fatal bug.. don't use yet :)
|
|
|
|
| |
prototype file follows the sources..
|
|
|
|
| |
compiler warnings.
|
|
|
|
|
|
|
|
|
|
|
|
| |
I can now do an mv on devices and directories in devfs
This was the hardest part.. link, delete and symlink will follow in
short order.
This code works but has definitly got vnode locking problems
I am electing to get the structure of it working before
spending too much time on the vnode confusion
so it's probably not reliable at the moment..
never-the less it looks good.
:)
|
|
|
|
|
|
|
|
| |
used to produce a second link to an already exixting device
e.g.
dev_add /disks/sd0
dev_link /scsi/bus0/targ0/lun0 to /disks/sd0
(not real syntax)
|
| |
|
|
|
|
|
| |
routines renamed.. more simplifications,
some warnings squashed.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
added prototypes for every function and
put (void *) as the args to the vop array definitions.
can now compile with:
CWARNFLAGS?= -W -Wreturn-type -Wcomment -Wredundant-decls -Wimplicit \
-Wnested-externs -Wstrict-prototypes -Wmissing-prototypes \
-Winline -Wstrict-prototypes
and only get errors for files external to this module:
namely
./vnode_if.h
../../sys/vnode.h
../../sys/buf.h
../../miscfs/specfs/specdev.h
|
|
|
|
| |
if this keeps simplifying there won't be any left :)
|
|
|
|
| |
when this code seems more solid, they get the bullet.
|
|
|
|
| |
for VOP_BMAP. Updated affected filesystems...
|