Commit Graph

1483 Commits

Author SHA1 Message Date
ross 7516424fe6 Teach the NTP PLL how to lock when hz == 1000. 1998-01-31 10:42:11 +00:00
thorpej 4c54445530 Use offsetof() from libkern.h 1998-01-28 02:35:10 +00:00
thorpej 2ee3e0153d Generate dependencies on the exec format options EXEC_AOUT, EXEC_ECOFF,
EXEC_ELF32, EXEC_ELF64, and EXEC_SCRIPT.
1998-01-22 01:32:14 +00:00
thorpej ea9ade0496 Generate dependencies on the INSECURE option. 1998-01-22 01:18:30 +00:00
thorpej 6428828e64 Const'ify the extent name. 1998-01-21 22:33:49 +00:00
thorpej 66abe4217c Implement an activity log for malloc() and free(), useful for tracking
down "Data modified on freelist" and "muliple free" problems.

The log is activated by the MALLOCLOG option, and the size of the
event ring buffer is controlable via the MALLOGLOGSIZE option (default
is 100000 entries).

From Chris Demetriou, cleaned up a little by me per suggestions in the
e-mail from Chris that contained the code.
1998-01-21 22:24:32 +00:00
thorpej 561056f2e2 Grab a fix from 4.4BSD-Lite2: open(2) with O_FSYNC and MNT_SYNCHRONOUS
had not effect.  Fix: check for either of these flags in vn_write(),
and pass IO_SYNC down if they're set.
1998-01-14 22:08:44 +00:00
perry 3fe138c146 RCS Id Police. 1998-01-09 08:03:16 +00:00
thorpej c5a2e825a0 Regen. 1998-01-09 06:41:17 +00:00
thorpej b59d427988 Add RCS IDs to generated files, in correct place. 1998-01-09 06:40:43 +00:00
thorpej 95b0f526ca Oops, thinko 1998-01-09 06:17:51 +00:00
thorpej 9a4eec1ed1 Regen. 1998-01-09 06:14:57 +00:00
thorpej 1a49aac581 Regen. 1998-01-09 06:09:17 +00:00
thorpej f35d097c86 Put RCS IDs in generated files, in the right place. 1998-01-09 06:07:26 +00:00
mrg a20d56e92e add new version of non contiguous memory code, written by chuck cranor,
called "MACHINE_NEW_NONCONGIG".  this is required for UVM, the new VM
system (also written by chuck) that is coming soon.  adds new functions:
	vm_page_physload() -- tell the VM system about an area of memory.
	vm_physseg_find() -- returns index in vm_physmem array that this
		address is in.
and several new versions of old functions/macros defined in vm_page.h.

this is the MI portion.  sparc, and then later i386 portions to come.
all other ports need to change to this ASAP!  (alpha is already being
worked on)
1998-01-08 11:36:16 +00:00
thorpej 655a55141c Regen: Back out RCS ID related changes. 1998-01-08 01:07:24 +00:00
thorpej 5713d318b8 Back out RCS ID related changes. 1998-01-08 01:06:50 +00:00
thorpej 585f0dec73 Regen: back out RCD ID related changes. 1998-01-08 00:17:11 +00:00
thorpej d76d905b2f Back out RCS ID related changes. 1998-01-08 00:16:25 +00:00
thorpej cbf3cc6bb8 Make insertion and removal of sockets from the partial and incoming
connections queues O(C) rather than O(N).
1998-01-07 23:47:08 +00:00
thorpej cc22126721 Implement passing credentials as ancillary data on Unix domain sockets,
enabled with the LOCAL_CREDS socket option on the listener.  Semantics are
similar to BSD/OS's:
- Creds are available with first data on SOCK_STREAM, and with every datagram
  on SOCK_DGRAM.
- It is not possible to forge credentials.

Different in that:
- Different credential data structure (ours does not rely on the format
  of internal kernel data structures, and does not pass the login name).
- We can pass creds and file descriptors at the same time (this does not
  work in BSD/OS).

Luke Mewburn <lukem@netbsd.org> gets credit for inspiring me to implement
this.  :-)
1998-01-07 22:57:09 +00:00
thorpej cf89ccf13e Add uipc_ctloutput(). 1998-01-07 22:50:42 +00:00
thorpej b981fc4d34 Fix bug in recvit() that would cause recvmsg() to only receive one
control message, even if there were multiple control messages on
the queue.  From Jean-Luc Richier <Jean-Luc.Richier@imag.fr>, in
bug report kern/4700.
1998-01-07 05:49:25 +00:00
thorpej e918c058f1 Fix passing of multiple file descriptors (was broken when code was made
64-bit safe).
1998-01-07 04:03:38 +00:00
thorpej 974b59d07c Happy new year! 1998-01-07 00:41:43 +00:00
thorpej 052b639ac1 Clean up the forking of init and the pagedaemon slightly: call fork1()
directly (which provides a pointer to the new process).
1998-01-06 21:18:00 +00:00
thorpej 07216d15fc Allow retval to be NULL, filling it in only if it was passed. 1998-01-06 21:15:41 +00:00
thorpej c2768af3d4 Garbage-collect cpu_set_init_frame(); it hasn't been needed for some time
now.
1998-01-06 08:06:45 +00:00
perry 3a47434df3 regened with RCSIDs in place 1998-01-05 19:14:39 +00:00
perry 02e9346e57 fix RCS ids insertion so it really works 1998-01-05 19:13:04 +00:00
perry 9b0894473d make script insert RCS ids into generated files 1998-01-05 18:45:02 +00:00
perry 8309b37a61 ugh. escape rcs tags so that the script doesn't get messed up. 1998-01-05 18:19:35 +00:00
perry 4dc846816b put RCS ids in the output files. Not essential, but useful. 1998-01-05 18:09:44 +00:00
perry a69b5af889 regened with RCSID 1998-01-05 18:06:27 +00:00
thorpej 2e85747e9e From 4.4BSD-Lite2 (noted by Frank van der Linden):
so_linger is used as an argument to tsleep(), so was stuffed with
clockticks for the TCP linger time.  However, so_linger is set directly from
l_linger if the linger time is specified, and l_linger is seconds (although
this is not currently documented anywhere).  Fix this to set the TCP
linger time in seconds, and multiply so_linger by hz when tsleep() is
called to actually perform the linger.
1998-01-05 09:12:29 +00:00
thorpej ce340c6ca5 Also pass fork1() a struct proc **, in case the caller wants a pointer
to the newly created process.
1998-01-05 05:16:26 +00:00
thorpej 5703397593 Initialize proc0's file descriptor table with fdinit1(). 1998-01-05 04:52:48 +00:00
thorpej 6382d6dd79 Implement file descriptor table sharing. Partially from FreeBSD. 1998-01-05 04:51:15 +00:00
thorpej 740f872797 New vfork(2) implementation, whith semantics matching those of the original
3BSD vfork(2), i.e. share address space w/ parent and block parent.

Keep statistics on the total number of forks, the number of forks that
block the parent, and the number of forks that share the address space
with the parent.
1998-01-04 03:52:02 +00:00
thorpej 43677af399 Regen: add __vfork14() at #282. 1998-01-04 03:47:05 +00:00
thorpej d36ffe9822 Add __vfork14() system call at #282. 1998-01-04 03:45:21 +00:00
thorpej 36780f9243 Make shmexit() and shmfork() take struct vmspace *'s, not struct proc *'s,
and update internal interfaces appropriately.
1998-01-03 02:50:32 +00:00
thorpej b1cf620cfe Update for additional argument to vm_fork() ("shared" boolean). 1998-01-03 02:49:30 +00:00
thorpej bb2d5987ff Don't call shmexit() if the vmspace ref count is not 1. Update for new
argument to shmexit().
1998-01-03 02:48:43 +00:00
enami 74a36a05ae No longer needs to include sys/shm.h. 1998-01-01 02:43:18 +00:00
thorpej a322314f51 Split out the code that prepares a VM space for exec into a new
vmspace_exec() function.
1997-12-31 07:47:41 +00:00
thorpej d3eaf8a978 Rearrange disk_detach() slightly, and make a small run-time cosmetic
change in disk_unbusy().
1997-12-30 09:51:24 +00:00
kleink 087ac96d12 Update to last commit: do not pass the accounting flag to suser(), since the call does not actually *use* super-user privileges. Pointed out by Charles. 1997-12-21 18:50:57 +00:00
kleink aa4d1febf1 Due to the feedback received, change chown(), fchown() and lchown() not to
clear the setgid and setuid bits if called by the superuser.  Addresses
PR kern/4662.
1997-12-21 17:49:18 +00:00
pk 327c0046f9 Memory pool resource utility. 1997-12-15 11:14:57 +00:00
drochner a9006ce5b9 Make ttyblock() work as intended and documented in canonical mode.
(operator precedence problem)
closes PR kern/2131 (Matthias Pfaller)
1997-12-12 12:49:40 +00:00
tv 0a558b3f1f Standardize COMPAT_SUNOS -- remove all references to
sunos_exec_aout_makecmds() in machdep.c for various architectures and put
it in exec_conf.c like the other emulations; rename exec.h to
sunos_exec.h.
1997-12-04 15:33:17 +00:00
kleink 5f6a03cb5b Regen. 1997-11-29 18:43:25 +00:00
kleink 5d7a8f4a16 Modify the recent sigaltstack() interface change to use the __RENAME() scheme;
add __sigaltstack14().
1997-11-29 18:38:20 +00:00
kleink 08ca830d3b Regen again to reflect correct syscalls.master version. 1997-11-25 21:10:48 +00:00
kleink ef0caa8755 Regen. 1997-11-25 19:40:52 +00:00
kleink a255f23ee3 In XPG4.2, the ss_size member of type stack_t (struct sigaltstack) is specified
to be of type size_t; since this imposes an interface change on the Alpha
(sizeof(int) != sizeof(size_t)), allocate a new system call number and make
the previous version a compatibility system call.
1997-11-25 19:32:15 +00:00
kleink 96dd101e9b Add compat_13. 1997-11-25 19:02:50 +00:00
thorpej e78682a0e2 In m_split(), restore m_pkthdr.len if an error occurs. From Koji Imada,
PR #3986.
1997-11-20 04:28:18 +00:00
ross 3877611a5c Put it back the way it was. 1997-11-17 00:59:56 +00:00
ross 42046e9698 A new kprintf was imported on 10/24, and it will cause a kernel panic
whenever the %: format is used on NetBSD/Alpha. Disable %: for __alpha__.
Note: the "correct" (but untested on other architectures) fix is to
change the wrong: kprintf(cp, oflags, tp, NULL, va_arg(ap, va_list));
    to the right: kprintf(cp, oflags, tp, NULL, ap);
1997-11-15 09:27:33 +00:00
mycroft 402ecc3fed Clean up code from last commit. 1997-11-10 08:26:09 +00:00
thorpej e51d1d566c Regen - syscalls.master changed. 1997-11-04 21:26:18 +00:00
thorpej 97d2a58201 Fix slight argument bogosity with getgroups(), setgroups(), select(),
and swapctl().  For the former three, they use an 'int' in their user-land
prototype which was a 'u_int' in the kernel, which screwed up automatic
generation/checking of lint syscall stubs.  For the latter, the user-land
prototype uses a "const char *", but the syscall just used "char *".

From Chris Demetriou <cgd@pa.dec.com>.
1997-11-04 21:24:14 +00:00
gwr d68fdf7187 Oops... That was meant for the head. 1997-11-04 20:45:22 +00:00
mjacob 91ea08e3cf relocate where scsi devices are 1997-11-02 22:44:42 +00:00
enami 4589c896eb Conditionalize the recognition of symbolic link permission by
per fs mount option `symperm'.
1997-10-30 22:47:06 +00:00
thorpej 3569d48361 defopt UCONSOLE 1997-10-28 01:53:50 +00:00
chuck 94fa91f862 import chris torek's vfprintf() from libc [renamed to kprintf and all
floating point stuff removed].

the new kprintf replaces the 3 different (and buggy) versions of
printf that were in the kernel before (kprintf, sprintf, and db_printf),
thus reducing duplicated code by 2/3's.   this fixes (or adds) several
printf formats.  examples:
 %#x   - previously only supported by db_printf [not printf/sprintf]
 %8.8s - printf would print "000chuck" for "chuck" before
 %5p   - printf would print "0x    1" for value 1 before

XXX: new kprintf still supports several non-standard '%' formats that
are supposed to eventually be removed:
  %: - passes an additional format string and argument list recursively
  %b - used to decode error registers
  %r - int, but print in radix "db_radix" [DDB only]
  %z - 'signed hex' [DDB only]
  %n - unsigned int, but print in radix "db_radix" [DDB only]

note that DDB's "%n" conflicts with standard "%n" which takes the
number of characters written so far and stores it into the integer
indicated by the "int *" pointer arg.  yuck!

while here, add comments for each function explaining what it is
supposed to do.
1997-10-24 18:14:25 +00:00
sommerfe 436b905aba Fix PR4313: kern.maxvnodes setting was a psychotic placebo 1997-10-21 18:51:06 +00:00
thorpej fa87c324dc Regen, syscalls.master changed. 1997-10-20 22:06:52 +00:00
thorpej 14cd99880c Fix the shared library versioning snafu caused by the recent changes
to the stat(2) family and msync(2).  This uses a primitive function
versioning scheme.

This reverts the libc shared library major version from 13 to 12, and
adds a few new interfaces to bring us to libc version 12.20.

From Frank van der Linden <fvdl@NetBSD.ORG>.
1997-10-20 22:05:06 +00:00
is c7a9bfc5b5 Allow more than 4 (up to 16 now) virtual filesystems to be loaded.
Patch from Matthias Scheler, pr4299.
1997-10-20 17:40:07 +00:00
mycroft b8267c1737 Count characters even when !OPOST and FLUSHO.
Don't output the \r for ONLCR if FLUSHO.
1997-10-19 20:35:21 +00:00
mycroft 9341cad610 After conversion of the file flags, if neither FREAD nor FWRITE is set,
return EINVAL.
1997-10-19 17:18:10 +00:00
mycroft 11c9f28f0e Update comment. 1997-10-19 03:29:20 +00:00
mycroft e704745a3c Regen. 1997-10-19 03:26:22 +00:00
mycroft 606346112c umask(2) accepts and returns a mode_t. 1997-10-19 03:25:55 +00:00
mycroft 04daee4f9c Add const where appropriate. 1997-10-19 02:00:19 +00:00
mycroft 16519602c5 Minor change; remove unnecessary casts. 1997-10-19 01:50:33 +00:00
christos 0f4b4471a8 Regen. 1997-10-18 16:36:49 +00:00
christos 3130feba6d Fixed missed const char * in lstat (thanks enami) and changed caddr_t -> void *
in the mman family.
1997-10-18 16:35:25 +00:00
christos 3c07a14a75 Separate assigments of tv_sec and tv_nsec since tv_sec is a time_t (int on
the alpha) and tv_nsec is a long.
1997-10-18 16:34:17 +00:00
enami acd4cefee0 In the function vattr_null(), assign each member individually
to prevent unintended conversion due to different sign and size.
1997-10-18 11:51:32 +00:00
jonathan e12d00b5e4 Add #include <sys/sysctl.h>, which in turn needs #include <vm/vm.h>. 1997-10-17 22:37:38 +00:00
thorpej 73b56bd5b0 Display The NetBSD Foundation, Inc.'s copyright notice at boot time. 1997-10-17 21:40:00 +00:00
christos 3f60774556 PR/4280: Chris Jones: Sending more than one fd over AF_UNIX sockets causes
panic. Bug in the fd -> struct file * conversion...
1997-10-17 17:35:08 +00:00
christos bf5e4c3957 Regen 1997-10-16 23:42:20 +00:00
christos 9b763cbe70 change char *path to const char *path
change int to mode_t's and to dev_t's as appropriate
add new new stat syscem calls and make the old ones compatibility.
1997-10-16 23:41:31 +00:00
mycroft d0a1101d26 Disable an effectively no-op reference to u_kproc, with an explanation of what
should be done with it eventually.
1997-10-16 02:45:39 +00:00
mycroft 91395f0f4f Regen. 1997-10-15 17:28:40 +00:00
mycroft 5570f69778 Adjust u_int arguments of some system calls to int, to match user-level
prototypes.
1997-10-15 17:27:46 +00:00
mycroft 3a2dfc05e9 Regen. 1997-10-15 17:07:35 +00:00
mycroft 2587de6af9 Adjust u_int arguments of some system calls to int, to match user-level
prototypes.
1997-10-15 17:03:52 +00:00
explorer 80513cb5ae o Make usage of /dev/random dependant on
pseudo-device   rnd                     # /dev/random and in-kernel generator
  in config files.

o Add declaration to all architectures.

o Clean up copyright message in rnd.c, rnd.h, and rndpool.c to include
  that this code is derived in part from Ted Tyso's linux code.
1997-10-13 00:46:08 +00:00
enami 8092be0770 Check exec bit of symbolic link when traversing path and do it in vfs layer.
Suggested by der Mouse.  Ok'ed by Jason R. Thorpe.
1997-10-11 00:08:08 +00:00
enami db7f1ad2ad Check read permission of symbolic link in vfs layer, when doing readlink(2).
Suggested by der Mouse.  Ok'ed by Jason R. Thorpe.
1997-10-11 00:05:15 +00:00
mycroft 61a9f1c6a6 GC pageproc and bclnlist. 1997-10-10 08:19:41 +00:00
fvdl 541b204984 Add vn_readdir function for use in both the old getdirentries and
the new getdents(). Add getdents().
1997-10-10 02:09:30 +00:00
fvdl b691680ac4 Regen. 1997-10-10 02:07:55 +00:00