Commit Graph

59283 Commits

Author SHA1 Message Date
ru
9c66711298 -Wall cleanup. 2001-04-25 14:45:36 +00:00
ru
d2b01e69fa unifdef -UWANT_ENV_PWD.
No one ever going to use this bugfeature.
2001-04-25 14:44:42 +00:00
ru
eaf5ab661c Make ${.OBJDIR} canonical.
Reviewed by:	bde
2001-04-25 14:22:38 +00:00
gallatin
06672ba7f1 alpha_fpstate_save is fairly expensive (critical enter/exit, possibly
saves 32 registers) to do on every context switch.  This is only required
for SMP, so only do it there.

We should also look at moving the critical enter/exit out to the callers
2001-04-25 13:57:33 +00:00
ru
3cbad34d06 Fixed typo.
PR:		bin/26836
Submitted by:	Matthew Seaman <matthew.seaman@tornadogroup.com>
2001-04-25 12:11:54 +00:00
bde
928cd1b6a9 MFffs ffs_balloc.c 1.5.
Long ago, bread() set b_blkno to the disk block number as a side effect
of doing physical i/o (or it just retained the setting from when the
i/o was done).  The setting is lost when buffers go away and then are
reconsituted from VM.  bread() originally compensated by doing a
VOP_BMAP() to recover b_blkno, but this was no good since it sometimes
caused extra i/o or even deadlock for bread()ing metadata to do the
bmap.  This was fixed in vfs_bio.c 1.33 (1995/03/03) and ffs_balloc.c
1.5, etc., by removing the VOP_BMAP() from bread() and breadn(), and
changing all (?) places that used b_blkno to set it if necessary.

ext2fs was not imported until later in 1995 and was still depending on
the old behaviour of bread() in at least ext2_balloc().  This caused
filesystem and file corruption by clobbering direct block numbers in
inodes.
2001-04-25 10:33:09 +00:00
tanimura
ed98caf17b Do not leave a process with no credential in zombproc.
Reviewed by:	jhb
2001-04-25 10:22:35 +00:00
mckusick
f863141979 When closing the last reference to an unlinked file, it is freed
by the inactive routine. Because the freeing causes the filesystem
to be modified, the close must be held up during periods when the
filesystem is suspended.

For snapshots to be consistent across crashes, they must write
blocks that they copy and claim those written blocks in their
on-disk block pointers before the old blocks that they referenced
can be allowed to be written.

Close a loophole that allowed unwritten blocks to be skipped when
doing ffs_sync with a request to wait for all I/O activity to be
completed.
2001-04-25 08:11:18 +00:00
dougb
fa10273007 Reverse order of from and to in order to match reality.
PR:		26631
Submitted by:	Glenn Johnson, glennpj@charter.net
2001-04-25 07:43:45 +00:00
obrien
1455661ce3 Update for file 3.35. 2001-04-25 07:42:15 +00:00
obrien
dea863c8f3 This commit was generated by cvs2svn to compensate for changes in r75937,
which included commits to RCS files with non-trunk default branches.
2001-04-25 07:41:21 +00:00
obrien
30980cd72d Virgin import of Christos Zoulas's FILE 3.35. 2001-04-25 07:41:21 +00:00
mckusick
658667dbfa Add support for running foreground (-F) and background (-B) checks.
Traditionally, fsck is invoked before the filesystems are mounted
and all checks are done to completion at that time. If background
checking is available, fsck is invoked twice. It is first invoked
at the traditional time, before the filesystems are mounted, with
the -F flag to do checking on all the filesystems that cannot do
background checking. It is then invoked a second time, after the
system has completed going multiuser, with the -B flag to do checking
on all the filesystems that can do background checking. Unlike
the foreground checking, the background checking is started
asynchonously so that other system activity can proceed even on
the filesystems that are being checked.

At the moment, only the fast filesystem supports background checking.
To be able to do background checking, a filesystem must have been
running with soft updates, not have been marked as needing a
foreground check, and be mounted and writable when the background
check is to be done (i.e., not listed as `noauto' in /etc/fstab).

These changes are the final piece needed to support background
filesystem checking. They will not have any effect until you update
your /etc/rc to invoke fsck in its new mode of operation. I am
still playing around with exactly what those changes should be
and should be committing them later this week.
2001-04-25 07:18:22 +00:00
phk
cdc83afc7f Move the netexport structure from the fs-specific mountstructure
to struct mount.

This makes the "struct netexport *" paramter to the vfs_export
and vfs_checkexport interface unneeded.

Consequently that all non-stacking filesystems can use
vfs_stdcheckexp().

At the same time, make it a pointer to a struct netexport
in struct mount, so that we can remove the bogus AF_MAX
and #include <net/radix.h> from <sys/mount.h>
2001-04-25 07:07:52 +00:00
imp
3a77c500a9 Ignore chflags errors. This makes installing to nfs mounted target
directories work.
2001-04-25 06:19:58 +00:00
dd
daedbc6cd1 "break", "chdir", "continue", "else", and "while" are sh(1) builtins;
mark them as such.

PR:		26702
2001-04-25 05:53:20 +00:00
imp
fa79914eba Move to using md.
o create a simple wrapper function mount_md that makes it easy to
  move from mount_mfs.

# NOTE: you will need to MAKEDEV md[0123] in order for this to work.

Reviewed by: bsd, keichii
2001-04-25 05:46:40 +00:00
dd
3b8fad2c59 Teach cut(1) how to handle long lines: convert from fgets(3) to fgetln(3).
PR:		26810
Reviewed by:	dwmalone
2001-04-25 05:42:53 +00:00
bmah
a8735d6820 New release notes: TCP_COMPAT_42 option gone, labpc(4) gone, client-side
NFS locks, devinfo(8), options REGRESSION.
2001-04-24 22:47:34 +00:00
jedgar
2da23531d9 o Separate acl_t into internal and external representations as
required by POSIX.1e.  This maintains the current 'struct acl'
  in the kernel while providing the generic external acl_t
  interface required to complete the ACL editing library.
o Add the acl_get_entry() function.
o Convert the existing ACL utilities, getfacl and setfacl, to
  fully make use of the ACL editing library.

Obtained from:	TrustedBSD Project
2001-04-24 22:45:41 +00:00
mckusick
ecbf3eacd9 Add support for the -F flag which determines whether a specified
filesystem needs foreground checking (usually at boot time) or
can defer to background checking (after the system is up and running).
See the manual page, fsck_ffs(8), for details on the -F and -B options.
These options are primarily intended for use by the fsck front end.

All output is directed to stdout so that the output is coherent
when redirected to a file or a pipe. Unify the code with the fsck
front end that allows either a device or a mount point to be
specified as the argument to be checked.
2001-04-24 22:38:08 +00:00
cg
b92d41b0e9 get the parameters to pci_write_config the right way round. this may fix
some non-functional cards/machines
2001-04-24 22:35:11 +00:00
jhb
7f17e1a5d9 Add a new field 'md_kernnest' to the alpha machine dependent process
structure.  This field keeps track of how many levels deep we are nested
into the kernel.  The nesting level is bumped at the start of a trap,
interrupt, syscall, or exception and is decremented on return.  This is
used to detect the case when the kernel is returning back to a kernel
context in exception_return().  If we are returning to the kernel we need
to update the globaldata pointer register saved in the stack frame in case
we have switched CPU's between taking the initial interrupt that saved the
frame and returning.  If we don't do this fixup it is possible for a CPU to
use the wrong per-cpu data.  On UP systems this is not a problem, so the
code is conditional on SMP.

A count was used instead of simply checking the process status register in
the frame during exception_return() since there are critical sections at
the very start and end of a trap, exception, or interrupt from userland in
which we could trash the t7 register being used in userland.  The counter
is incremented after adn before these critical sections respectively so
that we will not overwrite the saved t7 register if we are interrupted
during one of these critical sections.
2001-04-24 21:06:53 +00:00
tmm
2d5016b903 Remove bogus assignments of libc syscall stub return values to errno;
the stubs do errno assignments and return -1 in this case, so that errno
would end up with this value.

Approved by:	rwatson
2001-04-24 20:50:42 +00:00
asmodai
ae091bd9b2 Wrap lint calling in a variable.
Set LINT to the obj path, since we need to use the new lint's features
to create .ln files.  We do not want to use the installed version for that,
since that might create files according to the old lint.

This is still a work in progress to clean this all up, but it gets
through buildworld, which was the problem at hand.
2001-04-24 20:23:37 +00:00
asmodai
4c41346aa3 Add build-tools target to the description file, requisite of making
lint a build-tool.

Also re-enable llib.
2001-04-24 20:20:41 +00:00
asmodai
c2390be887 Add usr.bin/xlint to build-tools. 2001-04-24 20:19:29 +00:00
schweikh
a0845820c9 Add isdn_ttype (moved to rc.conf from rc.isdn)
PR:		conf/24865
Submitted by:	schweikh
Reviewed by:	hm
2001-04-24 20:02:31 +00:00
schweikh
711b81448a Don't hardcode isdn_ttype overwriting rc.conf settings.
PR:		conf/24865
Submitted by:	schweikh
Reviewed by:	hm
2001-04-24 20:01:25 +00:00
schweikh
3ced8562f5 Document all isdn_* variables in rc.conf(5) - 6 more knobs to frob!
PR:		conf/24865
Submitted by:	schweikh
Reviewed by:	hm
2001-04-24 20:00:58 +00:00
tmm
731887b731 Change uipc_sockaddr so that a sockaddr_un without a path is returned
nam for an unbound socket instead of leaving nam untouched in that case.
This way, the getsockname() output can be used to determine the address
family of such sockets (AF_LOCAL).

Reviewed by:	iedowse
Approved by:	rwatson
2001-04-24 19:09:23 +00:00
rwatson
5bf1eebdef o Change a suser() call to a suser_xxx(..., PRISON_ROOT) call in the
linuxulator so as to allow privileged processes within a jail() to
  invoke the Linux initgroups() system call.  This allows the Linux
  "su" to work properly (better) when running a complete Linux
  environment under jail().  This problem was reported by Attila
  Nagy <bra@fsn.hu>.

Reviewed by:	marcel
2001-04-24 19:08:53 +00:00
imp
461acba9c0 Say "add -r" rather than 'use -r' since the former is more correct.
The latter implies to many people that they use only -r, which is
incorrect.
2001-04-24 17:40:54 +00:00
dfr
4671d09c83 When switching backing store during signal delivery, do the switch before
creating the register frame for calling the handler. Also discard that
frame before switching back to the old backing store after the handler
returns.
2001-04-24 15:57:16 +00:00
dfr
ff98f99d31 Align stack pointer and backing store pointer to 16 byte boundary when
delivering signals.
2001-04-24 15:55:47 +00:00
dfr
08ae27f316 Don't trash the user's pr on syscalls. 2001-04-24 15:54:23 +00:00
sheldonh
088368d68b Revert previous delta, which was completely bogus.
The perceived problem was the symptom of a local error.
2001-04-24 12:30:49 +00:00
kris
fb2fd90f05 Call usage() if given more than 1 argument.
Submitted by:	"Andrew R. Reiter" <arr@watson.org>
Obtained from:	OpenBSD
2001-04-24 10:39:17 +00:00
kris
e801e61e06 Replace a strcat() with a strlcat(). Partial sync with OpenBSD; more
work is needed.

Submitted by:	"Andrew R. Reiter" <arr@watson.org>
Obtained from:	OpenBSD
2001-04-24 10:33:46 +00:00
kris
3edf709f74 sprintf() -> snprintf()
Partially submitted by:	"Andrew R. Reiter" <arr@watson.org>
Obtained from:	OpenBSD
2001-04-24 10:26:00 +00:00
wes
d5df9464e2 Don't build pkg_sign tools if crypto is not installed, or is not
being built.

Reviewed by:	kkenn
2001-04-24 08:59:40 +00:00
sheldonh
4f896c335a Disconnect linux from the build. The buildkernel target has been
breaking on linux for more than two days because sys_exit_args
referenced in linux_sysent.c does not exist.
2001-04-24 08:56:42 +00:00
joe
810d87b74f MF4S: Syncronise with Luigi's work in -stable. 2001-04-24 07:46:35 +00:00
joe
03a1636848 MF4S: Syncronise with Luigi's work in -stable. 2001-04-24 07:12:34 +00:00
imp
c788a710a7 MFS: the MFS still applies to -current until such time as someone fixes
rc.diskless2 to use mdconfig rather than mount_mfs.  These changes are
still relevant to -current.
2001-04-24 07:02:01 +00:00
imp
bc04683ae3 Add warning, and resolution, of the fsck and kernel problem 2001-04-24 04:49:21 +00:00
gshapiro
f41656c49c ${MAKEOBJDIRPREFIX}/usr/src/i386/usr/include/isc was being created as a plain
file during the bootstrapping process of a buildworld and contained the
last isc include file to be installed.  It was meant to be a directory for
the isc include files.
2001-04-24 02:57:42 +00:00
brian
d487445d05 Handle IP over IP (IPPROTO_IPV4) properly.
We now unwrap IP/IP and apply filter rules to both the outer
  layer (with ``set filter blah x.x.x.x y.y.y.y ipip'') and to
  the payload (reinterpreted by the filter rules).

  ``set log tcp/ip'' will now show both the outer wrapper and
  the (reinterpreted) payload contents.
2001-04-24 02:13:34 +00:00
jhb
9c03a8ae91 Change the pfind() and zpfind() functions to lock the process that they
find before releasing the allproc lock and returning.

Reviewed by:	-smp, dfr, jake
2001-04-24 00:51:53 +00:00
iedowse
383dd0a265 Pre-dirpref versions of fsck may zero out the new superblock fields
fs_contigdirs, fs_avgfilesize and fs_avgfpdir. This could cause
panics if these fields were zeroed while a filesystem was mounted
read-only, and then remounted read-write.

Add code to ffs_reload() which copies the fs_contigdirs pointer
from the previous superblock, and reinitialises fs_avgf* if necessary.

Reviewed by:	mckusick
2001-04-24 00:37:16 +00:00