Commit graph

79743 commits

Author SHA1 Message Date
Jake Burkholder c0d676c068 Make this driver work a whole lot better.
- Get the initial mode from the prom settings and don't clobber the mode
  on open.
- Copy output into an internal ring buffer instead of accessing the tty
  outq directly in the interrupt handler.  This fixes a problem where
  garbage would show up in the output stream.
- Reset the console port completely and reprogram all the parameters
  before enabling it.  This fixes seemingly random hangs on startup
  when using a fast interrupt handler.
- Add minimal locking in place of spls.
- Remove dead code and minor cleanups.
2002-09-08 04:45:16 +00:00
Garrett Wollman f882c94f2b Fix a syntax error which causes an annoying warning. 2002-09-08 04:43:28 +00:00
Peter Wemm c503d8706c opt_kstack_pages.h is not needed anymore. It would have been a Bad Thing
if it had been different to the running kernel.
2002-09-08 02:59:38 +00:00
Peter Wemm 8c478ca930 Note that 'device gzip' *requires* COMPAT_AOUT. Maybe this "device"
should be renamed to COMPAT_GZIPAOUT or something like that.
2002-09-08 02:33:42 +00:00
Peter Wemm d0ca7c29dc Do not blow up when we walk off the end of the brands list.
Found by:	kris, jake
2002-09-08 02:17:44 +00:00
Peter Wemm a9f9df5daf Tidy up some loose ends that bde pointed out. caddr_t bad, ok?
Move fill_kinfo_proc to before we copy the results instead of after
the copy and too late.

There is still more to do here.
2002-09-07 22:31:44 +00:00
Peter Wemm 1ed8cb4870 Remove bogus fill_kinfo_proc() before ptrace_set_pc(). There was no need
for this.

Submitted by:	bde
2002-09-07 22:18:19 +00:00
Peter Wemm 99a17113cd The true value of how the kernel was configured for KSTACK_PAGES was not
available at module compile time.  Do not #include the bogus
opt_kstack_pages.h at this point and instead refer to the variables that
are also exported via sysctl.
2002-09-07 22:15:47 +00:00
Peter Wemm b9f009b08d Make UAREA_PAGES and KSTACK_PAGES visible to userland via sysctl, like
PS_STRINGS and USRSTACK is.  This is necessary in order to decode a.out
core dumps.  kern_proc.c was already referring to both of these values
but was missing the #include "opt_kstack_pages.h".  Make the sysctl
variables visible so that certain kld modules can see how their parent
kernel was configured.
2002-09-07 22:11:45 +00:00
Peter Wemm e94ecf7338 Move the KSTACK_PAGES option from MD to MI. Although not all platforms
support this, we do have MI code that references it and is otherwise
unaware of an override.  The alternative is to put knowledge in these
MI files about which platforms have the opt_kstack_pages.h option file.
It is more likely that other platforms will gain the ability to tune the
kstack size.
2002-09-07 22:07:11 +00:00
Juli Mallett 77c70ade18 Fill out two fields (si_pid, si_uid) in the siginfo structure handed back
to userland in the signal handler that were not being iflled out before, but
should and can be.

This part of sendsig could be slightly refactored to use an MI interface, or
ideally, *sendsig*() would have an API change to accept a siginfo_t, which
would be filled out by an MI function in the level above sendsig, and said MI
function would make a small call into MD code to fill out the MD parts (some
of which may be bogus, such as the si_addr stuff in some places).  This would
eventually make it possible for parts of the kernel sending signals to set up
a siginfo with meaningful information.

Reviewed by:	mux
MFC after:	2 weeks
2002-09-07 19:12:53 +00:00
Bruce A. Mah 636507ae9a New release notes: COMPAT_AOUT, AMD Elan SC520 support. 2002-09-07 19:04:35 +00:00
Bruce A. Mah 0c34da3b60 Add some more AMD processors to the supported hardware list.
PR:		40712
2002-09-07 18:59:15 +00:00
Juli Mallett 9d05b77d4f Diff reduction in comments for filling the siginfo structure - refer to
filling in the POSIX parts, when doing the same thing in every port of
FreeBSD.
2002-09-07 18:56:18 +00:00
Juli Mallett d367157e25 Match the more modern ports and comment the filling of POSIX parts of siginfo
with 'Fill in POSIX parts'.  (Diff reduction.)
2002-09-07 18:55:15 +00:00
Thomas Moestl 27d29f428c Unbreak the modules build:
- add dependencies on opt_cpu.h and opt_kstack_pages.h to the linux module
  Makefile in the i386 case. The latter is needed by an i386-only file, the
  former by the i386 implementation of linux_sysvec.c (opt_cpu.h is used for
  architecture-dependent options, so I added it only for i386, although this
  file is also generated for the alpha).
- add a dependency on opt_kstack_pages.h to the pecoff module Makefile.
2002-09-07 18:02:18 +00:00
Matt Jacob e47ffe1fd4 The size argument to snprintf does not have to be backed off by one
to account for a NULL byte.

Submitted by:	Jacques A. Vidrine <nectar@celabo.org>
2002-09-07 16:12:52 +00:00
Bruce Evans 8a1a68fa84 Include <machine/pcb.h> instead of depending on namespace pollution in
<sys/user.h>.
2002-09-07 14:32:22 +00:00
Julian Elischer c0698d32ce fix braino..
was clearing part of wrong thread structure..
2002-09-07 12:58:44 +00:00
Maxim Sobolev b8b743d723 Allow edquota(8) to be used for setting up quotas non-interactively (add a
new -e option for that).

Feature requested by:	Alex V. Belinsky <fozzy@kievweb.net.ua>
MFC after:	1 month
2002-09-07 12:26:07 +00:00
Maxim Sobolev 7c2ffa8911 Remove #include <netinet/ip.h>.
Submitted by:	bde
2002-09-07 12:22:17 +00:00
Maxim Sobolev 3b68178c89 Also add #include <netinet/in_systm.h> before <neinet/ip.h> to fix the
world.

Submitted by:	Brooks Davis <brooks@one-eyed-alien.net>
2002-09-07 12:20:47 +00:00
Doug Rabson a6da2389b5 Add __BEGIN_DECLS/__END_DECLS so that c++ code can use makecontext() etc. 2002-09-07 10:20:26 +00:00
Tim J. Robbins 9ad391340e Add an implementation of wcstok(), based on strtok_r(). 2002-09-07 08:16:57 +00:00
Juli Mallett 1bd5f7392d Two arrays were born from the same seeds, both grew into complementary sets
of pointers to strings.  These two arrays were fixed to the same size, but one
had an implicit zeroed trailer element, which was unused because the size was
used up by the ones before said zeroed trailer element.  So the unused limb was
chopped off the over-sized-but-not-over-sized array, and everyone lived happily
ever after.
2002-09-07 08:14:19 +00:00
Peter Wemm 3bf6fa5503 Fix a missing line in a cut/paste error. 2002-09-07 07:13:08 +00:00
Peter Wemm f7749f924c Automatically enable CPU_ENABLE_SSE (detect and enable SSE instructions)
if compiling with I686_CPU as a target.  CPU_DISABLE_SSE will prevent
this from happening and will guarantee the code is not compiled in.

I am still not happy with this, but gcc is now generating code that uses
these instructions if you set CPUTYPE to p3/p4 or athlon-4/mp/xp or higher.
2002-09-07 07:02:12 +00:00
Maxim Sobolev 885564890b Add #include <netinet/ip.h> in attempt to fix the world. 2002-09-07 06:16:22 +00:00
Chad David 78ae381517 Note that siginit() does not cause every signal to be ignored only the
ones with a default property of SA_IGNORE, and that it acquires and
releases the processes lock.
2002-09-07 06:07:55 +00:00
Peter Wemm 7646aefc21 Supposedly linux has added a 6th syscall arg register (%ebp). I am not
100% sure if this is enough, but it will not harm anything.
2002-09-07 04:59:49 +00:00
Tim J. Robbins 85adcfc150 Sync prototypes with <wchar.h> with respect to the restrict qualifier. 2002-09-07 04:07:00 +00:00
Tim J. Robbins 9c261371ec Add restrict qualifiers where C99 permits them. All of these already had
restrict qualifiers on their prototypes in <wchar.h>.
2002-09-07 04:03:28 +00:00
Tim J. Robbins c58bfeb53b Add restrict qualifiers to wcsstr()'s arguments. 2002-09-07 03:38:13 +00:00
Tim J. Robbins 91bd11ad84 Call strtok_r() via a libc private name from within strtok(). 2002-09-07 02:53:19 +00:00
Peter Wemm 6bf46c4c5f Add options COMPAT_AOUT to detect future bitrot. 2002-09-07 01:49:52 +00:00
Julian Elischer 9b0e281b69 fix misplaced schedlock
Submitted by:	davidxu@freebsd.org
2002-09-07 01:48:53 +00:00
Peter Wemm 581968abc2 Add COMPAT_AOUT option so that config will not yell when you try and
compile it statically.
2002-09-07 01:43:58 +00:00
Peter Wemm 7edc064038 Add the aout module subdir for the i386. 2002-09-07 01:31:38 +00:00
Peter Wemm 5e9e7db454 Add an a.out exec module. 2002-09-07 01:31:21 +00:00
Peter Wemm 21ae145105 Make imgact_aout.c optional. It is i386 specific. 2002-09-07 01:30:36 +00:00
Peter Wemm a9148ab103 Give this a self contained a.out coredump routine.
XXX freebsd-aout coredumps for a linux-aout binary is a bit pointless.
2002-09-07 01:29:21 +00:00
Peter Wemm 1a50106e30 Zap the implementations of the i386-aout specific cpu_coredump function.
Most of the non-i386 platforms had rather broken implementations anyway.
2002-09-07 01:26:34 +00:00
Kris Kennaway 0dafadb731 Add support for ev67 and ev45 CPUTYPEs (new in gcc3) 2002-09-07 01:26:11 +00:00
Peter Wemm 710ded3ac5 Collect the a.out coredump code into the calling functions.
XXX why does pecoff dump in a.out format?
2002-09-07 01:23:51 +00:00
Maxime Henrion af1ed8d074 List the new athlon CPUs supported by the CPUTYPE make variable.
Submitted by:	kris
2002-09-07 01:19:15 +00:00
Maxime Henrion 8e4b67a2a3 Update to use all the new CPU optimizations of GCC3.
Reviewed by:	kris
2002-09-07 01:15:29 +00:00
John Baldwin 7bbb0b56e4 Add a subclass of the PCI-PCI bridge driver that uses the PCIBIOS to
route interrupts if the child bus is described in the PCIBIOS interrupt
routing table.  For child busses that are in the routing table, they do
not necessarily use a 'swizzle' on their pins on the parent bus to route
interrupts for child devices.  If the child bus is an embedded device then
the pins on the child devices can be (and usually are) directly connected
either to a PIC or to a Interrupt Router.  This fixes PCIBIOS interrupt
routing across PCI-PCI bridges for embedded devices.
2002-09-06 22:19:39 +00:00
John Baldwin c3ba1376f5 Add a function pci_probe_route_table() that returns true if our PCI BIOS
supports interrupt routing and if the specified PCI bus is present in the
routing table.
2002-09-06 22:15:44 +00:00
John Baldwin 38906aed9a Export pcib_attach() as a "protected" for use in subclasses of the PCI-PCI
bridge driver.
2002-09-06 22:14:00 +00:00
Maxim Sobolev af7027033d Include <netinet/ip.h> to unbreak kdump. I don't know why does kdump
includes if_gre.h at all, but it does, without including ip.h before
that.

Poked by:	peter
Pointy hat to:	kdump(1)
2002-09-06 21:58:57 +00:00