Commit Graph

116007 Commits

Author SHA1 Message Date
Andrew Thompson
31997bf223 Add if_bridge, which provides more advanced Ethernet bridging and 802.1d
spanning tree support.

Based on Jason Wright's bridge driver from OpenBSD, and modified by Jason R.
Thorpe in NetBSD.

Reviewed by:	mlaier, bms, green
Silence from:	-net
Approved by:	mlaier (mentor)
Obtained from:	NetBSD
2005-06-05 02:59:26 +00:00
R. Imura
181fc3c6ea Avoid casting from (int *) to (size_t *) in order to fix udf_iconv on amd64.
Reviewed by:	scottl
MFC after:	2 weeks
2005-06-05 02:09:48 +00:00
Garance A Drosehn
b8eb1eccee Use the ki_udata field that was recently-added to kinfo_proc, instead of
stealing ki_spare[0] to hold a pointer.
2005-06-04 23:40:09 +00:00
Marius Strobl
fce21e7e25 After some input from bde@ and rereading the datasheet use a MTX_SPIN
mutex instead of a MTX_DEF one in order to defer preemption while
reading the date and time registers. If we don't manage to read them
within the time slot where we are guaranteed that no updates occur we
might actually read them during an update in which case the output is
undefined.
2005-06-04 23:24:50 +00:00
Dag-Erling Smørgrav
5bfbdca45a Rewrite some of the regexps so they don't match themselves. 2005-06-04 23:18:33 +00:00
Tim Kientzle
495b0c0d52 Minor clean up for flags restoration: Use fchflags/lchflags when
available, stub out flags restore on platforms that don't support it,
update autoconf to probe for fchflags and lchflags support.
2005-06-04 22:30:36 +00:00
Tim Kientzle
48864d8c25 Sort archive_entry_ctime/archive_entry_ctime_nsec correctly. 2005-06-04 22:26:23 +00:00
Tim Kientzle
f87c3529a8 Support libarchive with C++ by adding appropriate conditional
extern "C" declarations.
2005-06-04 22:24:04 +00:00
Tim Kientzle
43b1ef9bc2 Fix one error in the example usage of the archive_write API and fill
in a few missing details.  The example code here is now a complete,
functioning example program.
2005-06-04 22:19:25 +00:00
Marcel Moolenaar
ed57871e83 Fix getsecs(). It was not counting the seconds right. The immediate
and visible effect of the bug what that autoboot would boot a kernel
after only a couple of seconds had passed instead of waiting the
full 10 seconds it's supposed to wait by default.
Add my copyright notice, since one was missing and I reimplemented
the one and only function in this file.

MFC after: 1 week
2005-06-04 21:55:51 +00:00
Marius Strobl
3a61f787fb Replace the band-aid for allowing to call sunkbd_configure() multiple
times which was added in the last revision with what should be a proper
solution as long as keyboards that were pluggged in after the kernel
has fully booted aren't supported. I.e. when sunkbd_configure() is
called for the high-level console probe make sure that the keyboard is
both successfully configured (i.e. also probed) and attached. The band-
aid left the possibility to attach the keyboard device to the high-level
console without attaching the keyboard device itself when the keyboard
is plugged in after uart(4) attached but before syscons(4) does.
2005-06-04 21:54:31 +00:00
Marius Strobl
852962d3c5 On AXi and AXmp boards the NS16550 (used to connect keyboard and mouse)
share their IRQ lines with the i8042. Any IRQ activity (typically during
attach) on the NS16550 used to connect the keyboard when actually the
PS/2 keyboard is selected in OFW causes interaction with the OBP i8042
driver resulting in a hang (and vice versa). As RS232 keyboards and mice
obviously aren't meant to be used in parallel with PS/2 ones on these
boards don't attach to these NS16550 in case the RS232 keyboard isn't
selected in order to prevent such hangs.

Ok'ed by:	marcel
2005-06-04 21:52:56 +00:00
Marcel Moolenaar
b7b527edfa Fix delay(). The processor cycle counter is a 32-bit wrapping counter.
Hence, mask off the upper 32 bits and deal with wrap-arounds.

MFC after: 1 week
2005-06-04 21:50:44 +00:00
Marius Strobl
ecf4269527 Change the semantics of uart_cpu_getdev_keyboard() to only match SCCs/
UARTs used to connect keyboards and not also PS/2 keyboards and only
return their package handle in case the keyboard is the preferred one
according to the OFW but otherwise still regardless of whether the
keyboard is used for stdin or not. This is simply achieved by looking
at the 'keyboard' alias and returning the corresponding package handle
in case it refers to a SCC/UART. This is change is done in order to
give the keyboard which the OFW or the user selected in OFW on boards
that support additional types of keyboards besides the RS232 ones also
preference in FreeBSD. It will be also used to determine on Sun AXi and
Sun AXmp boards whether a PS/2 or a RS232 is to be used as these are
sort of mutual exclusive there (see upcoming commit to uart_bus_ebus.c).
Note that Tatung AXi boards have the same issue but the former code
happened to already give the PS/2 keyboard preference by not identifying
the respective UART as keyboard system device there because the PS/2
keyboard node precedes the keyboard UART one in the OFW device tree of
these boards (which isn't the case for the Sun AXi).

Ok'ed by:	marcel
2005-06-04 21:33:18 +00:00
Marius Strobl
d89b911644 - In machfb_configure() when probed for the high-level console return
the number of registered adapters instead of determining again whether
  stdout is a supported card (and which might have failed to attach and
  register).
- Fix a bug in the handling of the FBIOSCURSOR IOCTL; the code was meant
  to return ENODEV for all invocations expect when used to disable the
  cursor and not just when used for enabling the cursor.
- In case the adapter is the OFW stdout move its OFW cursor to the start
  of the last line on halt so OFW output doesn't get intermixed with what
  FreeBSD left on the screen.
- Drop variable names in the prototypes of some functions in order to
  match the style of majority of the prototypes in this file.
2005-06-04 21:18:30 +00:00
Marius Strobl
df4b30bee2 - In creator_configure() when probed for the high-level console return
the number of registered adapters instead of determining again whether
  stdout is a supported card (and which might have failed to attach and
  register).
- Drop creator_set_mode() and move the relevant parts to creator_fill_rect()
  and creator_putc() respectively. This is a bit cleaner than having to
  make sure that creator_set_mode() was called before creator_fill_rect()
  or creator_putc() are used and matches better what Xorg does.
- Fix a bug in the handling of the FBIOSCURSOR IOCTL; the code was meant
  to return ENODEV for all invocations expect when used to disable the
  cursor and not just when used for enabling the cursor.
- In case the adapter is the OFW stdout move its OFW cursor to the start
  of the last line on halt so OFW output doesn't get intermixed with what
  FreeBSD left on the screen. With hindsight this is what the faking of a
  hardware cursor which was removed in the last revision really was about,
  i.e. to keep the OFW updated about the current cursor position. The new
  approach however is simpler while producing the same result and doesn't
  cause the first letter of the OFW output to be turned into a blank and
  a newline.
- Add variable names to the prototypes of creator_cursor_*() which were
  added in the last revision and list them alphabetically in order to match
  the style of this file.
2005-06-04 21:15:27 +00:00
Marius Strobl
91ee05e122 Add esp(4) to scsi-controller-regex.
MFC after:	1 month
2005-06-04 21:05:37 +00:00
Marius Strobl
8698905073 MFNetBSD: src/libexec/ld.elf_so/arch/sparc64/mdreloc.c 1.26 (partial)
Fix an obvious bug in the 64-bit PLT fixup: the SLLX was by 12 bits, when
it should be 32.

MFC after:	1 month
2005-06-04 20:49:15 +00:00
Marius Strobl
fa5b9b6f64 Now that all affected drivers have been changed remove the helpers
for the SYS_RES_IOPORT -> SYS_RES_MEMORY transition again. While it
was helpful to not need to change all of the affected drivers in a
single pass together with ebus(4) we probably shouldn't start into
6.0 with such a hack.
This requires some of the modules of affected drivers to be rebuilt,
namely: auxio(4), snd_audiocs(4) and puc(4).
2005-06-04 20:31:20 +00:00
Marius Strobl
fcff691970 Account for ebus(4) defaulting to SYS_RES_MEMORY for memory resources
since ebus.c rev. 1.22.
2005-06-04 20:29:28 +00:00
Marius Strobl
07945ccd23 - Take advantage of ebus(4) having switched to SYS_RES_MEMORY for memory
resources in ebus.c rev. 1.22 and collapse the resource allocation for
  both the EBus and SBus variants into auxio_attach_common().
- For the EBus variant make sure that the resource for controlling the
  LED is actually available; (in theory) we could have ended up using
  the resource without allocating it.
2005-06-04 20:27:39 +00:00
Alan Cox
2ca32bcc02 Update .Dd value. 2005-06-04 19:44:09 +00:00
Alan Cox
bbe7bbdfee Eliminate the original method of requesting notification of aio_read(2) and
aio_write(2) completion through kevent(2).  This method does not work on
64-bit architectures.  It was deprecated in FreeBSD 4.4.  See revisions
1.87 and 1.70.2.7.

Change aio_physwakeup() to call psignal(9) directly rather than indirectly
through a timeout(9).  Discussed with: bde

Correct a bug introduced in revision 1.65 that could result in premature
delivery of a signal if an lio_listio(2) consisted of a mixture of
direct/raw and queued I/O operations.  Observed by: tegge

Eliminate a field from struct kaioinfo that is now unused.

Reviewed by: tegge
2005-06-04 19:16:33 +00:00
Brian Feldman
5278d40bcc Better explain, then actually implement the IPFW ALTQ-rule first-match
policy.  It may be used to provide more detailed classification of
traffic without actually having to decide its fate at the time of
classification.

MFC after:	1 week
2005-06-04 19:04:31 +00:00
Warner Losh
e8b2943fab Move MAINTAINER documentation to MAINTAINERS 2005-06-04 16:57:04 +00:00
Warner Losh
0ebab8ae8e Since there's no emulation person, move the entry to upper section 2005-06-04 16:56:35 +00:00
Doug Rabson
63590b95ec Add the proper logic so that we don't try to do SSE stuff unless its
enabled.
2005-06-04 15:36:48 +00:00
Jens Schweikhardt
e201f9ecd1 Release n_hibma's maintainership due to his ENOTIME.
Discussed with, okayed, authorized, requested by, on behalf of:	n_hibma (MAINTAINER)
2005-06-04 10:58:39 +00:00
Ruslan Ermilov
5142c5f201 Fix the source path. 2005-06-04 10:48:21 +00:00
Jeff Roberson
9fe02f7e16 - It's 2005 already, I've been working on this for three years. 2005-06-04 09:24:15 +00:00
Jeff Roberson
21381d1b9e - Don't SLOT_USE() in the preempt case, sched_add() has already taken the
slot for us.  Previously, we would take two slots on every preempt, and
   setrunqueue() would fix it up for us in the non threaded case.  The
   threaded case was simply broken.
 - Clean up flags, prototypes, comments.
2005-06-04 09:23:28 +00:00
Paul Saab
9d17a7a64a Changes to tcp_sack_option() that
- Walks the scoreboard backwards from the tail to reduce the number of
  comparisons for each sack option received.
- Introduce functions to add/remove sack scoreboard elements, making
  the code more readable.

Submitted by:   Noritoshi Demizu
Reviewed by:    Raja Mukerji, Mohan Srinivasan
2005-06-04 08:03:28 +00:00
Gleb Smirnoff
aab8487c61 Fix module build.
MFC after:	3 days
2005-06-04 04:43:14 +00:00
Paul Saab
efe5becafa Wrap copyin/copyout for kevent so the 32bit wrapper does not have
to malloc nchanges * sizeof(struct kevent) AND/OR nevents *
sizeof(struct kevent) on every syscall.

Glanced at by:	peter, jmg
Obtained from:	Yahoo!
MFC after:	2 weeks
2005-06-03 23:15:01 +00:00
Warner Losh
f09aa88c33 In newbus land, ivars can only be accessed for direct child, or when
the driver has unholy private knowledge of its great-*cgrandchildren.
The ACPI allocation routine lacked such knowledge when it tried to do
a default allocation for all descendants, rather than just its
immeidate children, so would access grandchild's ivar in an unsafe
way.  This could lead to a panic when devices were present which had
no addresses setup by the BIOS, but which were later allocated in a
lazy manner via pci_alloc_map.  As such, only do the default
allocation adjustments for immediate children.  The manner that
acpi_sysres_find accesses the resource list, used later in
acpi_alloc_resource, is safe and proper so no additional test is
needed there.

This fixes a panic when probing an disabled ata controller on some
newer intel blades.

Reported by: dwhite
2005-06-03 20:12:12 +00:00
Olivier Houchard
094df9739b Bring in bits I forgot while importing write back support for arm9. 2005-06-03 19:49:53 +00:00
Warner Losh
f9937ed8f3 Mask off the bar's value after the probe test write before testing
against 0 in pci_alloc_map, just like we do in pci_add_map.  Also,
make sure that we restore the value to the BAR that was there before
if the bar is 0.  Chances are that it was 0 before the write too and
that the restoration is a nop, but better safe than sorry.

Notice by: dwhite
2005-06-03 19:41:06 +00:00
Juli Mallett
943af9df1b Remove my involvement from the regression test stuff, I don't know the modified
framework well, and nobody's ever sought my help with writing regression tests,
most people just don't bother with them at all, regrettably.
2005-06-03 18:42:49 +00:00
Hiroki Sato
440f877a34 Remove trailing whitespaces. 2005-06-03 18:42:47 +00:00
Hiroki Sato
852dd726ef New release notes:
FreeBSD/i386 and /amd64 always use the local APIC timer even
	on an UP system,
	vm.blacklist tunable added,
	ipfw now supports IPv4 only rule,
	struct netent and getnetbyaddr(3) POSIX conformance and
        the ABI breakage on 64-bit platforms, and
	GNU GCC 3.4.2-prerelease --> 3.4.4.

Update release notes:
	more machine-specific optimized version of math functions.
2005-06-03 18:37:16 +00:00
Alexander Kabaev
c5faf12094 Use predefined __offsetof__ builtin function when compiling C++ sources. 2005-06-03 17:53:36 +00:00
Suleiman Souhlal
83eb8428e2 - Avoid a memory leak if realloc(3) fails by using reallocf(3)
Submitted by:	Liam J. Foy <liamfoy@dragonflybsd.org>
Approved by:	mdodd (in-lieu of mentor who is away)
MFC after:	1 week
2005-06-03 17:38:33 +00:00
Alexander Kabaev
b297022008 Enable handling of MS-compatible packing push and pop pragmas. This change was
inadvertedly left out of the last import.
2005-06-03 17:35:13 +00:00
Warner Losh
5493b334cc Revert last. It was the result of mismerges from cvs not an actual
need.  _sconfig already was there in the correct place.

Noticed by: ru@
2005-06-03 15:53:37 +00:00
Warner Losh
46813f9674 Missed rwatson's redundancy 2005-06-03 15:50:55 +00:00
Warner Losh
b93c319255 Build sconfig on i386 to match where drivers are made it configures 2005-06-03 15:38:39 +00:00
Warner Losh
6817b38768 Update to reflect takawata-san's changes to MAINTAINERS 2005-06-03 15:35:36 +00:00
Ruslan Ermilov
cff6281847 Fix standalone module build.
Reported by:	Boris Samorodov <bsam@ipt.ru>
2005-06-03 15:31:10 +00:00
Warner Losh
474a2ca954 Remove libz and pppd redundancy 2005-06-03 15:25:13 +00:00
Olivier Houchard
c8a2d8f19c Remove a useless printf. 2005-06-03 15:15:26 +00:00