Commit Graph

67330 Commits

Author SHA1 Message Date
Luigi Rizzo
01faf54bb0 For i386 architecture, remove an expensive m_devget() (and the
underlying unaligned bcopy) on incoming packets that are already
available (albeit unaligned) in a buffer.
The performance improvement varies, depending on CPU and memory
speed, but can be quite large especially on slow CPUs. I have seen
over 50% increase on forwarding speed on the sis driver for the
486/133 (embedded systems), which does exactly the same thing.

The behaviour is controlled by a sysctl variable, hw.dc_quick which
defaults to 1. Set it to 0 to restore the old behaviour.

After running a few experiments (in userland, though) I am convinced
that doing the m_devget() is detrimental to performance in almost
all cases.

Even if your CPU has degraded performance with misaligned data,
the bcopy() in the driver has the same overhead due to misaligment
as the one that you save in the uiomove(), plus you do one extra
copy and pollute the cache.

But more often than not, you do not even have to touch the payload,
e.g. when you are forwarding packets, and even in the often-cited
case of NFS, you often end up passing a pointer to the payload to
the disk controller.

In any case, you can play with the sysctl variable to toggle between
the two behaviours, and see if it makes a difference.

MFC-after: 3 days
2001-11-29 22:46:48 +00:00
Brian Feldman
7d8cee925b Fix pam_ssh by adding an IPv4or6 (evidently, this was broken by my last
OpenSSH import) declaration and strdup(3)ing a value which is later
free(3)d, rather than letting the system try to free it invalidly.
2001-11-29 21:16:11 +00:00
Bruce A. Mah
57d484c8cc Bring release note on /dev/net into line with reality. 2001-11-29 19:00:16 +00:00
Alfred Perlstein
8c7daee735 Fold ANDREW_LOCKD into -current. 2001-11-29 17:36:45 +00:00
Brian Feldman
a240291a2a Note that stty is a utility and not... err... a program....
Submitted by:	ru
2001-11-29 15:46:54 +00:00
Andrew Gallatin
a58b29a603 fix DIAGNOSTIC panic caused by proc/thread typo
tested by: Martijn Pronk <martijn@smartie.xs4all.nl>
2001-11-29 15:33:46 +00:00
Andrey A. Chernov
307b922e38 Clarify that is[x]digit() class is the same in any locale 2001-11-29 15:23:46 +00:00
Mitsuru IWASAKI
fcb24d01b0 Fix a bug about CIS string comparison. Pccardd should be able to distinguish
card "MELCO" "LPC2-T"
and
	card "MELCO" "LPC2-TX"
by this fix.

Reported by:	Kitagawa Shoichi <sk@xstar.kiu.ac.jp>,
		NINOMIYA Hideyuki <nin@shikoku.ne.jp>
MFC after:	1 week
2001-11-29 14:33:57 +00:00
Crist J. Clark
2d69bc9b8e Duh. Back out most of my previous commit. It was mostly covered in the
STANDARDS section of the page. Add one remark there about inet_pton(3)
only understanding decimal values (in contrast to inet_aton(3) and
friends who are happy with 0ac.020.25 for 172.16.0.25).

Caught by:	ru
MFC after:	2 days
2001-11-29 09:44:33 +00:00
Ruslan Ermilov
973698b38b Fixed memory leak in dialog_gauge(3).
PR:		gnu/32260
Submitted by:	Igor Pokrovsky <tiamat@telegraph.spb.ru>
MFC after:	3 days
2001-11-29 07:42:13 +00:00
Bruce Evans
930dbabb42 Oops, actually fix the namespace pollution for atoll() as the previous
commit claimed to do.
2001-11-29 07:08:56 +00:00
Brian Feldman
63f9c0358e Stty is a program, not a function. 2001-11-29 03:26:42 +00:00
Brian Feldman
017e11668f Bump p1003.1-90 to p1003.1-96. 2001-11-29 03:21:16 +00:00
Gregory Neil Shapiro
48343ec717 rename() can't guarantee "to" always exists if it didn't exist in the first
place -- for example, rename("existing", "newfile"); on a read-only file
system.

Reviewed by:	green
MFC after:	3 days
2001-11-29 03:17:12 +00:00
Luigi Rizzo
b8be92123e Implement a more efficient way to assign addresses: read /etc/hosts
only once into an array of shell variables, and then scan the array
to find entries matching the MAC address.
Associative arrays would really be handy here...
2001-11-29 03:16:23 +00:00
Andrey A. Chernov
2209d8a27c Back out national digits support, POSIX explicetely disallows it:
The definition of character class digit requires that only ten characters
-the ones defining digits- can be specified; alternate digits (for
example, Hindi or Kanji) cannot be specified here. However, the encoding
may vary if an implementation supports more than one encoding.

The definition of character class xdigit requires that the characters
included in character class digit are included here also and allows for
different symbols for the hexadecimal digits 10 through 15.
2001-11-29 03:03:55 +00:00
Crist J. Clark
e1a5ca24ca After the long explanaition of how the inet_* functions interpret
Internet addresses, point out that inet_pton(3) only understands
dotted quads with decimal values.

MFC after:	2 days
2001-11-29 00:56:45 +00:00
Bruce A. Mah
5393fef692 Alphabetize the "Disks and Storage" section of the release notes. No
content changes.
2001-11-28 23:32:24 +00:00
Bruce A. Mah
7b7ab09d93 Update release notes: ACPI imported version. 2001-11-28 23:27:23 +00:00
Brian Feldman
30454e1977 Return a POSIX-compliant error for write(2) failure. 2001-11-28 23:02:33 +00:00
Crist J. Clark
a4771d5fb3 Add a BUGS section noting that the basename of a directory containing
periodic(8) scripts must be useable as a sh(1) variable.

MFC after:	2 days
2001-11-28 21:43:53 +00:00
Robert Watson
1e4b531bb6 o Cache req->td->td_proc->p_ucred->cr_prison in pr to improve
readability.
o Conditionalize only the SYSCTL definitions for the regression
  tree, not the variables itself, decreasing the number of #ifdef
  REGRESSIONs scattered in kern_mib.c, and making the code more
  readable.

Sponsored by:	DARPA, NAI Labs
2001-11-28 21:22:05 +00:00
Bruce Evans
614b366763 Fixed namespace pollution and/or breakage of K&R and C90 support related to
the following functions in the following commits:
- atoll() in revs 1.23-1.25
- llabs() and lldiv() in revs 1.22
- strtoq() and strtouq() in revs 1.18
C99 functions must not be declared in C90/POSIX.1-1990 sections, and
"long long" must not be exposed to compilers that don't support it.

Fixed style bugs (mainly misindentation and disorder) related the
following functions in the following commits:
- atoll() in revs 1.23-1.25
- getprogname() in rev.1.21
- sranddev() in revs 1.19-1.20
- strtoq() and strtouq() in rev.1.13
- user_from_uid() in rev.1.1
Breakage of K&R and C90 support used to be avoided by conditializing the
"long long"s for strtoq() and strtouq() on __STRICT_ANSI__, but the
conditionals should have gone away in rev.1.13 when the "long long"s went
away (the problem was moved to the places that declare quad_t and u_quad_t).
2001-11-28 19:52:25 +00:00
Archie Cobbs
19ff9e5f3e When a socket is not connected, allow the peer "struct sockaddr"
to be included in the meta information that is associated with
incoming and outgoing packets.

Reviewed by:	julian
MFC after:	1 week
2001-11-28 19:39:58 +00:00
Bruce Evans
d23c1cd5d7 Fixed namespace pollution in previous commit. The C99 function
sterror_r() must not be declared in the C90/POSIX.1-1990 section.
Put it in the nonstandard section for now.
2001-11-28 19:02:01 +00:00
John Baldwin
88736e1d37 Fix indentation after removing GEMDOS support. Whitespace changes only. 2001-11-28 18:29:16 +00:00
John Baldwin
5a7f3ebb94 Use suser_td() instead of explicitly checking cr_uid against 0.
PR:		kern/21809
Submitted by:	<mbendiks@eunet.no>
Reviewed by:	rwatson
2001-11-28 18:25:39 +00:00
Andrew R. Reiter
e75fedcfd5 - Change parameters of signal handlers in order to be correct (they are
handed a integer, not void).
- No need to set flags to zero when they already will be.
- It was also noted the manner in which the signal handling has changed
  might possibly generate some problems (hangs possibly) -- these, while
  remaining in the code, will be fixed shortly (within a day).

Submitted by: bde
2001-11-28 17:29:04 +00:00
John Baldwin
c6010b66a3 Whitespace fixes so thre 386 versoion of __uint8_swap_uint32 is easier to
read.
2001-11-28 17:10:57 +00:00
Warner Losh
ddecf579ce Remove ciss from the modules build until the build issues are resolved. 2001-11-28 17:08:51 +00:00
John Baldwin
d3990d589f Axe more unused GEMDOS code that was #ifdef atari.
PR:		kern/21809
Submitted by:	<mbendiks@eunet.no>
2001-11-28 16:56:42 +00:00
Brian Somers
6f99b44c60 Fix a typo in a comment 2001-11-28 16:15:52 +00:00
Luigi Rizzo
920dcd3fcb Remove the need for an expensive m_devget on the i386, which does not
have alignment problems.

On small boxes (e.g. the net4501 from Soekris, featuring a 486/133)
this provides huge performance benefits: the peak forwarding rate
with avg.sized packets goes up by 50-70% because of this change
alone. Faster CPUs might benefit less from this change, but in any
case the CPU has better things to do than waste time on useless
memory-to-memory copies.

Several drivers (for Tulip-like cards) might benefit from a similar
change.

Right now the new behaviour is controlled by a sysctl variable,
hw.sis_quick which defaults to 1 (on), you can set it to 0 to
reintroduce the old behaviour (and compare the results).  The
variable is only there to show how much you can gain with this
change, it will go away soon.

Also, slightly simplify the code to initialize the ring buffers,
and remove a couple of dangerous printf's which could trigger on
any packet in case of mbuf shortage.

MFC-after: 3 days
2001-11-28 16:10:37 +00:00
Daniel C. Sobral
605f755d8a Waits for a keypress before rebooting on panic.
PR:		kern/32351
Submitted by:	Jonathan Mini <mini@haikugeek.com>
MFC after:	1 week
2001-11-28 14:00:36 +00:00
Maxim Sobolev
97361ffaab Regen after addition of the Mustek 1200 CU Plus scanner.
Submitted by:	"Ilmar S. Habibulin" <ilmar@watson.org>
2001-11-28 12:38:15 +00:00
Maxim Sobolev
134290641e Add Mustek 1200 CU Plus scanner.
Submitted by:	"Ilmar S. Habibulin" <ilmar@watson.org>
2001-11-28 12:37:04 +00:00
Mitsuru IWASAKI
b9c780d64e Yet another synch with minor changes in the ACPI CA 20011120 snapshot.
We need to call AcpiEnterSleepStatePrep() before AcpiEnterSleepState().
2001-11-28 12:09:42 +00:00
Anton Berezin
7d3346ca1f Do not write warning messages on stderr - a caller is expected to check
the return code and errno instead.  Those warnings did not do any good
for daemonized users of initgroups(3), and confused cvs clients that
communicated with non-root cvs pserver.

The committed fix differs from the one suggested in the PR, and was
submitted by ru.

PR:		15421
Approved by:	markm
Discussed on:	-stable, -current at various times
2001-11-28 10:55:02 +00:00
Dag-Erling Smørgrav
ca7e26e312 Mdoc police.
Submitted by:	ru
2001-11-28 10:07:21 +00:00
Andrey A. Chernov
8b8722d2b2 Rewrite buffer handling code a bit to handle large values.
Add more checks for data overflow.
2001-11-28 09:50:24 +00:00
Ruslan Ermilov
fa55add21e GC cvs-1.8.1 import left-overs. 2001-11-28 09:31:56 +00:00
Andrey A. Chernov
99beb3fadf Increase internal buffer space 2001-11-28 09:26:57 +00:00
Ruslan Ermilov
60c6736148 mdoc(7) police: fix one pam_unix(8) left-over, sort xrefs. 2001-11-28 09:25:03 +00:00
Ruslan Ermilov
9e5b5675b4 Whitespace police.
Submitted by:	cjc, ru
2001-11-28 08:52:35 +00:00
Warner Losh
74d3832f6d Add Buffalo AirStation 11Mbps CF WLAN card.
Obtained from: NetBSD (ichiro)
2001-11-28 08:35:08 +00:00
Warner Losh
f471b125bb Sync to 1.24 2001-11-28 08:33:41 +00:00
Warner Losh
7a9b0e83d5 Merge from NetBSD:
1.147 (my changes to sync to FreeBSD's file)
	1.148 Buffalo AirStation CFtytpe WLAN Card (ichiro)
	1.149 IBM SCSI PCMCIA (yamt)
	1.150 <restore 1.148 lost in 1.149> (enami)
2001-11-28 08:33:12 +00:00
Andrey A. Chernov
bd9f1c9673 Add hi_IN.ISCII-DEV 2001-11-28 07:23:11 +00:00
Andrey A. Chernov
87c25490c8 Don't ever assume that isdigit() is always subset of isxdigit() 2001-11-28 06:06:27 +00:00
Andrey A. Chernov
7bbd0c8b5b Fix typo 2001-11-28 05:43:24 +00:00