Commit Graph

92641 Commits

Author SHA1 Message Date
marcel
5db03ff255 Implement casuptr(). 2003-07-24 07:49:45 +00:00
marcel
fd57f45daa In get_mcontext() and set_mcontext() save and restore the current
thread pointer.
2003-07-24 07:48:11 +00:00
gordon
660b2e52a1 Fix rescue build using -j. The problem appears to be make not being able
to find the source when the object was specified as <directory>/foo.o.

The fix makes the build go through a make objs before compiling the rest
of the crunchgen. This ensures that the dhclient bits are built in the
correct place where they are picked up for the final compile of rescue.

I'd like to thank dwhite@ and gad@ for helping me track down the problem.

Fast testing box provided by:	phk@ (thanks)
2003-07-24 07:42:42 +00:00
marcel
ff7ebb21b7 Implement alpha_pal_wrunique() and alpha_pal_rdunique(). Both are
used to set and get the thread pointer. Note that a context switch
will automaticly save and restore the thread pointer.
2003-07-24 07:41:08 +00:00
marcel
0a0278c533 Use a spare for the thread pointer (mc_thrptr). The thread pointer
is only read and written by set_mcontext() and get_mcontext() for
use by threading libraries.
2003-07-24 07:34:31 +00:00
markm
c0c9eb00ee Ensure that for the cryptographic instances of *telnet*, the "crypto"
distribution is used. This only affects release-building.
2003-07-24 07:19:55 +00:00
peter
13ec34c585 Connect ncplist, ncplogin, and smbutil to the amd64 build. 2003-07-24 02:09:19 +00:00
peter
061f5a13ac Add mount_nwfs/mount_smbfs to the build for amd64. 2003-07-24 02:07:14 +00:00
peter
d0fded454f Connect libncp/libsmb to the build. They compile, but have a couple of
silly bugs that probably wont quite make a segfault.  eg: passing a pointer
to an int to sysctl instead of a pointer to a size_t.
2003-07-24 02:05:48 +00:00
peter
44b5ea3111 size_t != int. Make this compile on 64 bit platforms (eg: amd64).
Also, "u_short value; if (value > 0xffff)" can never be true.
2003-07-24 01:59:18 +00:00
peter
a60ef94fac Build /sbin/gpt on amd64 for good luck as well. 2003-07-24 01:42:49 +00:00
peter
1f3b101804 Attach acpi, boot0cfg, lptcontrol, sicontrol, spkrtest, zzz for amd64. 2003-07-24 01:41:34 +00:00
peter
e6f6d9c519 Fix an annoying bug in tar. When it converted 'tar zcf' to 'tar -z -c -f'
it forgot to null terminate the new argv[] array.  If you mixed this
with $TAR_OPTIONS, phkmalloc and a whole bunch of other variables, you
could end up with a segfault.  This isn't strictly a phkmalloc victory
since tar walks off the end of an array rather than use uninitialized
malloc memory, but phkmalloc makes it easier to provoke.
2003-07-24 00:04:01 +00:00
imp
3c9c390054 Simplistic C comment re is wrong, use more correct one 2003-07-23 23:50:25 +00:00
imp
b0747bd009 Remove old workaround 2003-07-23 23:50:00 +00:00
peter
c43dfc354a Make the breakpoint instruction trap gate available to users.
ptrace() needs this.

Submitted by:	Mark Kettenis <kettenis@chello.nl>
2003-07-23 23:20:20 +00:00
peter
65f0b759da Set the %gs base to pcb_gsbase, not pcb_fsbase. Oops.
Discovered by:	davidxu
2003-07-23 23:17:15 +00:00
peter
e8484e9d97 Turn -Werror back off again. Leaving out the invariants options causes
more trouble than I expected.
2003-07-23 22:02:30 +00:00
dds
58e19bb4ec Document an additional error return value. The connect(2) call can also
return EACCES on non-Unix domain sockets as demonstrated by the
following program:

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>

int
main(int argc, char *argv[])
{
	struct sockaddr_in rem_addr;
	int sock;

	if ((sock = socket(AF_INET, SOCK_STREAM, 0)) < 0) {
		perror("socket");
		exit(1);
	}

	bzero((char *)&rem_addr, sizeof(rem_addr));
	rem_addr.sin_family = AF_INET;
	rem_addr.sin_addr.s_addr = INADDR_NONE;
	rem_addr.sin_port = htons(10000);

	if (connect(sock, (struct sockaddr *)&rem_addr,
sizeof(rem_addr)) < 0) {
		perror("connect");
		exit(1);
	}
}

The call chain returning this value is probably:

kern/uipc_syscalls.c:connect
kern/uipc_socket.c:soconnect
netinet/tcp_usrreq.c:tcp_usr_connect
netinet/tcp_output.c:tcp_output
netinet/ip_output.c:ip_output

Reviewed by:	schweikh (mentor)
MFC after:	2 weeks
2003-07-23 22:00:08 +00:00
ru
35f690e0f7 Added the (undocumented) EMUL_BOOT variable (for TARGET=i386 only)
that causes the bootable ISO images to be created using the floppy
emulation (the old method) as opposed to the new "cdboot" method.

Only copy boot.flp to the 2nd CD-ROM if this variable is defined.

Reviewed by:	murray
2003-07-23 20:53:37 +00:00
peter
c25984e00e Initialize 'blocked' to NULL. I think this was a real problem, but I
am not sure about that.  The lack of -Werror and the inline noise hid
this for a while.
2003-07-23 20:29:13 +00:00
phk
585a2cb0b6 Stop GCC from whining when people use a 16 bit port number for inb() and outb() 2003-07-23 20:28:23 +00:00
des
928703e4b6 Install rc files from ${.CURDIR}, not ${.OBJDIR}. 2003-07-23 20:22:50 +00:00
des
26842e222a Sample configuration files. 2003-07-23 20:16:36 +00:00
des
bb88d62ad9 Rewrite tbmaster to use configuration files instead of a hard-coded hash. 2003-07-23 20:16:11 +00:00
des
8f1f25625e Improve the markup a little. 2003-07-23 20:15:49 +00:00
peter
88e4389ba3 Turn -Werror back on. 2003-07-23 20:10:09 +00:00
peter
843fb5fa73 ARGH. I *knew* I'd eventually accidently commit this. Change 5.1-XP back
to 5.1-CURRENT.
2003-07-23 20:07:49 +00:00
peter
d2d693aa23 Provide a knob for raising the inline instruction estimate threshold and
set an initial value.  This is aimed at getting us closer to being able to
turn -Werror back on and we can adjust the settings later on.  Yes, we
could turn off -Wno-inline instead, but that would hide the effect of
gcc's bogo-estimator ignoring inline (either rightly or wrongly).
2003-07-23 20:03:42 +00:00
alc
2e85aa2ad2 Annotate pmap_changebit() as __always_inline. This function was
written as a template that when inlined is specialized for the caller
through constant value propagation and dead code elimination.  Thus,
the specialized code that is generated for pmap_clear_reference() et
al. avoids several conditional branches inside of a loop.
2003-07-23 19:49:32 +00:00
jhb
318967d8e2 Use macros from apic.h to when writing to the ICR to send IPIs to startup
APs rather than magic numbers.

Tested by:	scottl
2003-07-23 19:04:28 +00:00
jhb
1ab48551b3 Add a new macro APIC_ICRLO_RESV_MASK that contains all of the reserved
fields in the low 32 bits of the local APIC ICR register.  Use this macro
in place of APIC_RESV2_MASK when masking off existing bits from the ICR
when writing to it to send an IPI.

Tested by:	scottl
2003-07-23 18:59:38 +00:00
phk
5116362d0f Undo single-intance inlining which is way above the comfort limit for GCC. 2003-07-23 18:03:22 +00:00
phk
d334468bbe Undo agressive inlining which GCC previously wisely ignored.
The this eliminates 67% of the text segment (relative to respected
inline requests).
2003-07-23 17:58:41 +00:00
harti
b466276c42 Handle the new MEDIA definitions. 2003-07-23 15:04:31 +00:00
ru
14b4207391 Added the WORLDDIR variable (defaulting to ${.CURDIR}/..) that
points to a directory where "make buildworld" was run.  Useful
for building 5.x snapshots on 4.x.
2003-07-23 14:40:51 +00:00
harti
f8b34e3f70 Convert a lot of uma_zalloc() calls to be NOWAIT instead of WAITOK. All
these may be called from contexts where we cannot sleep (callout handlers
for example).
2003-07-23 14:28:57 +00:00
harti
162e49f535 Get rid of the zone for network interfaces. We have converted this to
use malloc(9).
2003-07-23 14:25:53 +00:00
simon
87695ddeee Add manual page to document the new rescue utilities in /rescue.
Most text by:	Tim Kientzle <kientzle@acm.org>
Reviewed by:	ru, doc@
Approved by:	ceri (mentor)
2003-07-23 13:24:32 +00:00
ru
2b4093d332 Make NO_FLOPPIES really mean "no floppies", including not even
creating the "floppies" directory on FTP and CD-ROMs.  Enforce
NO_FLOPPIES on amd64.

Tested for:	amd64, i386 with -DNO_FLOPPIES
2003-07-23 12:12:53 +00:00
nyan
e764ca3a14 MFi386: revision 1.1090. 2003-07-23 12:09:14 +00:00
bde
3342068b97 Fixed some style bugs (misplacement and misformatting of some commented-out
code).
2003-07-23 09:24:44 +00:00
ru
8af435a95b Revert revision 1.788, and explain a bit the intent of having
the boot.flp image on the second CD-ROM.

Explained by:	jhb
Desired by:	vendors
2003-07-23 06:00:56 +00:00
ru
fc5fa1c32b amd64 will not provide floppies. 2003-07-23 05:55:02 +00:00
ru
4f37c8da56 Do not define BIGBOOTSIZE and the friends for amd64; it serves
no useful purpose other than wasting CPU time in "make release"
creating useless boot.flp.

Desired by:	peter
2003-07-23 05:53:52 +00:00
peter
52ebc02e14 Only provide one copy of the math functions. If we provide a MD function,
do not also provide a __generic_XXX version as well.  This is how we
used to runtime select the generic vs i387 versions on the i386 platform.

This saves a pile of #defines in the src/math_private.h file to undo the
__generic_XXX renames in some of the *.c files.
2003-07-23 04:53:47 +00:00
peter
d0f145218d Remove _ARCH_INDIRECT, it was the glue to enable having both hardware
and software versions of the floating point code in libm.  The runtime
selection was done by reading the hw.floatingpoint sysctl via
__get_hw_float().
2003-07-23 04:28:51 +00:00
peter
3894161bb0 No longer need the internal __get_hw_float() function. 2003-07-23 04:25:04 +00:00
peter
07a2b34dd7 Now that we do not need to do runtime detection for the broken default
fp emulator, stop doing the runtime selection of hardware or emulated
floating point operations on i386.  Note that I have not suppressed the
duplicate compiles yet.

While here, fix the alpha.  It has provided specific copysign/copysignf
functions since the beginning of time, but they have never been used.
2003-07-23 04:23:36 +00:00
marcel
6635082314 We sloppily created an array for the high FP registers (f32-f127),
but this just created a weird inconsistency when porting gdb(1).
Instead, we name each high FP register seperately, like we do for
all the other registers.
2003-07-23 03:08:34 +00:00