Commit Graph

1944 Commits

Author SHA1 Message Date
jdp
263a0986b4 Fix a bug which caused the dynamic linker pathname in the PT_INTERP
program header entry to be ignored if a recognized brand was found.
1998-10-03 04:12:09 +00:00
dfr
955fc8ee3e Start using the new SWI registration system instead of hardwiring everything. 1998-09-26 14:25:32 +00:00
dillon
9cb29011f9 PR: kern/7418
Reviewed by:	Luoqi Chen <luoqi@watermarkgroup.com>

    Fixed problem where write()s can get lost due to buffers flagged B_DELWRI
    being improperly released in brelse().
1998-09-26 00:12:35 +00:00
peter
a2aeaf4564 Goodbye BOUNCE_BUFFERS, for a hack it has served us well.
The last consumer of this code (the old SCSI system) has left us and
the CAM code does it's own bouncing.  The isa dma system has been
doing it's own bouncing for a while too.

Reviewed by:	core
1998-09-25 17:34:49 +00:00
luoqi
10b8717849 Eliminate a race in VOP_FSYNC() when softupdates is enabled.
Submitted by:	Kirk McKusick	<mckusick@McKusick.COM>
Two minor changes are also included,
1. Remove gratuitious checks for error return from vn_lock with LK_RETRY set,
   vn_lock should always succeed in these cases.
2. Back out change rev. 1.36->1.37, which unnecessarily makes async mount
   a little more unstable. It also keeps us in sync with other BSDs.
Suggested by:	Bruce Evans	<bde@zeta.org.au>
1998-09-24 15:02:46 +00:00
dt
17588de453 Fix precedence bug, so that kernel dump works. 1998-09-20 16:50:31 +00:00
ken
7c2e7bb880 Change the devstat generation number from an int to a long. The int-sized
generation was causing unaligned access faults on the Alpha.

I have incremented the devstat version number, since this is an interface
change.  You'll need to recompile libdevstat, systat, iostat, vmstat and
rpc.rstatd along with your kernel.

Partially Submitted by:	Andrew Gallatin <gallatin@cs.duke.edu>
1998-09-20 00:11:23 +00:00
dfr
73a17d1eaf Document BUS_CREATE_INTR and BUS_CONNECT_INTR. 1998-09-16 08:25:56 +00:00
jdp
82df6336ed Restore the core-dumping of all writable segments for ELF executables,
minus the NULL pointer dereference in rev. 1.33.  Also simplify
things somewhat by eliminating one traversal of the VM map entries.
Finally, eliminate calls to vm_map_{un,}lock_read() which aren't
needed here.  I originally took them from procfs_map.c, but here
we know we are dealing only with the map of the current process.
1998-09-16 02:04:05 +00:00
jdp
3ff15d56a4 Erk. Revert back to 1.31, dumping only data and stack to the core
file, until I can solve a panic that has just cropped up.
1998-09-15 22:23:12 +00:00
jdp
13fbdd93b8 When choosing segments to write to the core file, don't assume that
writable implies readable.
1998-09-15 22:07:20 +00:00
jdp
92f218ee17 Instead of just the data and stack segments, include all writable
segments (except memory-mapped devices) in the ELF core file.  This
is really nice.  You get access to the data areas of all shared
libraries, and even to files that are mapped read-write.

In the future, it might be good to add a new resource limit in the
spirit of RLIMIT_CORE.  It would specify the maximum sized writable
segment to include in core dumps.  Segments larger than that would
be omitted.  This would be useful for programs that map very large
files read/write but that still would like to get usable core dumps.
1998-09-15 21:46:34 +00:00
gibbs
0a7eb834b7 kern_clock.c:
Remove old disk statistics variables.

vfs_bio.c:
	Enable bowrite now that B_ORDERED works for all buffer devices.
1998-09-15 10:05:18 +00:00
gibbs
048a0d3b5b When a buffer is removed from a buffer queue, remember it's block number
and use it as "the currently active" buffer in doing disk sort calculations.
1998-09-15 08:55:03 +00:00
gibbs
590590655f Add a new at_shutdown queue, SHUTDOWN_FINAL. This queue is run at
splhigh() after any system dumps have completed.  SHUTDOWN_POST_SYNC
isn't quite late enough for disk controllers.

Converted at_shutdown queues to use the queue(3) macros.
1998-09-15 08:49:52 +00:00
gibbs
78f0dc839b New Kernel device statistics code.
Submitted by:	"Kenneth D. Merry" <ken@plutotech.com>
1998-09-15 08:16:17 +00:00
jdp
e988dcb149 Remove includes that are no longer needed, now that the core dumping
code has been moved into the respective imgact_xxx.c sources.
1998-09-14 23:25:18 +00:00
jdp
1dd90694f4 Viola! The kernel now generates standard ELF core dumps for ELF
executables.

Currently only data and stack are included in the core dumps.  I am
looking into adding the other (mmapped) writable segments as well.
1998-09-14 22:46:08 +00:00
sos
8397655514 Remove the SLICE code.
This clearly needs alot more thought, and we dont need this to hunt
us down in 3.0-RELEASE.
1998-09-14 19:56:42 +00:00
jdp
70bb8503aa Add provisions for variant core dump file formats, depending on the
object format of the executable being dumped.  This is the first
step toward producing ELF core dumps in the proper format.  I will
commit the code to generate the ELF core dumps Real Soon Now.  In
the meantime, ELF executables won't dump core at all.  That is
probably no less useful than dumping a.out-style core dumps as they
have done until now.

Submitted by:	Alex <garbanzo@hooked.net> (with very minor changes by me)
1998-09-14 05:36:51 +00:00
dfr
7583c591ff Implement dynamic loading for ELF. 1998-09-11 08:46:15 +00:00
dfr
d26cf02da5 Avoid a possible memory leak. 1998-09-11 08:45:32 +00:00
tegge
127e6b1d67 Don't keep the underlying directory locked while performing the file
system specific VFS_MOUNT operation.
PR:		1067
1998-09-10 02:27:52 +00:00
bde
dbe6ad54cd Don't use CTL_VFS at the wrong level. This caused loops in the sysctl
tree if CTL_VFS happened to get assigned as a type number to a vfs that
has some vfs sysctls.
1998-09-09 07:41:41 +00:00
bde
3adc4cd6e2 Made unloading of the nfs LKM sort of work. This is mainly to test
detachment of vfs sysctls.  Unloading of vfs LKMs doesn't actually
work for any vfs, since it leaves garbage pointers to memory
allocation control structures.
1998-09-07 05:42:15 +00:00
tegge
857a03a573 Maintain a mapping from irq number to (ioapic number, int pin) tuple,
and use this when masking/unmasking interrupts.

Maintain a mapping from (iopaic number, int pin) tuple to irq number,
and use this when configuring devices and programming the ioapics.

Previous code assumed that irq number was equal to int pin number, and
that the ioapic number was 0.

Don't let an AP enter _cpu_switch before all local apics are initialized.
1998-09-06 22:41:42 +00:00
ache
b9386dfd70 Store formatted panic string in static buffer to make it available later
for savecore.
Previous code give only panic format to savecore
1998-09-06 06:25:18 +00:00
bde
0f44756d5a Ignore the statically configured vfs type numbers and assign vfs
type numbers in vfs attach order (modulo incomplete reuse of old
numbers after vfs LKMs are unloaded).  This requires reinitializing
the sysctl tree (or at least the vfs subtree) for vfs's that support
sysctls (currently only nfs).  sysctl_order() already handled
reinitialization reasonably except it checked for annulled self
references in the wrong place.

Fixed sysctls for vfs LKMs.
1998-09-05 17:13:28 +00:00
bde
a84a2dedfc Instantiate `nfs_mount_type' in a standard file so that it is present
when nfs is an LKM.  Declare it in a header file.  Don't forget to use
it in non-Lite2 code.  Initialize it to -1 instead of to 0, since 0
will soon be the mount type number for the first vfs loaded.

NetBSD uses strcmp() to avoid this ugly global.
1998-09-05 15:17:34 +00:00
bde
572c995dfc Fixed bogotification of pseudocode for syscall args by rev.1.53 of
syscalls.master.
1998-09-05 14:30:11 +00:00
phk
4630814c8b Add a new vnode op, VOP_FREEBLKS(), which filesystems can use to inform
device drivers about sectors no longer in use.

Device-drivers receive the call through d_strategy, if they have
D_CANFREE in d_flags.

This allows flash based devices to erase the sectors and avoid
pointlessly carrying them around in compactions.

Reviewed by:	Kirk Mckusick, bde
Sponsored by:	M-Systems (www.m-sys.com)
1998-09-05 14:13:12 +00:00
bde
ec3c90cf78 Fixed recently perpetrated printf format errors. 1998-09-05 13:24:39 +00:00
ache
2d03d4a5b5 make sbflush panic messages more descriptive 1998-09-04 13:13:18 +00:00
dfr
e2df972eb1 Cosmetic changes to the PAGE_XXX macros to make them consistent with
the other objects in vm.
1998-09-04 08:06:57 +00:00
wollman
bae4326618 Bow to tradition and correctly implement the bogus-but-hallowed semantics
of getsockopt never telling how much it might have copied if only the
buffer were big enough.
1998-08-31 18:07:23 +00:00
wollman
639269dc95 Correctly set the return length regardless of the relative size of the
user's buffer.  Simplify the logic a bit.  (Can we have a version of
min() for size_t?)
1998-08-31 15:34:55 +00:00
kato
173369820f - hw.machine_arch returns cpu architecture type.
- moved definition of MACHINE_ARCH from cpu.h to parm.h as alpha.
- Added definitions of _MACHINE and _MACHINE_ARCH.
- Added hw.ispc98. The hw.ispc98 is 1 in PC98 kernel and is 0 in
  IBM-PC kernel.

Discussed with:	John Birrell <jb@FreeBSD.ORG>
1998-08-31 08:41:58 +00:00
bde
d3f8ad1875 Oops, the previous revision unconfigured too much pre-Lite2 compatibilty
cruft.  At least lsvfs(1) was broken.
1998-08-29 13:13:10 +00:00
luoqi
71cc3d284f Close a race window for getnewbuf() between shared lock holders of the vnode.
Reviewed by:	Mike Smith
1998-08-28 20:07:13 +00:00
dillon
d076acdc11 priority comparison in maybe_resched() didn't work properly if current
and chk process were on different scheduler queues.  Fixed.
1998-08-26 05:27:42 +00:00
phk
9279ee9f4d Fix DDBs printing of buf-flags after I changed them yesterday. 1998-08-25 14:41:42 +00:00
phk
84bd0e1571 Remove the last remaining evidence of B_TAPE.
Reclaim 3 unused bits in b_flags
1998-08-24 17:47:25 +00:00
dfr
5fdaeb281d Change various syscalls to use size_t arguments instead of u_int.
Add some overflow checks to read/write (from bde).

Change all modifications to vm_page::flags, vm_page::busy, vm_object::flags
and vm_object::paging_in_progress to use operations which are not
interruptable.

Reviewed by: Bruce Evans <bde@zeta.org.au>
1998-08-24 08:39:39 +00:00
dfr
1fb12a8979 Regnerate. 1998-08-24 08:32:19 +00:00
dfr
bb4dbeb43f Fix a few syscall arguments to use size_t instead of u_int. 1998-08-24 08:29:52 +00:00
dfr
02d29efc47 Add partial KLD support for ELF. The module loading is not written yet. 1998-08-24 08:25:26 +00:00
bde
f45ec22006 Fixed printf format errors. Only one left in LINT on i386's. 1998-08-24 02:28:16 +00:00
phk
8c27af6df4 remove bdevsw arg from dsopen();
Forgotten by:	julian
Reviewed by:	bde
1998-08-23 20:16:35 +00:00
des
db3e7c5e5f Don't check minor number of dump device at all.
Discussed-with: Jörg Wunsch
1998-08-23 14:18:08 +00:00
bde
1275a52cea Fixed printf format errors. 1998-08-23 10:16:26 +00:00