Commit Graph

113353 Commits

Author SHA1 Message Date
wpaul
593ae58297 MAXPATHLEN is 1024, which means NdisOpenFile() and ndis_find_sym() were
both consuming 1K of stack space. This is unfriendly. Allocate the buffers
off the heap instead. It's a little slower, but these aren't performance
critical routines.

Also, add a spinlock to NdisAllocatePacketPool(), NdisAllocatePacket(),
NdisFreePacketPool() and NdisFreePacket(). The pool is maintained as a
linked list. I don't know for a fact that it can be corrupted, but why
take chances.
2005-03-03 03:51:02 +00:00
marcus
49e020aaeb Fix a problem in the Skinny ALG where a specially crafted packet could cause
a libalias application (e.g.  natd, ppp, etc.) to crash.  Note: Skinny support
is not enabled in natd or ppp by default.

Approved by:	secteam (nectar)
MFC after:	1 day
Secuiryt:	This fixes a remote DoS exploit
2005-03-03 03:06:37 +00:00
dwhite
ac2dd8b794 Insert volatile cast to discourage gcc from optimizing the read outside
of the while loop.

Suggested by:	alc
MFC after:	1 day
2005-03-03 02:41:37 +00:00
delphij
3ec33a490c If a user or group is not known, report the problem user/group, rather than
the first user/group. Caused huge fun in error messages from large script.
Old:	pgrep -u root,NoSuchUser,daemon	-> pgrep: unknown user `root'
Now:	pgrep -u root,NoSuchUser,daemon	-> pgrep: unknown user `NoSuchUser'

Obtained from:	NetBSD (rev. 1.8)
MFC After:	1 week (if re@ would have approved this)
2005-03-03 02:17:20 +00:00
marius
29c3c0268c Remove the transition aid for the change of the sparc64 default system
call vector which was added in rev. 1.52. This change was done way before
sparc64 switched to a 64-bit time_t so all binaries are expected to have
been recompiled by now.
2005-03-03 01:26:40 +00:00
marius
cbc8b92639 Remove COMPAT_FREEBSD4 again. It was added in rev. 1.41 as a transition
aid for ABI breakages caused by system call changes. These changes were
done way before sparc64 switched to a 64-bit time_t so all binaries are
expected to have been recompiled by now.
2005-03-03 01:25:33 +00:00
mux
a98c1e7d35 Fix the panic recently reported on -current@ occuring when configuring
a vlan interface attached to a fxp(4) card when it has not been
initialized yet.  We now set the links from our internel TX descriptor
structure to the TX command blocks at attach time rather than at init
time.  While I'm here, slightly improve the style in fxp_attach().

PR:		kern/78112
Reported by:	Gavin Atkinson <gavin.atkinson@ury.york.ac.uk> and others
Tested by:	flz, Gavin Atkinson <gavin.atkinson@ury.york.ac.uk>
MFC after:	1 week
2005-03-03 00:22:59 +00:00
jhb
beec1e31ad Automatically switch to ttyv3 where the fixit shell is running when using
the standard console and any fixit mode.

MFC after:	1 day
2005-03-02 22:48:13 +00:00
jhb
57512eae36 Rework how we layout the CD/DVD ISO images for releases. Note that this
is only the first stage and does not yet handle packages (which will move
to their own disc(s)).
- By default, include the live filesystem on disc1, so that disc1 is now
  both an install disc and a fixit disc.  The images can still be split
  into two separate discs by specifying SEPARATE_LIVEFS=yes.
- Remove /usr/ports from the live filesystem disc as the merged images
  do not fit on even i386 otherwise.  Also, the merged image already
  contains a tarball of the entire ports tree, so /usr/ports was a
  duplicate anyway.
- Stop building port READMES for the release sinc they are no longer used
  (/usr/ports in the live filesystem was the last remaining user).
- Split cdrom.1 into three targets.  cdrom.1 builds the live filesystem
  image.  cdrom.2 builds the disc1 image.  Note that if SEPARATE_LIVEFS
  is not specified these both write to the same area.  cdrom.3 builds
  the bootonly image and the UFS miniroot.
- The various distribution directories are now in a <buildname>
  subdirectory of disc1 rather than being in the root so that the merged
  image's root is not quite as cluttered.
- The disc1 image is now called disc1.iso and we no longer build a
  miniinst.iso image.  If CD_EXTRA_BITS is defined, then the iso.1 target
  will simply include those bits in the disc1 image that it builds.

MFC after:	1 day
Requested by:	re (scottl, etc.)
2005-03-02 22:46:07 +00:00
jhb
7040795aae - Fix a bug in sysinstall related to mounting CD-ROMs. If mount(2) fails
with EBUSY and a cdrom is not mounted at /cdrom, sysinstall fails to
  treat it as an error and thinks that the disk mounted ok.  However, it
  doesn't find a cdrom.inf file so it complains.  Later when it tries to
  unmount the disk due to a mediaClose() umount(2) returns an error, and it
  never clears its internal mounted flag.  The fix here is to properly
  handle EBUSY as an error if there isn't a CD already mounted at /cdrom.
- Add a new CDROMInitQuiet variable that can be used to shut up the dialog
  box about the mount(2) system call failing when trying to mount a CD-ROM.
  This is used by the feature described below.
- When using a fixit CD, first try to see if we can mount the disc in the
  drive now and use it as a fixit CD.  If not, then prompt the user to
  insert the disc and try again.  If we do succeed on the first "silent"
  probe then we don't ask the user to eject the disk after leaving fixit
  mode.
- Add a simple file existence test to make sure that the disc that we mount
  really is a livefs disc.
- Explicitly switch back to ttyv0 when using the standard console after
  the fixit shell dies.  Previously this behavior worked accidentally
  because all the fixit modes popped up a dialog box which contained a
  hidden switch to ttyv0.

MFC after:	1 day
2005-03-02 22:27:22 +00:00
jmg
37bd88d90f fix a bug where bpf would try to wakeup before updating the state.. This
was causing kqueue not to see the correct state and not wake up a process
that is waiting...

Submitted by:	nCircle Network Security, Inc.
2005-03-02 21:59:39 +00:00
joerg
c85a3e95f7 netchild's mega-patch to isolate compiler dependencies into a central
place.

This moves the dependency on GCC's and other compiler's features into
the central sys/cdefs.h file, while the individual source files can
then refer to #ifdef __COMPILER_FEATURE_FOO where they by now used to
refer to #if __GNUC__ > 3.1415 && __BARC__ <= 42.

By now, GCC and ICC (the Intel compiler) have been actively tested on
IA32 platforms by netchild.  Extension to other compilers is supposed
to be possible, of course.

Submitted by:	netchild
Reviewed by:	various developers on arch@, some time ago
2005-03-02 21:33:29 +00:00
marcel
2307c11d0f Make sure fpswa_iface equals NULL when bootinfo.bi_fpswa equals 0.
We need to be able to test for the (possible) non-existence of the
FPSWA code.

PR: ia64/77591
Submitted by: Christian Kandeler (christian dot kandeler at hob dot de)
MFC after: 1 day
2005-03-02 20:29:04 +00:00
marius
d01b3831e7 Remove unused variables. 2005-03-02 20:12:27 +00:00
kbyanc
392eda7ce9 Set the TCP_NODELAY socket option and clear TCP_NOPUSH in order to flush
any pending HTTP request rather than calling shutdown(2) with SHUT_WR.
This makes libfetch (and thus fetch(1)) work again with Squid proxies
configured to not allow half-closed connections.

Reported by:	Pawel Worach (pawel.worach AT telia DOT com)
2005-03-02 19:09:28 +00:00
brooks
0c521317a0 It is sufficent to require rcconf rather than initdiskless. 2005-03-02 19:03:08 +00:00
brooks
e8a4ee68d5 Document the newsyslog_* and chkprintcap_* variables I added yesterday. 2005-03-02 18:44:56 +00:00
marcel
d810912cf5 Implement and document the -q and -f options with their corresponding
long form (-quiet and -fullname resp.) Bump documentation date.

PR: bin/78031
MFC after: 5 days
2005-03-02 18:40:04 +00:00
brooks
924c3f6df2 Remove stray else.
Reported by:	Tai-hwa Liang <avatar at mmlab dot cse dot yzu dot edu dot tw>
Point hat:	brooks
2005-03-02 16:41:35 +00:00
ru
86bbb8bc22 Add hacks that I use to test cross-builds (by building on
native and foreign architectures and comparing products).
They eliminate most of the differences caused by different
object directory paths, timestamping, and identification.

(Note WORLDTMP was renamed to ${OBJTREE}${.CURDIR}/tmp.)
2005-03-02 16:40:51 +00:00
scottl
cee9e98f0e The existing locking in the esp driver appears to be fairly adequate, so
set the interrupt handler to be INTR_MPSAFE now that xpt_done() can be
called without Giant.  Giant is still on the top half of the driver and
the timeout handlers.
2005-03-02 15:56:42 +00:00
harti
0724297b39 Move the check for the error case (variable ends without a closing
paranthesis or brace) into the loop and don't leak the buffer in this
case. Remove the check for Var_Parse returning NULL - it can't.

Patch:		7.92

Submitted by:	Max Okumoto <okumoto@ucsd.edu>
2005-03-02 15:52:04 +00:00
scottl
4d2ae547ed Clean up the botching of the previous repo-copy. Reference the included
headers from the correct location.

Submitted by: Tai-hwa Liang
2005-03-02 15:13:37 +00:00
jhb
f44acad97a Use the shiny, new top-level 'distribution' target when populating the
chroot area.  This fixes make release of HEAD on systems that have a
/usr/src with bsd.endian.mk and a matching /usr/obj but haven't installed
the world in /usr/obj and thus have no bsd.endian.mk /usr/share/mk.
2005-03-02 14:57:45 +00:00
harti
70c2a8abb1 Fix indentation on a block of code.
Patch:		7.91

Submitted by:	Max Okumoto <okumoto@ucsd.edu>
2005-03-02 14:43:40 +00:00
harti
b1816b2629 Push the length computation down into VarParseShort().
Return always malloc()-ed strings from VarParseShort() to get
rid of warnings when returning string constants from a non-const char *
function.

Patch:		7.90

Submitted by:	Max Okumoto <okumoto@ucsd.edu>
2005-03-02 14:30:36 +00:00
jhb
af763c99a0 Tweak the lapic timer code to get the performance closer to the pre-lapic
timer case:
- Remove the virtual fooclock interrupt counters as they have served their
  purpose.
- Adjust the dividers for the different clock such that profhz is now a
  multiple of stathz as in the non-lapic case, and the timer now runs at
  hz * 2 rather than hz * 3.  With the new divisors, the default clock
  rates are:

  kern.clockrate: { hz = 1000, tick = 1000, profhz = 666, stathz = 133 }
2005-03-02 14:17:43 +00:00
davidxu
5bf5079e95 In kern_sigtimedwait, remove waitset bits for td_sigmask before
sleeping, so in do_tdsignal, we no longer need to test td_waitset.
now td_waitset is only used to give a thread higher priority when
delivering signal to multithreads process.
This also fixes a bug:
when a thread in sigwait states was suspended and later resumed
by SIGCONT, it can no longer receive signals belong to waitset.
2005-03-02 13:43:51 +00:00
harti
13d684fd15 Repo-copy tools/regression/usr.bin/make to tools/build/make_check
and adjust the path in the Makefile for the upgrade_checks target.
These checks are really feature upgrade checks that should be fast
and just find out whether we need to build a new make before
proceeding with other targets like buildworld. This makes the
place free for a real regression test suite in the old place.
2005-03-02 12:33:23 +00:00
grehan
9cbbd424d8 PowerPC support for kldxref by handling the PPC-specific relocations. 2005-03-02 12:27:42 +00:00
harti
cfe299800f Convert a function call to Lst_ForEach with a macro call to LST_FOREACH. 2005-03-02 12:00:21 +00:00
trhodes
792676bbc2 Wrap BSD r* commands in NO_RCMDS.
Change NO_RCMDNS to NO_RCMDS and do the switch in bsd.compat.mk.

Discussed with: ru, nectar
2005-03-02 11:53:22 +00:00
marius
271a503969 - Allocate the interrupt resource as RF_SHAREABLE allowing uart(4) to work
with shared IRQs in case the bus code, MD interrupt code, etc. permits.
  Together with sys/sparc64/sparc64/intr_machdep.c rev. 1.21 this fixes
  an endless loop in uart_intr() when using the second NS16550 on the ISA
  bus of sparc64 machines.
- Destroy the hardware mutex on detach and in case attaching fails.

Approved by:	marcel
2005-03-02 11:30:14 +00:00
marius
965a0e0ac4 - Allow multiple INTR_FAST handlers for the same source. The motivation
for this are the on-board SCCs and UARTs that use a shared IRQ. [1]
- Rework the interrupt counting code to account for shared interrupts. [1]
- In case ithread_add_handler() failed in inthand_add() just return with
  the error code instead of setting up a non-fast handler regardless or
  setting up a non-fast handler instead of a fast handler. I can't think
  of a situation where the former behaviour would do the right thing.

Reviewed by:	marcel [1]
Based on:	sys/i386/i386/intr_machdep.c [1]
2005-03-02 11:27:13 +00:00
marius
23e41858b8 Assorted style fixes and minor changes:
- Use FBSDID.
- Use uintXX_t instead of u_intXX_t.
- Be consistent with white-space.
- Mark some globals as static.
- Add a missing prototype.
- Remove a unused variable.
- etc.
2005-03-02 10:55:56 +00:00
njl
8ec4560902 Only install acpiio.h in /usr/include. That's all we want to export to users.
Submitted by:	ru (any bugs by me)
MFC after:	1 day
2005-03-02 10:45:09 +00:00
obrien
8e62c29bdd Fix SCM ID's. 2005-03-02 09:22:34 +00:00
glebius
96ce85223e Fix typo. Unbreak build. Take pointy hat. 2005-03-02 09:11:18 +00:00
jcamou
898c20415c Add an entry for myself.
Approved by:	trhodes (mentor)
2005-03-02 09:08:17 +00:00
harti
9dee98908c Use the LST_FOREACH macro instead of the Lst_ForEach function. This
saves function calls and reduces void casting.
2005-03-02 08:30:49 +00:00
ru
e80e223f73 Sync the list of headers visible with SHARED=symlinks with those
visible with SHARED=copies.

Inspired by:	njl
2005-03-02 07:40:18 +00:00
kientzle
7c8883e740 Use correct byte order when parsing the size of the gzip "Extra data" field.
In particular, this correctly allows bsdtar (and pkg_add) to skip
package signatures.

Thanks to: Theo Schlossnagle
2005-03-02 05:34:05 +00:00
trhodes
91d219a001 Document NO_RCMDS, bump doc date. 2005-03-02 05:22:27 +00:00
scottl
234c4487a0 Move all of the hptmv files to /sys/dev/hptmv so that they won't be mistaken
for being on a CVS vendor branch.  The files were moved via a repo-copy.
2005-03-02 05:14:28 +00:00
suz
081ad05e6e ignores ICMPv6 code field in case of ICMPv6 Packet-Too-Big (as specified in RFC2463 and draft-ietf-ipngwg-icmp-v3-06.txt)
Obtained from: KAME
MFC after: 1 day
2005-03-02 05:14:15 +00:00
njl
89cf2871b8 Protect acpivar.h with _KERNEL. No user parts inside currently. 2005-03-02 04:36:24 +00:00
mdodd
b7cba6037a When resubmitting a timed out request, reset donecount.
Submitted by:	  Nate Lawson <nate AT root.org>
2005-03-02 04:01:37 +00:00
ambrisko
76dfd3add8 This will not compile without:
http://www.ambrisko.com/doug/listio_kqueue/listio_kqueue.patch

Note: it is a good idea to run this against a physical drive to
exercise the physio fast path (ie. lio_kqueue /dev/<something safe>)
This will ensure op's counting per LIO request is correct.  It is
currently broken the above patch fixes it.

Sponsored by:   IronPort
2005-03-02 04:00:55 +00:00
mdodd
58f0b642ef Handle PIO timeouts in ata_end_transaction() by immediately returning.
Failure to do this will result in following ata_pio_read() calls walking
off the end of the read buffer.

This resolves the "memory modified after free" panics common with Thinkpads
and CD/DVD drives.

Submitted by:	 Nate Lawson <nate AT root.org>
2005-03-02 03:59:28 +00:00
trhodes
256f3d19f8 Add NO_RCMDS to the list. 2005-03-02 03:49:02 +00:00