Commit Graph

111669 Commits

Author SHA1 Message Date
Scott Long
03a908f2ce Lock the IPS driver and bring it out from under Giant. Also do some
significant clean up and optimizations:
- don't call bioq_disksort() on every command, the hardware will do that for
  us.
- remove all of the complicated bio deferral code.  bio's that can't be
  serviced immediately can just wait on the bioq.
- Only reserve one command object for doing control commands to the card.
  This simplifies a lot of code and significantly reduces the size of the
  command struct.
- Allocate commands out of a slab instead of embedding them into the softc.
- Call the command action method directly instead of having ips_get_free_cmd()
  call it indirectly.

MFC After: 1 week
2005-01-28 05:02:13 +00:00
Marcel Moolenaar
ad284e38a3 Wrap calls to memcpy(3) in a function called block_copy(). This way,
and as long as we're not compiling with IPA, gcc(1) won't optimize
the call away. The whole purpose of using memcpy(3) is to avoid
misaligned loads and stores when we need to read or write the value
in the unaligned memory location. But if gcc(1) optimizes the call
to memcpy(3) away, it will typically introduce misaligned loads and
stores. In this context that's not a good idea.
2005-01-28 02:58:32 +00:00
Warner Losh
c1195b0646 error = is needed before ether_ioctl() so that unsupported/unknown
IOCLTs are properly handled.  This gets the cs driver properly
reporting things via ifconfig.

# my pccard still doesn't work.
2005-01-28 00:28:22 +00:00
Marcel Moolenaar
c0604e27a8 Skip the register based postinc stores here and don't count them
in the number of tests. This way we avoid skipped tests for non-
existent memory access combinations. The number of tests dropped
from 60 to 48.
2005-01-27 23:15:58 +00:00
Marcel Moolenaar
ced1bf58df Make the local variables global so that the compiler cannot assume
too much about them. This prevents certain peephole optimizations
at -O that invalidate the tests.
2005-01-27 23:11:55 +00:00
Marcel Moolenaar
0335d35b09 Fix the unaligned store with post increment test: The misaligned pointer
stopped pointing to the value the moment we wrote it due to the post
increment. So, grab the value for comparison out of the data structure
directly.
2005-01-27 22:46:15 +00:00
Nate Lawson
286fceb541 Consistently use pcib for a printf. 2005-01-27 20:49:59 +00:00
Sam Leffler
badaf7bbb2 supply a default ic_reset method for drivers; the ioctl code expect this
method to always be setup

Submitted by:	Tai-hwa Liang
2005-01-27 17:39:17 +00:00
Doug Ambrisko
499e862cae Change the ifr_media operation to only get its value and only set
its value once per ifconfig run.  Use Sam's new callback
operation to set it when everything is done.

The purpose for this is that if you did something like
	ifconfig bge0 media 100baseTX mediaopt full-duplex
multiple times it would end up causing the PHY to re-sync
since it would send the IOCTLs:
	ifconfig bge0 media 100baseTX -mediaopt full-duplex
	ifconfig bge0 media 100baseTX mediaopt full-duplex
This would cause the PHY to be updated twice even though
there really wasn't any change since the check in
sys/net/if_media.c would always fail.

Caveat is that this doesn't fix the case of:
	ifconfig bge0 media autoselect
etc. since in sys/net/if_media.c it forces an autoselect to go through
the entire process in ifmedia_ioctl :-( :
          /*
           * If no change, we're done.
           * XXX Automedia may invole software intervention.
           *     Keep going in case the the connected media changed.
           *     Similarly, if best match changed (kernel debugger?).
           */
           if ((IFM_SUBTYPE(newmedia) != IFM_AUTO) &&
                (newmedia == ifm->ifm_media) &&
                (match == ifm->ifm_cur))
                     return 0;

Briefly looked at by:	sam
2005-01-27 16:40:12 +00:00
Hajimu UMEMOTO
a2a24ec881 make _getipnodebyname_multi() static. 2005-01-27 15:01:05 +00:00
Xin LI
c49d3c9bac Remove unnecessary SRCS= where could be guessed directly by our
bsd.*.mk infrasture.

Obtained from:	ru
2005-01-27 14:52:47 +00:00
Hajimu UMEMOTO
c224435ed9 implement AI_NUMERICSERV (as defined in RFC3493).
Obtained from:	KAME
MFC after:	1 week
2005-01-27 14:45:11 +00:00
Xin LI
3e7cb94c9c WARNS?=6 cleanup for [gs]et[fp]mac:
- Constify structure members that should not be changed
	  during process.
	- Apply static where needed
	- signed/unsigned madness
	- Bump WARNS?= levels from 2 to 6

(this is a diff reduction for a subsequent commit against these
Makefile's)
2005-01-27 14:44:39 +00:00
Hajimu UMEMOTO
8755b918a1 fill ai_canonname field for numeric hostname, by the given hostname.
follow new recommendation in RFC3493.

Obtained from:	KAME
MFC after:	1 week
2005-01-27 14:41:56 +00:00
Brian Somers
880447787d Add a radius_Flush() function that waits for the response (or timeout) to
any pending RADIUS transaction.  Use this before sending RAD_STOP RADIUS
messages so that we definitely ``stop'' the session.

It was discovered that sometimes when the link timed out, we got lucky
enough to have an un-ACK'd RADIUS accounting transaction in progress,
resulting in the RAD_STOP message failing to send.

Original report found on:	A russion news group
Text translated by:		glebius
Tested by:			Alexey Popov llp at iteranet dot com
MFC after:			7 days
2005-01-27 14:09:33 +00:00
Peter Edwards
174d6a9f73 Make NTFS at least minimally usable after bufobj and GEOM fallout.
mmap() on NTFS files was hosed, returning pages offset from the
start of the disk rather than the start of the file. (ie, "cp" of
a 1-block file would get you a copy of the boot sector, not the
data in the file.) The solution isn't ideal, but gives a functioning
filesystem.

Cached vnode lookup was also broken, resulting in vnode haemorrhage.
A lookup on the same file twice would give you two vnodes, and the
resulting cached pages.

Just recently, mmap() was broken due to a lack of a call to
vnode_create_vobject() in ntfs_open().

Discussed with: phk@
2005-01-27 13:50:27 +00:00
Xin LI
cc7045ec4c ps(1) is WARNS=6 on all Tier-1 platforms as far as I can test,
so use default WARNS level from bin/Makefile.inc
2005-01-27 13:42:40 +00:00
Xin LI
6984496e54 Don't specify SRCS= when it can be obtained from PROGS= 2005-01-27 13:25:09 +00:00
Xin LI
18ec63de27 WARNS?=6 is already in bin/Makefile.inc, so remove this one. 2005-01-27 13:23:05 +00:00
Ruslan Ermilov
4f05e3faf9 "pst" is not 64-bit clean for reasons specified in sys/amd64/conf/NOTES. 2005-01-27 11:07:13 +00:00
Ruslan Ermilov
802e13ab9b Polish the formatting. 2005-01-27 10:30:53 +00:00
Poul-Henning Kamp
a1d57b9a52 Update the information, (and likely break all formatting rules). 2005-01-27 09:29:52 +00:00
Ruslan Ermilov
0ec24a915e Comment out "lnc" on amd64 for reasons specified in sys/amd64/conf/NOTES. 2005-01-27 09:21:23 +00:00
Hajimu UMEMOTO
d0d6a2c7cc query A RR before AAAA RR.
MFC after:	1 week
2005-01-27 08:03:46 +00:00
Marcel Moolenaar
b3efc9018f The unit test for unaligned loads/stores can be found under ../ia64. 2005-01-27 06:51:45 +00:00
Marcel Moolenaar
baacc4acdf Add tests for post increment. This bumps the number of tests up to
60. The postinc store tests currently fail (value mismatch). Hence
the score as of this commit is 48 out of 60. Either the kernel or
the tests need to be fixed.
2005-01-27 06:50:05 +00:00
Marcel Moolenaar
b71bca0f84 Fix handling of post increment: Either the first or second operand
is the register with the memory address, and it's that register's
value we need to increment or decrement.

MFC after: 3 days
2005-01-27 06:01:44 +00:00
David Schultz
29bf6af890 - Move the functions presently described in in ieee(3) to their own
manpages.  They are not very related, so separating them makes it
  easier to add meaningful cross-references and extend some of the
  descriptions.
- Move the part of math(3) that discusses IEEE 754 to the ieee(3)
  manpage.
2005-01-27 05:46:17 +00:00
David Schultz
2380daafe9 Don't compile the gdtoa package's strtoIg.c into libc.
I never got around to making use of it.
2005-01-27 05:44:16 +00:00
Warner Losh
221db7416d Write cs_detach() and use it. This resolves the twin problems of the
cs1 interface linger on card eject, as well as the warnings about the
card still using resources.  Ooops.
2005-01-27 04:51:44 +00:00
Warner Losh
118c73087b Add back support for D-LINK DMR-650TX, and all the other OEMd versions
of this card (evidentally MultiMobile also sold this card as
MT5634ZLXI/E).

Reported by: Bastian Brinkman
2005-01-27 02:37:39 +00:00
Warner Losh
907c2b8ba1 Move 143 back to its rightful owner: Grey Cell systems, which OEMd enet cards 2005-01-27 02:33:03 +00:00
Warner Losh
fa9af110fd 64-bit clean fixes: Use %zx in preference to %x to print size_t items.
Cast a byte to uint8_t before printing.
2005-01-27 01:49:23 +00:00
Warner Losh
fe9ec26797 ar and sr (and their netgraph cousins) don't appear to be 64-bit clean, so
disable them on all but i386.
2005-01-27 01:45:15 +00:00
Warner Losh
092b24f520 Fix a few printf problems on ia64 (and other 64-bit platforms). 2005-01-27 01:40:12 +00:00
Bruce M Simpson
3e19d3c0f0 Add PCI ID for Dell RAC IV/ERA Virtual UART (PowerEdge 1850).
Trim name of existing Dell RAC devices. Trim comments.

With help from:	dpk at dpk dot net
MFC after:	1 week
2005-01-27 01:17:32 +00:00
Warner Losh
614dbcfb8e The ar driver appears to do naughty things with pointers and integers
and so appears to not be 64-bit clean.  disable it on ia64 for the moment.
2005-01-27 01:12:58 +00:00
Warner Losh
659522d8a3 pcic is gone 2005-01-27 00:33:17 +00:00
Robert Watson
c77cf2b162 Remove policy references to mpo_check_vnode_mprotect(), which is
currently unimplemented.

Update copyrights.

Pointed out by:	csjp
2005-01-26 23:43:32 +00:00
Poul-Henning Kamp
017a4322b5 If CDSR_OFLOW (stty dsrflow) is enabled on one or both sides of a
null-modem tty device emulate the speed settings faithfully.

The speed is emulated independently for the two directions, using
the slower of the local sides ispeed and the remote sides ospeed.

The emulated speed takes settings of bits/char, parity and stopbit
into account.

Inspired by:	The BSD-DK Editor Celebrity Deathmatch Contest
2005-01-26 23:42:18 +00:00
Warner Losh
cf9a9fe79d Add required ing 2005-01-26 23:27:12 +00:00
Warner Losh
39ed0204bc Add -fno-strict-alias whenever someone is compiling with -O2,
unconditionally.
2005-01-26 21:35:55 +00:00
Warner Losh
17d56bdd53 Add cs module. It has built in my tree for ages, and it just never
made it into FreeBSD's tree.
2005-01-26 21:27:26 +00:00
Warner Losh
c046033747 The tinderbox seems to have a different set of compiler options
enabled than my box, so the agp module gets different warnings than I
got when I built.  WERROR= to compensate.
2005-01-26 21:18:58 +00:00
Ruslan Ermilov
7d64886df5 Add a few colons.
Submitted by:	Joel Dahl
2005-01-26 20:50:52 +00:00
Yaroslav Tykhiy
33dda8030d Forced commit to note that in the previous commit message
(rev#1.59) I mistyped references to rev#1.58 as `rev#1.85'.
Shame on me.

Pointed out by:	will
2005-01-26 19:45:51 +00:00
Hartmut Brandt
b071ad2dca Fix quoting of the MAKEFLAGS environment variable by only quoting spaces
and tabs. This is still not correct for command line variable values
ending in a backslash because this would require a larger effort.
Document this limitation in the BUGS section of the man page. The
quoting is mostly compatible with that of gmake and smake.

Tested by:	Max Okumoto and Joerg Sonnenberger from DragonFly BSD
Reviewed by:	ru (man page, partly)
2005-01-26 18:19:39 +00:00
Jacques Vidrine
fb3be370b0 Correct a typo in the definition of _PW_VERSION_MASK. This macro is
currently unused other than as documentation.

Reported by:	 Stefan Farfeleder <stefan@fafoe.narf.at>
2005-01-26 17:26:54 +00:00
Warner Losh
2879ce1de3 Add WERRROR= to work around the warnings 2005-01-26 16:29:07 +00:00
Warner Losh
daaea3952c Generally force -Werror for modules when not compiling with icc. This
has burned me for the last time.
2005-01-26 15:49:23 +00:00