| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Reviewed by: bde
|
|
|
|
|
|
| |
out unused code as this is still work in progress.
Reviewed by: bde
|
|
|
|
|
|
|
|
| |
process won't possibly block before filling in the fsnode pointer (v_data)
which might be dereferenced during a sync since the vnode is put on the
mnt_vnodelist by getnewvnode.
Pointed out by Matt Day <mday@artisoft.com>
|
|
|
|
|
| |
fix could solve some "interesting" problems that could happen during
process rundown.
|
|
|
|
| |
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()
|
|
|
|
|
|
|
| |
device have reference count problems. We mark the underlying object
ono-persistent, and account for the reference count that the VM system
maintainsfor the special device close. This should fix the removable
device problem.
|
|\
| |
| |
| | |
which included commits to RCS files with non-trunk default branches.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
files are off the vendor branch, so this should not change anything.
A "U" marker generally means that the file was not changed in between
the 4.4Lite and Lite-2 releases, and does not need a merge. "C" generally
means that there was a change.
[two new auxillary files in miscfs/union]
|
| |
| |
| |
| | |
Reviewed by: davidg & bde
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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..
|
| |
| |
| |
| |
| | |
While we're at it, fix socreate() to take a process argument. (This
was supposed to get committed days ago...)
|
| | |
|
| |
| |
| |
| | |
a bunch of system include files.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is a really ugly bandaid on the problem, but it works well enough for
'ps -u' to start working again. The problem was caused by the user
address space shrinking by a little bit and the UPAGES being "cast off" to
become a seperate entity rather than being at the top of the process's
vmspace. That optimization was part of John's most recent VM speedups.
Now, rather than decoding the VM space, it merely ensures the pages are
in core and accesses them the same way the ptrace(PT_READ_U..) code does,
ie: off the p->p_addr pointer.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Implement a "variable" directory structure. Files that do not make
sense for the given process do not "appear" and cannot be opened.
For example, "system" processes do not have "file", "regs" or "fpregs",
because they do not have a user area.
"attempt" to fill in the user area of a given process when it is being
accessed via /proc/pid/mem (the user struct is just after
VM_MAXUSER_ADDRESS in the process address space.)
Dont do IO to the U area while it's swapped, hold it in place if possible.
Lock off access to the "ctl" file if it's done a setuid like the other
pseudo-files in there.
|
| | |
|
| |
| |
| |
| | |
get the last edit right
|
| |
| |
| |
| |
| | |
better naming for exported devfs function
and better place for the prototype
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Speed up for vfs_bio -- addition of a routine bqrelse to greatly diminish
overhead for merged cache.
Efficiency improvement for vfs_cluster. It used to do alot of redundant
calls to cluster_rbuild.
Correct the ordering for vrele of .text and release of credentials.
Use the selective tlb update for 486/586/P6.
Numerous fixes to the size of objects allocated for files. Additionally,
fixes in the various pagers.
Fixes for proper positioning of vnode_pager_setsize in msdosfs and ext2fs.
Fixes in the swap pager for exhausted resources. The pageout code
will not as readily thrash.
Change the page queue flags (PG_ACTIVE, PG_INACTIVE, PG_FREE, PG_CACHE) into
page queue indices (PQ_ACTIVE, PQ_INACTIVE, PQ_FREE, PQ_CACHE),
thereby improving efficiency of several routines.
Eliminate even more unnecessary vm_page_protect operations.
Significantly speed up process forks.
Make vm_object_page_clean more efficient, thereby eliminating the pause
that happens every 30seconds.
Make sequential clustered writes B_ASYNC instead of B_DELWRI even in the
case of filesystems mounted async.
Fix a panic with busy pages when write clustering is done for non-VMIO
buffers.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| |
| | |
it originates, so I catch it here and fail.
This may expose the same bug on other disk controllers (both scsi & ide).
|
| | |
|
| |
| |
| |
| | |
but worked because vm_pindex_t is indistinuishable from vm_offset_t.
|
| | |
|
| |
| |
| |
| | |
check if it's NULL
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
seems to work hre just fine though I can't check every file
that changed due to limmited h/w, however I've checked enught to be petty
happy withe hte code..
WARNING... struct lkm[mumble] has changed
so it might be an idea to recompile any lkm related programs
|
| | |
|
| | |
|
| |
| |
| |
| | |
(object,index) pair instead of (object,offset) pair.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.. :)
|
| | |
|
| |
| |
| |
| | |
vnode_if.h doesn't include vm stuff.
|
| |
| |
| |
| | |
about tty_tty.c's cdevswitch functions.
|
| |
| |
| |
| | |
Removed some unnecessary #includes.
|
| |
| |
| |
| | |
`struct mount *' arg. I don't know what the effects of this were.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
add a few safety checks in specfs because
now it's possible to get entries in [cd]devsw[] which are ALL NULL
so it's better to discover this BEFORE jumping into the d_open() entry..
more check to come later.. this getsthe code to the stage where I
can start testing it, even if I haven't caught every little error case...
I guess I'll find them quick enough..
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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)
|
| | |
|
| |
| |
| |
| |
| |
| | |
Moved misplaced #includes.
Completed function pointer declarations.
|