Commit Graph

56027 Commits

Author SHA1 Message Date
luigi
a7363a0fe8 Assorted bugfixes:
+ configuration: make sure that the NUL at the end of the config
   string is properly detected and handled, and the stats passed
   up via sysctl properly reflect which interfaces do bridging.
   (The whole config support might make good use of some cleanup
   in the future).

 + fixed some bugs related to the corruption of multicast and
   broadcast packets: make sure that for those packets the entire
   IP + ethernet header is in the mbuf, not in a cluster, so
   that writes performed in that area by the upper layers do
   not affect us.

 + performance: when calling m_pullup, make room for the ethernet header
   as well, we are going to add it in right after. Also, change an m_dup
   back to m_copypacket. The former is not necessary anymore now, and
   it did not help, anyways.

I will do a fast MFC because 95% of this patch is fixing bad bugs
and i doubt anyone would test the fix in CURRENT. Plus the last
two items mostly bring back some code which was already there in 4.0
times.
2001-01-22 22:34:53 +00:00
mjacob
6c5381dc64 Move (now) unused variable declaration inside the block (now commented out). 2001-01-22 22:22:38 +00:00
gibbs
4d9966a39e ahc_eisa.c:
Initialize rid to 0.  This doesn't seem to make any difference
	(the driver doesn't care what rid it gets and no-one seems to
	check rid's value), but follows standard conventions.

	Pass in our device_t to ahc_alloc().  We now use device_T
	softc storage, so passing NULL results in a panic.

	Set the unit number in our softc so that the driver core
	can retrieve it.

ahc_pci.c:
	Set the unit number in our softc so that the driver core
	can retrieve it.

aic7770.c:
	Insert our softc into the list of softcs when initialization
	is successful.

aic7xxx.c:
	Remove a workaround for an aic7895 bug we will never trigger.

	Add additional diagnostic info to ahc_dump_card_state().

	Always panic the system if a sequencer assertion fails.

	AHC_SCB_BTT is a "flag" not a "feature".  Check the right
	field in the softc.

	Replace a hard coded number with a constant.

	Guard against looping forever in ahc_pause_and_flushwork().
	A hot eject or card failure may make the intstat register
	return 0xFF, so limit the number of interrupts we'll process.

	Correct the code in ahc_search_qinfifo() that guarantees that
	the sequencer will see an abort collision if the qinfifo is
	modified when a DMA is in progress.  We now do this fixup
	after modifying the queue.  This guarantees that the HSCB
	we place at the head of the queue is not the same as the
	old head.  Using "next hscb" (guaranteed not to be the
	same as the first SCB) before clearing the queue could free
	up the original head hscb to be used during a remove operation
	placing it again at the head of the qinfifo.

aic7xxx.h:
	Reduce the maximum number of outstanding commands to 253 from
	254.  To handle our output queue correctly on machines that only
	support 32bit stores, we must clear the array 4 bytes at a
	time.  To avoid colliding with a DMA write from the sequencer,
	we must be sure that 4 slots are empty when we write to clear
	the queue.  This reduces us to 253 SCBs: 1 that just completed
	and the known three additional empty slots in the queue that
	preceed it.  Yahoo was able to force this race on one of their
	systems.  Interrupts were disabled for such a time that the
	entire output queue was filled (254 entries complete without
	any processing), and our 32bit write to clear the status clobbered
	one entry.

	Add a feature tag for devices that are removable.

aic7xxx.reg:
	Never use the sequencer interrupt value of 0xF0.  We need
	to guanrantee that an INTSTAT value of 0xFF can only occur
	during card failure or a hot-eject.

	Align the busy targets table with the begining of scratch
	space.  This seems to appease a chip bug in the aic7895.

aic7xxx.seq:
	Be sure to disable select-out after a bus free event that occurs
	early in a selection.  If we don't disable select-out, we will
	believe that it is enabled even though a new selection will never
	occur.

	Move the clearing of SELDI to just before a jump.  This appeases
	another chip bug of the aic7895.

	Make the target mode command loop a bit more efficient.

	AHC_SCB_BTT is a "flag" not a "feature".  Check the right
	field in the softc.

	Properly cleanup the last SCB we tested against should we
	fail to properly find an SCB for a reselection.

	Add some additional sequencer debugging code.

aic7xxx_freebsd.c:
	Limit the driver to 253 outstanding commands per adapter.

	Guard against overflow in timeout handling.

aic7xxx_inline.h:
	AHC_SCB_BTT is a "flag" not a "feature".  Check the right
	field in the softc.

aic7xxx_pci.c:
	Set the removable feature for the apa1480 cardbus and the 29160C
	Compact PCI card.

	Don't report high byte termination information for narrow cards.

	Use a PCI read rather than a questionable delay when fetching/setting
	termination settings.
2001-01-22 21:03:48 +00:00
ume
301ceeb33d avoid conflicting #define symbol (s/FW_IFNLEN/IP6&/).
Obtained from:	KAME
2001-01-22 19:20:06 +00:00
ben
37695f4546 mdoc police.
Submitted by:	ru
2001-01-22 18:37:51 +00:00
julian
a91cde79fe Add MTX_SPIN to an mtx_init( 2001-01-22 17:51:48 +00:00
ru
e7b55dbcf1 man(7) -> mdoc(7). 2001-01-22 17:44:36 +00:00
ru
a9774aa7fa mdoc(7) police: use macros wherever possible, remove hard sentence breaks. 2001-01-22 13:08:59 +00:00
sobomax
cb8779b942 Use .Pa instead of .Dq.
Submitted by:	ru
2001-01-22 13:08:52 +00:00
ume
c678f46a19 on in6_ifdetach(), do not remove default route mistakenly
Obtained from:	KAME
2001-01-22 13:02:10 +00:00
benno
f1e70294d8 Add support for configuring PowerPC kernels.
Reviewed by:	peter
2001-01-22 12:10:45 +00:00
sobomax
a7de4cce1e - Add ability to handle bzip2-compressed packages;
- fix cosmetics to shut-up compiler in -pedantic mode (axe several unused vars
  and provide default clause in several switch() statements).

No response from:	-ports
2001-01-22 12:01:55 +00:00
brian
89713f84c0 Fix for NetBSD where
.Oc Oc
  .Xc

doesn't seem to work....
2001-01-22 11:35:00 +00:00
nyan
591d99c108 Added PC-98 apm support.
Submitted by:	MURAMATSU Atsushi <amura@ma3.seikyou.ne.jp>
2001-01-22 11:27:25 +00:00
ru
72bf3d71c8 Prepare for mdoc(7)NG. 2001-01-22 10:44:54 +00:00
ru
b11dc1b3ae mdoc(7) police: .Dv -> .Cm where appropriate. 2001-01-22 10:32:03 +00:00
ru
79125d6dc0 mdoc(7) police: ``Ds'' is not certified (no macro with such name exist)
to be used as the -width parameter, it is provided solely for backwards
compatibility with old mdoc(7).  To make this work, mdocNG is forced to
provide a dummy ``Ds'' macro.
2001-01-22 10:27:07 +00:00
imp
eef8c6f7b9 As threatened in hackers@ on Friday, obviate the need for a buildworld
to preceed a buildkernel.

The buildworld is still required when upgrading across major releases,
across binutil upgrades and when config changes version.  If
buildkernel breaks, and you haven't done a buildworld, then do not
complain unless you do a buildworld and it still breaks.
2001-01-22 08:07:58 +00:00
imp
bba4ebbdfd Note change of KERNEL to KERNCONF for building instructions. Peter
changed this due to the undesirable side effects that putting KERNEL
in /etc/make.conf was having on people's lives.  Also update the
instructions as well.
2001-01-22 08:03:13 +00:00
peter
ee06b9ce92 Using "KERNEL" for buildkernel was a very very bad mistake. $KERNEL is
already used by the kernel makefiles themselves, and this leads to a lot
of trouble when people put "KERNEL=MYKERNEL" in make.conf.  Bite the bullet
and change it to KERNCONF instead, before it gets too far entrenched.

The kernel Makefiles use ${KERNEL} as the name of what to install the
kernel as, eg: /boot/${KERNEL}/kernel or /${KERNEL}.  This leads to much
unhappiness with things like /LOCAL instead of /kernel.  buildkernel is
severely limited as it is only useful directly after a buildworld.

Reviewed by: jhb
2001-01-22 07:29:48 +00:00
peter
13a64523e9 Clean up some obsolete stuff. config -r has not been needed since around
FreeBSD 3.x or so when the 'make depend' picked up the opt_foo.h files.
Convert warnings into actual errors in the hope that buildkernel users
will pay more attention. :-(
2001-01-22 07:03:06 +00:00
des
30bc358ebb Call vm_zone_init() at the appropriate time.
Reviewed by:	jasone, jhb
2001-01-22 07:02:42 +00:00
des
6929628df0 Give this code a major facelift:
- replace the simplelock in struct vm_zone with a mutex.

 - use a proper SLIST rather than a hand-rolled job for the zone list.

 - add a subsystem lock that protects the zone list and the statistics
   counters.

 - merge _zalloc() into zalloc() and _zfree() into zfree(), and
   move them below _zget() so there's no need for a prototype.

 - add two initialization functions: one which initializes the
   subsystem mutex and the zone list, and one that currently doesn't
   do anything.

 - zap zerror(); use KASSERTs instead.

 - dike out half of sysctl_vm_zone(), which was mostly trying to do
   manually what the snprintf() call could do better.

Reviewed by:	jhb, jasone
2001-01-22 07:01:50 +00:00
jasone
cf0a6d372c Print correct file name and line number in mtx_assert().
Noticed by:	jake
2001-01-22 05:56:55 +00:00
msmith
71aff7f1c7 Plug a memory leak in AcpiOsDeleteSemaphore where the mutex is not properly
destroyed.

Submitted by:	bmilekic
2001-01-22 05:33:36 +00:00
babkin
2a8a2cb55a Made the special handling of the daylight time switches optional,
enabled by the option "-s" (for dSt). This returned the default behavior
to its original form.

The new option name is not "-d" because that would cause associations with
"debug" and cron already has "-x" for debugging, so this would cause
confusion.
2001-01-22 01:54:51 +00:00
brian
0b427e62c3 Handle SECDNS being rejected when PRIDNS is not
Submitted by:	OGAWA Takaya <t-ogawa@triaez.kaisei.org>
PR:		24518
2001-01-22 01:43:46 +00:00
jkh
64445bb95a Also add some timing information for kernel builds so that it's
easy to do "make world kernel |grep -e '^>>>'" and get a complete
event log.
2001-01-21 23:44:41 +00:00
julian
506e7f0e18 remove stupid braino (recursive mutex)
tripped over by: PHK
2001-01-21 23:32:00 +00:00
phk
744bd48fc5 General cleanup. 2001-01-21 22:57:56 +00:00
jasone
ec55088093 Move most of sys/mutex.h into kern/kern_mutex.c, thereby making the mutex
inline functions non-inlined.  Hide parts of the mutex implementation that
should not be exposed.

Make sure that WITNESS code is not executed during boot until the mutexes
are fully initialized by SI_SUB_MUTEX (the original motivation for this
commit).

Submitted by:	peter
2001-01-21 22:34:43 +00:00
gshapiro
1ef4c9883a sendmail 8.11.2 has been imported 2001-01-21 22:24:37 +00:00
des
b3c27aaaf7 First step towards an MP-safe zone allocator:
- have zalloc() and zfree() always lock the vm_zone.
 - remove zalloci() and zfreei(), which are now redundant.

Reviewed by:	bmilekic, jasone
2001-01-21 22:23:11 +00:00
gshapiro
c26d01c0b9 Update FreeBSD import README 2001-01-21 22:22:31 +00:00
gshapiro
e804c25caf Repair 8.11.2 merge conflicts 2001-01-21 22:21:43 +00:00
gshapiro
c5e098efbe This commit was generated by cvs2svn to compensate for changes in r71345,
which included commits to RCS files with non-trunk default branches.
2001-01-21 22:17:06 +00:00
gshapiro
167a83e7b8 Import sendmail 8.11.2 2001-01-21 22:17:06 +00:00
phk
f1e9c33a34 Update these netgraph drivers in current so that these changes can be
MFC'ed i due time.  I can't test it under current right now because
netgraph seems to do unethical things with mutexes.

musycc:
	Add status per channel.
	Reduce printf chattyness
	Keep error counters line if_mn does.
	Increase descriptor count.

if_mn:
	Support experimental unframed E1 lines.

These two drivers should share more code relating to framed channelized
TDM media in general (T1/E1/E3/T3, Sonet).  Anyone interested email me.
2001-01-21 22:16:20 +00:00
phk
ea80761e20 Convert a Debugger(3) to a panic(9) and a EINVAL.
Reminded by:	bde
2001-01-21 21:19:49 +00:00
dougb
e3a3551537 Add the options of which cron program to run, and specifying flags
to it.

PR:		conf/24358
Submitted by:	Gerhard Sittig <Gerhard.Sittig@gmx.net>
2001-01-21 20:57:38 +00:00
jake
937122ae6d Make intr_nesting_level per-process, rather than per-cpu. Setup
interrupt threads to run with it always >= 1, so that malloc can
detect M_WAITOK from "interrupt" context.  This is also necessary
in order to context switch from sched_ithd() directly.

Reviewed By:	peter
2001-01-21 19:25:07 +00:00
imp
d326c51b74 wi has been converted to NEWCARD, so included it when pccard is
included.

Also, I forgot to update this to the new cis[] structure last night,
mainly due to the above omission.
2001-01-21 18:10:38 +00:00
sos
4df68a4783 Correct botchup in last commit that made older VIA chips fail... 2001-01-21 16:13:03 +00:00
ume
d8c3e3afc2 permit icmp6 type <= 256 (was 32).
Obtained from:	KAME
2001-01-21 16:07:08 +00:00
itojun
a458f7bcea make it easier to handle $FreeBSD$ tags (amount of diff matters). 2001-01-21 15:25:46 +00:00
itojun
23a36fd8e2 make it clearer that rtadvd.conf is optional (configs are grabbed from kernel). 2001-01-21 15:25:05 +00:00
jasone
c3fd76623a Make the order of the static initializer for all_mtx match the order of
fields in struct mtx.

Found by:	jake
2001-01-21 11:05:02 +00:00
hm
9c4d942508 Update the iwic driver: fix error handling for rx errors on the D-channel
which prevents erroneous packets from being put onto the protocol stack;
enhance error detection for B-channel HDLC errors; remove old cvs id´s.
2001-01-21 10:12:50 +00:00
will
7e6a937974 Fix numerous style(9) bugs: Put #define's before declarations; sort the
declarations & their arguments; use only one tab after types; restore the
type of argv to sync with src tree style; sort new variables under main();
fix continuation indents; remove extra blank line before free()'s.  Still
to do: fix snprintf() handling as nectar & bde suggested to me.

Submitted by:	bde
2001-01-21 08:37:35 +00:00
will
9e75a55e4b Fix style(9) bug; use ISDOT[DOT,]() macro available in util.c by moving
it to make.h so both dir.c and util.c can use it, although bde didn't
particularly like this part of the idea, IMO it's cleaner than it was.

Submitted by:	bde
2001-01-21 08:24:41 +00:00