imp [Thu, 7 Feb 2002 04:49:34 +0000 (04:49 +0000)]
o __P removal
o Use new-style prototypes and function definitions.
o Fix timeout and justquit to have proper signatures for signal
handlers. Mark the args as __unused.
o remove register
obrien [Thu, 7 Feb 2002 01:37:53 +0000 (01:37 +0000)]
Set the SCRIPTDIR to be rooted at TOOLS_PREFIX rather than DESTDIR.
(the two may be different (ie, build vs. runtime))
Allow ldscript's SEARCH_DIR do be rooted somewhere other than `/'.
(in this case at TOOLS_PREFIX)
These changes are most helpful during `make buildworld' so that the shared
libs built in the middle of `make buildworld' are used vs. the ones in
/usr/lib on the build machine.
mckusick [Thu, 7 Feb 2002 00:54:32 +0000 (00:54 +0000)]
Occationally deleted files would hang around for hours or days
without being reclaimed. This bug was introduced in revision 1.95
dealing with filenames placed in newly allocated directory blocks,
thus is not present in 4.X systems. The bug is triggered when a
new entry is made in a directory after the data block containing
the original new entry has been written, but before the inode
that references the data block has been written.
Submitted by: Bill Fenner <fenner@research.att.com>
julian [Wed, 6 Feb 2002 19:35:37 +0000 (19:35 +0000)]
Make LINT compile after fruitless attempts to get the authors
to fix their code.
ata stuff:
Change name of ar_attach to not colide with existing ar_attach in if_ar.c.
usb stuff:
Create a dummy function to satisfy a call to it when in DEBUG mode.
alfred [Wed, 6 Feb 2002 19:15:34 +0000 (19:15 +0000)]
Readded the svc_create() and the registering of the local transport,
now it is fixed. This should get us a working keyserv again, since
it depends on local transport for key exchange.
Since we do not have any KEYFILE name hardcoded anymore, set the
umask that way that the keyserver socket can be created with with
the appropriate permissions.
Re-add the accidently removed signal(SIGPIPE, SIG_IGN); to the code
which makes sense to avoid SIGPIPE when a disconnect on rpc socket
occurs.
phantom [Wed, 6 Feb 2002 17:09:08 +0000 (17:09 +0000)]
List of committers was moved out of handbook. Teach 'ac' about new location.
Also teach it about complex entries in access file (or correctly to say
simplify them)
imp [Wed, 6 Feb 2002 16:47:06 +0000 (16:47 +0000)]
Remove some unused variables, mark unused parameters as unused and change
names of variables that shadow globally declared variables. This should
help people doing later WARNS= fixes.
obrien [Wed, 6 Feb 2002 05:01:29 +0000 (05:01 +0000)]
Use the stock file for now.
The changes from GCC 2.95.3 to 3.1 are large and it is hard to figure
out how to apply our changes. Once BDE can properly test GCC 3.1 he'll
add back in our changes.
jhb [Wed, 6 Feb 2002 04:30:26 +0000 (04:30 +0000)]
Fixes for alpha pmap on SMP machines:
- Create a private list of active pmaps rather than abusing the list of all
processes when we need to look up pmaps. The process list needs a sx lock
and we can't be getting sx locks in the middle of cpu_switch()
(pmap_activate() can call pmap_get_asn() from cpu_switch()). Instead, we
protect the list with a spinlock. This also means the list is shorter
since a pmap can be used by more than one process and we could (at least
in thoery) dink with pmap's more than once, but now we only touch each
pmap once when we have to update all of them.
- Wrap pmap_activate()'s code to get a new ASN in an explicit critical section
so that when it is called while doing an exec() we can't get preempted.
- Replace splhigh() in pmap_growkernel() with a critical section to prevent
preemption while we are adjusting the kernel page tables.
- Fixes abuse of PCPU_GET(), which doesn't return an L-value.
- Also adds some slight cleanups to the ASN handling by adding some macros
instead of magic numbers in relation to the ASN and ASN generations.
scottl [Wed, 6 Feb 2002 01:34:09 +0000 (01:34 +0000)]
Don't attach to Dell PERC2/QC cards that have a firmware rev of 1.x. This
check is complicated by the fact that the Adaptec 5400S cards claim to use
1.x firmware also. PERC2/QC 1.x firmware is not compatible with this driver
and will cause a system hang.
dillon [Wed, 6 Feb 2002 01:19:19 +0000 (01:19 +0000)]
Allow the kern.maxusers boot tuneable to be set to 0 (previously only
the kernel config's maxusers could be set to 0 for autosizing to work).
Reviewed by: rwatson, imp
MFC after: 3 days
alfred [Tue, 5 Feb 2002 23:43:43 +0000 (23:43 +0000)]
Fix cc -Wall, fix rcsid warnings, add missing prototypes,
change prototypes to be the same as in the original sun tirpc code.
Remove ()P macro in a file where the mayority had ()P already removed.
Add them if the mayority use ()P macros.
alfred [Tue, 5 Feb 2002 23:12:51 +0000 (23:12 +0000)]
Do not call addrinfo on local transport adresses, if returning a
server handle (for reuse or whatever). We just return now a handle
connected to the local rpcbind.
des [Tue, 5 Feb 2002 22:13:51 +0000 (22:13 +0000)]
Reindent, and add parentheses to return statements. Some functions in
ftp.c and http.c now have exceedingly long lines due to deep nesting;
this will be corrected by reorganizing the code in a later revision.
alfred [Tue, 5 Feb 2002 21:23:05 +0000 (21:23 +0000)]
Fix a race with free'ing vmspaces at process exit when vmspaces are
shared.
Also introduce vm_endcopy instead of using pointer tricks when
initializing new vmspaces.
The race occured because of how the reference was utilized:
test vmspace reference,
possibly block,
decrement reference
When sharing a vmspace between multiple processes it was possible
for two processes exiting at the same time to test the reference
count, possibly block and neither one free because they wouldn't
see the other's update.
imp [Tue, 5 Feb 2002 21:06:56 +0000 (21:06 +0000)]
o Move externs to extern.h
o Use new-style prototypes exclusively rather than the old foo() style.
o Use new-style function definitions.
o remove register
o make functions passed to signal have the right signature.
o do minor const poisoning.
phk [Tue, 5 Feb 2002 20:44:56 +0000 (20:44 +0000)]
Let the number of timecounters follow hz, otherwise people with
HZ=BIGNUM will strain the assumptions behind timecounters to the
point where they break.
This may or may not help people seeing microuptime() backwards messages.
Make the global timecounter variable volatile, it makes no difference in
the code GCC generates, but it makes represents the intent correctly.
alfred [Tue, 5 Feb 2002 19:30:30 +0000 (19:30 +0000)]
Fix the credential handling code.
In NetBSD, Solaris, xprt->xp_p2 pointed directly to the credentials,
in FreeBSD xprt->xp_verf.oa_base was a pointer to a struct cmessage,
which is defined as follow:
The credentials were submitted the right way and xprt->xp_p2 pointed to them.
But cb_verf.oa_flavor was still empty. There was an assignment missing
in svc_recv() in svc_vc.c:
alfred [Tue, 5 Feb 2002 19:26:04 +0000 (19:26 +0000)]
The clnt_create(KEYSERVSOCK, CRYPT_PROG, CRYPT_VERS, "unix") hacks
were removed and replaced them with clnt_tp_create, now the af_local
support is fixed.
I also removed the hack how rpcinfo contacted rpcbind, now we can
relay on clnt_tp_create create the client-handle for us. Only
rpcbind itself needs a hardcoded socket-path.
alfred [Tue, 5 Feb 2002 18:51:13 +0000 (18:51 +0000)]
Fix the breakage in rpc.yppasswd. Readded the svc_create() and
the registering of the "unix" transport, now it is fixed.
Everywhere, rq_cred is taken to look what authentification we have.
We can not be sure that transp>xp_verf.oa_flavor is also filled in.
This seems to be the same for all sun source. they take the flavor
of rq_cred, instead of transp.
archie [Tue, 5 Feb 2002 18:27:30 +0000 (18:27 +0000)]
The hardware checksum code makes the assumption that a packet routed out
a particular Ethernet interface will actually be delivered by (only) that
device driver. This is not necessarily true when ng_ether(4) is used.
To word around this, while a ng_ether(4)'s "upper" hook is connected,
turn off all hardware checksum, fragmentation, etc., features for that
interface.
sheldonh [Tue, 5 Feb 2002 09:17:24 +0000 (09:17 +0000)]
Fix obscure bug in code loading support that could cause parsing of
functions in multi-line files to fail, depending on the state of the
stack. The fix is sanctioned by the vendor and will appear in bc-1.07.
PR: bin/34601
Reported by: mi
Obtained from: Phil Nelson <phil@cs.wwu.edu>
bbraun [Tue, 5 Feb 2002 06:21:34 +0000 (06:21 +0000)]
Makes __istype() an inline (and a non inlined) function to avoid C++
compile issues. std::isspace(' ') was expanding to std::(!!_maskrune...)
which would cause a C++ compile error. Making __istype() an inline
causes the expansion to be std::__istype() instead, which is valid.