PERFORCE change 123049 for review

Christopher Davis loafier at FreeBSD.org
Sat Jul 7 09:58:51 UTC 2007


http://perforce.freebsd.org/chv.cgi?CH=123049

Change 123049 by loafier at chrisdsoc on 2007/07/07 09:58:13

	Sync branch

Affected files ...

.. //depot/projects/soc2007/loafier_busalloc/conf/options#2 integrate
.. //depot/projects/soc2007/loafier_busalloc/dev/usb/usb_port.h#2 integrate
.. //depot/projects/soc2007/loafier_busalloc/dev/usb/usbdevs#2 integrate
.. //depot/projects/soc2007/loafier_busalloc/kern/kern_sx.c#2 integrate
.. //depot/projects/soc2007/loafier_busalloc/sys/sx.h#2 integrate
.. //depot/projects/soc2007/loafier_busalloc/vm/vm_fault.c#2 integrate

Differences ...

==== //depot/projects/soc2007/loafier_busalloc/conf/options#2 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/options,v 1.599 2007/07/04 00:18:38 bz Exp $
+# $FreeBSD: src/sys/conf/options,v 1.600 2007/07/06 13:20:43 attilio Exp $
 #
 #        On the handling of kernel options
 #
@@ -538,6 +538,7 @@
 MUTEX_NOINLINE		opt_global.h
 LOCK_PROFILING		opt_global.h
 LOCK_PROFILING_FAST	opt_global.h
+LOCK_PROFILING_SHARED	opt_global.h
 MSIZE			opt_global.h
 REGRESSION		opt_global.h
 RESTARTABLE_PANICS	opt_global.h

==== //depot/projects/soc2007/loafier_busalloc/dev/usb/usb_port.h#2 (text+ko) ====

@@ -1,6 +1,6 @@
 /*	$OpenBSD: usb_port.h,v 1.18 2000/09/06 22:42:10 rahnds Exp $ */
 /*	$NetBSD: usb_port.h,v 1.54 2002/03/28 21:49:19 ichiro Exp $	*/
-/*	$FreeBSD: src/sys/dev/usb/usb_port.h,v 1.97 2007/06/30 02:41:29 imp Exp $       */
+/*	$FreeBSD: src/sys/dev/usb/usb_port.h,v 1.98 2007/07/06 20:02:37 imp Exp $       */
 
 /* Also already merged from NetBSD:
  *	$NetBSD: usb_port.h,v 1.57 2002/09/27 20:42:01 thorpej Exp $
@@ -158,11 +158,7 @@
 #define USB_ATTACH_SUCCESS_RETURN	return 0
 
 #define USB_ATTACH_SETUP \
-	do { \
-		sc->sc_dev = self; \
-		device_set_desc_copy(self, devinfo); \
-		device_printf(self, "%s\n", devinfo); \
-	} while (0);
+	sc->sc_dev = self; \
 
 #define USB_DETACH(dname) \
 static int \

==== //depot/projects/soc2007/loafier_busalloc/dev/usb/usbdevs#2 (text+ko) ====

@@ -1,4 +1,4 @@
-$FreeBSD: src/sys/dev/usb/usbdevs,v 1.318 2007/07/05 05:26:08 imp Exp $
+$FreeBSD: src/sys/dev/usb/usbdevs,v 1.319 2007/07/06 20:05:39 imp Exp $
 /* $NetBSD: usbdevs,v 1.392 2004/12/29 08:38:44 imp Exp $ */
 
 /*-
@@ -64,7 +64,7 @@
 
 vendor UNKNOWN1		0x0053	Unknown vendor
 vendor UNKNOWN2		0x0105	Unknown vendor
-vendor EGALAX2		0x0123	eGalax
+vendor EGALAX2		0x0123	eGalax, Inc.
 vendor HUMAX		0x02ad	HUMAX
 vendor LTS		0x0386	LTS
 vendor BWCT		0x03da	Bernd Walter Computer Technology
@@ -73,7 +73,6 @@
 vendor DATABROADCAST	0x03ea	Data Broadcasting
 vendor ATMEL		0x03eb	Atmel
 vendor IWATSU		0x03ec	Iwatsu America
-vendor MITEL		0x03ee	Mitel
 vendor MITSUMI		0x03ee	Mitsumi
 vendor HP		0x03f0	Hewlett Packard
 vendor GENOA		0x03f1	Genoa
@@ -105,9 +104,9 @@
 vendor LEADTEK		0x0413	Leadtek
 vendor WINBOND		0x0416	Winbond
 vendor PHOENIX		0x041a	Phoenix
-vendor CREATIVE		0x041e	Creative
+vendor CREATIVE		0x041e	Creative Labs
 vendor NOKIA		0x0421	Nokia
-vendor ADI		0x0422	ADI
+vendor ADI		0x0422	ADI Systems
 vendor CATC		0x0423	Computer Access Technology
 vendor SMC2		0x0424	Standard Microsystems
 vendor MOTOROLA_HK	0x0425	Motorola HK
@@ -149,7 +148,7 @@
 vendor KENSINGTON	0x047d	Kensington
 vendor LUCENT		0x047e	Lucent
 vendor PLANTRONICS	0x047f	Plantronics
-vendor KYOCERA		0x0482	Kyocera
+vendor KYOCERA		0x0482	Kyocera Wireless Corp.
 vendor STMICRO		0x0483	STMicroelectronics
 vendor FOXCONN		0x0489	Foxconn
 vendor YAMAHA		0x0499	YAMAHA
@@ -189,29 +188,29 @@
 vendor LSI		0x04d4	LSI
 vendor MENTORGRAPHICS	0x04d6	Mentor Graphics
 vendor ITUNERNET	0x04d8	I-Tuner Networks
-vendor HOLTEK		0x04d9	Holtek
+vendor HOLTEK		0x04d9	Holtek Semiconductor, Inc.
 vendor PANASONIC	0x04da	Panasonic (Matsushita)
 vendor HUANHSIN		0x04dc	Huan Hsin
 vendor SHARP		0x04dd	Sharp
 vendor IIYAMA		0x04e1	Iiyama
-vendor SHUTTLE		0x04e6	Shuttle
+vendor SHUTTLE		0x04e6	Shuttle Technology
 vendor ELO		0x04e7	Elo TouchSystems
-vendor SAMSUNG		0x04e8	Samsung
+vendor SAMSUNG		0x04e8	Samsung Electronics
 vendor NORTHSTAR	0x04eb	Northstar
 vendor TOKYOELECTRON	0x04ec	Tokyo Electron
 vendor ANNABOOKS	0x04ed	Annabooks
 vendor JVC		0x04f1	JVC
-vendor CHICONY		0x04f2	Chicony
+vendor CHICONY		0x04f2	Chicony Electronics
 vendor ELAN		0x04f3	Elan
 vendor NEWNEX		0x04f7	Newnex
-vendor BROTHER		0x04f9	Brother
+vendor BROTHER		0x04f9	Brother Industries
 vendor DALLAS		0x04fa	Dallas Semiconductor
 vendor SUNPLUS		0x04fc	Sunplus
 vendor PFU		0x04fe	PFU
 vendor FUJIKURA		0x0501	Fujikura/DDK
 vendor ACER		0x0502	Acer
 vendor 3COM		0x0506	3Com
-vendor HOSIDEN		0x0507	Hosiden
+vendor HOSIDEN		0x0507	Hosiden Corporation
 vendor AZTECH		0x0509	Aztech Systems
 vendor BELKIN		0x050d	Belkin Components
 vendor KAWATSU		0x050f	Kawatsu Semiconductor
@@ -255,14 +254,14 @@
 vendor ELECOM		0x056e	Elecom
 vendor CONEXANT		0x0572	Conexant
 vendor HAUPPAUGE	0x0573	Hauppauge Computer Works
-vendor BAFO		0x0576	BAFO/Quality Computer Accesories
+vendor BAFO		0x0576	BAFO/Quality Computer Accessories
 vendor YEDATA		0x057b	Y-E Data
 vendor AVM		0x057c	AVM
 vendor QUICKSHOT	0x057f	Quickshot
 vendor ROLAND		0x0582	Roland
 vendor ROCKFIRE		0x0583	Rockfire
 vendor RATOC		0x0584	RATOC Systems
-vendor ZYXEL		0x0586	ZyXEL Communications
+vendor ZYXEL		0x0586	ZyXEL Communication
 vendor INFINEON		0x058b	Infineon
 vendor MICREL		0x058d	Micrel
 vendor ALCOR		0x058f	Alcor Micro
@@ -292,7 +291,7 @@
 vendor RICOH		0x05ca	Ricoh
 vendor ELSA		0x05cc	ELSA
 vendor SCIWORX		0x05ce	sci-worx
-vendor BRAINBOXES	0x05d1	Brainboxes
+vendor BRAINBOXES	0x05d1	Brainboxes Limited
 vendor ULTIMA		0x05d8	Ultima
 vendor AXIOHM		0x05d9	Axiohm Transaction Solutions
 vendor MICROTEK		0x05da	Microtek
@@ -302,19 +301,19 @@
 vendor SYMBOL		0x05e0	Symbol Technologies
 vendor SYNTEK		0x05e1	Syntek
 vendor GENESYS		0x05e3	Genesys Logic
-vendor FUJI		0x05e5	Fuji Electronic
+vendor FUJI		0x05e5	Fuji Electric
 vendor KEITHLEY		0x05e6	Keithley Instruments
 vendor EIZONANAO	0x05e7	EIZO Nanao
 vendor KLSI		0x05e9	Kawasaki LSI
 vendor FFC		0x05eb	FFC
 vendor ANKO		0x05ef	Anko Electronic
 vendor PIENGINEERING	0x05f3	P.I. Engineering
-vendor AOC		0x05f6	AOC
-vendor CHIC		0x05fe	Chic
-vendor BARCO		0x0600	Barco
-vendor BRIDGE		0x0607	Bridge
+vendor AOC		0x05f6	AOC International
+vendor CHIC		0x05fe	Chic Technology
+vendor BARCO		0x0600	Barco Display Systems
+vendor BRIDGE		0x0607	Bridge Information
 vendor SOLIDYEAR	0x060b	Solid Year
-vendor BIORAD		0x0614	Bio-Rad
+vendor BIORAD		0x0614	Bio-Rad Laboratories
 vendor MACALLY		0x0618	Macally
 vendor ACTLABS		0x061c	Act Labs
 vendor ALARIS		0x0620	Alaris
@@ -330,8 +329,8 @@
 vendor SIGMATEL		0x066f	Sigmatel
 vendor DRAYTEK		0x0675	DrayTek
 vendor AIWA		0x0677	Aiwa
-vendor ACARD		0x0678	ACARD
-vendor PROLIFIC		0x067b	Prolific
+vendor ACARD		0x0678	ACARD Technology
+vendor PROLIFIC		0x067b	Prolific Technology
 vendor SIEMENS		0x067c	Siemens
 vendor AVANCELOGIC	0x0680	Avance Logic
 vendor SIEMENS2		0x0681	Siemens
@@ -339,42 +338,42 @@
 vendor CHPRODUCTS	0x068e	CH Products
 vendor HAGIWARA		0x0693	Hagiwara Sys-Com
 vendor CTX		0x0698	Chuntex
-vendor ASKEY		0x069a	Askey
+vendor ASKEY		0x069a	Askey Computer
 vendor SAITEK		0x06a3	Saitek
-vendor ALCATELT		0x06b9	Alcatel
+vendor ALCATELT		0x06b9	Alcatel Telecom
 vendor AGFA		0x06bd	AGFA-Gevaert
 vendor ASIAMD		0x06be	Asia Microelectronic Development
-vendor BIZLINK		0x06c4	Bizlink
+vendor BIZLINK		0x06c4	Bizlink International
 vendor KEYSPAN		0x06cd	Keyspan / InnoSys Inc.
-vendor AASHIMA		0x06d6	Aashima
+vendor AASHIMA		0x06d6	Aashima Technology
 vendor MULTITECH	0x06e0	MultiTech
-vendor ADS		0x06e1	ADS
-vendor ALCATELM		0x06e4	Alcatel
-vendor SIRIUS		0x06ea	Sirius
+vendor ADS		0x06e1	ADS Technologies
+vendor ALCATELM		0x06e4	Alcatel Microelectronics
+vendor SIRIUS		0x06ea	Sirius Technologies
 vendor GUILLEMOT	0x06f8	Guillemot
 vendor BOSTON		0x06fd	Boston Acoustics
-vendor SMC		0x0707	SCM
+vendor SMC		0x0707	Standard Microsystems
 vendor PUTERCOM		0x0708	Putercom
 vendor MCT		0x0711	MCT
 vendor IMATION		0x0718	Imation
 vendor SONYERICSSON	0x0731	Sony Ericsson
 vendor EICON		0x0734	Eicon Networks
 vendor DIGITALSTREAM	0x074e	Digital Stream
-vendor AUREAL		0x0755	Aureal
+vendor AUREAL		0x0755	Aureal Semiconductor
 vendor MIDIMAN		0x0763	Midiman
 vendor SURECOM		0x0769	Surecom Technology
 vendor LINKSYS2		0x077b	Linksys
-vendor GRIFFIN		0x077d	Griffin
+vendor GRIFFIN		0x077d	Griffin Technology
 vendor SANDISK		0x0781	SanDisk
 vendor JENOPTIK		0x0784	Jenoptik
 vendor LOGITEC		0x0789	Logitec
 vendor BRIMAX		0x078e	Brimax
-vendor AXIS		0x0792	Axis
-vendor ABL		0x0794	ABL
+vendor AXIS		0x0792	Axis Communications
+vendor ABL		0x0794	ABL Electronics
 vendor SAGEM		0x079b	Sagem
-vendor SUNCOMM		0x079c	Sun Communications
-vendor ALFADATA		0x079d	Alfadata
-vendor NATIONALTECH	0x07a2	National Technical
+vendor SUNCOMM		0x079c	Sun Communications, Inc.
+vendor ALFADATA		0x079d	Alfadata Computer
+vendor NATIONALTECH	0x07a2	National Technical Systems
 vendor ONNTO		0x07a3	Onnto
 vendor BE		0x07a4	Be
 vendor ADMTEK		0x07a6	ADMtek
@@ -383,30 +382,30 @@
 vendor MICROTECH	0x07af	Microtech
 vendor GENERALINSTMNTS	0x07b2	General Instruments (Motorola)
 vendor OLYMPUS		0x07b4	Olympus
-vendor ABOCOM		0x07b8	AboCom
+vendor ABOCOM		0x07b8	AboCom Systems
 vendor KEISOKUGIKEN	0x07c1	Keisokugiken
 vendor ONSPEC		0x07c4	OnSpec
-vendor APG		0x07c5	APG
-vendor BUG		0x07c8	BUG
-vendor ALLIEDTELESYN	0x07c9	Allied Telesyn
-vendor AVERMEDIA	0x07ca	AVerMedia
+vendor APG		0x07c5	APG Cash Drawer
+vendor BUG		0x07c8	B.U.G.
+vendor ALLIEDTELESYN	0x07c9	Allied Telesyn International
+vendor AVERMEDIA	0x07ca	AVerMedia Technologies
 vendor SIIG		0x07cc	SIIG
 vendor CASIO		0x07cf	CASIO
 vendor DLINK2		0x07d1	D-Link
-vendor APTIO		0x07d2	Aptio
-vendor ARASAN		0x07da	Arasan
+vendor APTIO		0x07d2	Aptio Products
+vendor ARASAN		0x07da	Arasan Chip Systems
 vendor ALLIEDCABLE	0x07e6	Allied Cable
 vendor STSN		0x07ef	STSN
 vendor CENTURY		0x07f7	Century Corp
-vendor ZOOM		0x0803	Zoom
+vendor ZOOM		0x0803	Zoom Telephonics
 vendor PCS		0x0810	Personal Communication Systems
 vendor BROADLOGIC	0x0827	BroadLogic
 vendor HANDSPRING	0x082d	Handspring
-vendor PALM		0x0830	Palm
+vendor PALM		0x0830	Palm Computing
 vendor SOURCENEXT	0x0833	SOURCENEXT
-vendor ACTIONSTAR	0x0835	Action Star
+vendor ACTIONSTAR	0x0835	Action Star Enterprise
 vendor SAMSUNG_TECHWIN	0x0839	Samsung Techwin
-vendor ACCTON		0x083a	Accton
+vendor ACCTON		0x083a	Accton Technology
 vendor DIAMOND		0x0841	Diamond
 vendor NETGEAR		0x0846	BayNETGEAR
 vendor ACTIVEWIRE	0x0854	ActiveWire
@@ -414,35 +413,35 @@
 vendor PORTGEAR		0x085a	PortGear
 vendor SYSTEMTALKS	0x086e	System Talks
 vendor METRICOM		0x0870	Metricom
-vendor ADESSOKBTEK	0x087c	ADESSO
+vendor ADESSOKBTEK	0x087c	ADESSO/Kbtek America
 vendor JATON		0x087d	Jaton
-vendor APT		0x0880	APT
+vendor APT		0x0880	APT Technologies
 vendor BOCARESEARCH	0x0885	Boca Research
-vendor ANDREA		0x08a8	Andrea
+vendor ANDREA		0x08a8	Andrea Electronics
 vendor BURRBROWN	0x08bb	Burr-Brown Japan
 vendor 2WIRE		0x08c8	2Wire
-vendor AIPTEK		0x08ca	AIPTEK
+vendor AIPTEK		0x08ca	AIPTEK International
 vendor SMARTBRIDGES	0x08d1	SmartBridges
-vendor BILLIONTON	0x08dd	Billionton
-vendor EXTENDED		0x08e9	Extended
+vendor BILLIONTON	0x08dd	Billionton Systems
+vendor EXTENDED		0x08e9	Extended Systems
 vendor MSYSTEMS		0x08ec	M-Systems
 vendor AUTHENTEC	0x08ff	AuthenTec
 vendor AUDIOTECHNICA	0x0909	Audio-Technica
-vendor TRUMPION		0x090a	Trumpion
+vendor TRUMPION		0x090a	Trumpion Microelectronics
 vendor FEIYA		0x090c	Feiya
-vendor ALATION		0x0910	Alation
+vendor ALATION		0x0910	Alation Systems
 vendor CONCORDCAMERA	0x0919	Concord Camera
-vendor GARMIN		0x091e	Garmin
+vendor GARMIN		0x091e	Garmin International
 vendor GOHUBS		0x0921	GoHubs
 vendor XEROX		0x0924	Xerox
-vendor BIOMETRIC	0x0929	American Biometric
+vendor BIOMETRIC	0x0929	American Biometric Company
 vendor TOSHIBA		0x0930	Toshiba
 vendor PLEXTOR		0x093b	Plextor
 vendor INTREPIDCS	0x093c	Intrepid
 vendor YANO		0x094f	Yano
-vendor KINGSTON		0x0951	Kingston
-vendor BLUEWATER	0x0956	BlueWater
-vendor AGILENT		0x0957	Agilent
+vendor KINGSTON		0x0951	Kingston Technology
+vendor BLUEWATER	0x0956	BlueWater Systems
+vendor AGILENT		0x0957	Agilent Technologies
 vendor PORTSMITH	0x095a	Portsmith
 vendor ACERW		0x0967	Acer
 vendor ADIRONDACK	0x0976	Adirondack Wire & Cable
@@ -456,48 +455,48 @@
 vendor ACTISYS		0x09c4	ACTiSYS
 vendor AFOURTECH	0x09da	A-FOUR TECH
 vendor AIMEX		0x09dc	AIMEX
-vendor ADDONICS		0x09df	Addonics
-vendor AKAI		0x09e8	AKAI
+vendor ADDONICS		0x09df	Addonics Technologies
+vendor AKAI		0x09e8	AKAI professional M.I.
 vendor ARESCOM		0x09f5	ARESCOM
 vendor BAY		0x09f9	Bay Associates
 vendor ALTERA		0x09fb	Altera
 vendor CSR		0x0a12	Cambridge Silicon Radio
-vendor TREK		0x0a16	Trek
+vendor TREK		0x0a16	Trek Technology
 vendor ASAHIOPTICAL	0x0a17	Asahi Optical
 vendor BOCASYSTEMS	0x0a43	Boca Systems
 vendor MEDIAGEAR	0x0a48	MediaGear
 vendor BROADCOM		0x0a5c	Broadcom
 vendor GREENHOUSE	0x0a6b	GREENHOUSE
-vendor GEOCAST		0x0a79	Geocast
+vendor GEOCAST		0x0a79	Geocast Network Systems
 vendor NEODIO		0x0aec	Neodio
 vendor OPTION		0x0af0	Option
-vendor ASUS		0x0b05	ASUS
+vendor ASUS		0x0b05	ASUSTeK Computer
 vendor TODOS		0x0b0c	Todos Data System
 vendor SIIG2		0x0b39	SIIG
-vendor TEKRAM		0x0b3b	Tekram
-vendor HAL		0x0b41	HAL
-vendor EMS		0x0b43	EMS
+vendor TEKRAM		0x0b3b	Tekram Technology
+vendor HAL		0x0b41	HAL Corporation
+vendor EMS		0x0b43	EMS Production
 vendor NEC2		0x0b62	NEC
 vendor ATI2		0x0b6f	ATI
-vendor ZEEVO		0x0b7a	Zeevo
-vendor KURUSUGAWA	0x0b7e	Kurusugawa
-vendor ASIX		0x0b95	ASIX
+vendor ZEEVO		0x0b7a	Zeevo, Inc.
+vendor KURUSUGAWA	0x0b7e	Kurusugawa Electronics, Inc.
+vendor ASIX		0x0b95	ASIX Electronics
 vendor O2MICRO		0x0b97	O2 Micro, Inc.
 vendor USR		0x0baf	U.S. Robotics
 vendor AMBIT		0x0bb2	Ambit Microsystems
-vendor REALTEK		0x0bda	RealTek
-vendor ADDONICS2	0x0bf6	Addonics
-vendor AGATE		0x0c08	Agate
+vendor REALTEK		0x0bda	Realtek
+vendor ADDONICS2	0x0bf6	Addonics Technology
+vendor AGATE		0x0c08	Agate Technologies
 vendor DMI		0x0c0b	DMI
 vendor CHICONY2		0x0c45	Chicony
-vendor SEALEVEL		0x0c52	Sealevel
+vendor SEALEVEL		0x0c52	Sealevel System
 vendor LUWEN		0x0c76	Luwen
 vendor ZCOM		0x0cde	Z-Com
 vendor ATHEROS2		0x0cf3	Atheros Communications
 vendor TANGTOP		0x0d3d	Tangtop
 vendor SMC3		0x0d5c	SMC
 vendor ADDON		0x0d7d	Add-on Technology
-vendor ACDC		0x0d7e	ACDC
+vendor ACDC		0x0d7e	American Computer & Digital Components
 vendor ABC		0x0d8c	ABC
 vendor CONCEPTRONIC	0x0d8e	Conceptronic
 vendor SKANHEX		0x0d96	Skanhex Technology, Inc.
@@ -508,11 +507,11 @@
 vendor HAWKING		0x0e66	Hawking
 vendor FOSSIL		0x0e67	Fossil, Inc
 vendor GMATE		0x0e7e	G.Mate, Inc
-vendor OTI		0x0ea0	Ours
+vendor OTI		0x0ea0	Ours Technology
 vendor PILOTECH		0x0eaf	Pilotech
 vendor NOVATECH		0x0eb0	NovaTech
 vendor WINMAXGROUP	0x0ed1	WinMaxGroup
-vendor EGALAX		0x0eef	eGalax
+vendor EGALAX		0x0eef	eGalax, Inc.
 vendor MICROTUNE	0x0f4d	Microtune
 vendor VTECH		0x0f88	VTech
 vendor QUALCOMM2	0x1004	Qualcomm
@@ -520,11 +519,11 @@
 vendor GIGABYTE		0x1044	GIGABYTE
 vendor WESTERN		0x1058	Western Digital
 vendor MOTOROLA		0x1063	Motorola
-vendor CCYU		0x1065	CCYU
+vendor CCYU		0x1065	CCYU Technology
 vendor CURITEL		0x106c	Curitel Communications Inc
 vendor PLX		0x10b5	PLX
 vendor ASANTE		0x10bd	Asante
-vendor JRC		0x1145	JRC
+vendor JRC		0x1145	Japan Radio Company
 vendor SPHAIRON		0x114b	Sphairon Access Systems GmbH
 vendor DELORME		0x1163	DeLorme
 vendor SERVERWORKS	0x1166	ServerWorks
@@ -535,7 +534,7 @@
 vendor TWINMOS		0x126f	TwinMOS
 vendor TSUNAMI		0x1241	Tsunami
 vendor CREATIVE2	0x1292	Creative Labs
-vendor BELKIN2		0x1293	Belkin
+vendor BELKIN2		0x1293	Belkin Components
 vendor HUAWEI		0x12d1	Huawei Technologies
 vendor TAPWAVE		0x12ef	Tapwave
 vendor AINCOMM		0x12fd	Aincomm
@@ -547,7 +546,7 @@
 vendor NOVATEL		0x1410	Novatel Wireless
 vendor WISTRONNEWEB	0x1435	Wistron NeWeb
 vendor RADIOSHACK	0x1453	Radio Shack
-vendor HUAWEI3COM	0x1472	Huawei 3Com
+vendor HUAWEI3COM	0x1472	Huawei-3Com
 vendor SILICOM		0x1485	Silicom
 vendor RALINK		0x148f	Ralink Technology
 vendor IMAGINATION	0x149a	Imagination Technologies
@@ -560,43 +559,43 @@
 vendor OQO		0x1557	OQO
 vendor UMEDIA		0x157e	U-MEDIA Communications
 vendor SOHOWARE		0x15e8	SOHOware
-vendor UMAX		0x1606	UMAX
+vendor UMAX		0x1606	UMAX Data Systems
 vendor INSIDEOUT	0x1608	Inside Out Networks
 vendor GOODWAY		0x1631	Good Way Technology
 vendor ENTREGA		0x1645	Entrega
-vendor ACTIONTEC	0x1668	Actiontec
+vendor ACTIONTEC	0x1668	Actiontec Electronics
 vendor ATHEROS		0x168c	Atheros Communications
 vendor GIGASET		0x1690	Gigaset
 vendor GLOBALSUN	0x16ab	Global Sun Technology
-vendor ANYDATA		0x16d5	AnyData Corporation
-vendor CMOTECH		0x16d8	CMOTECH CO., LTD.
+vendor ANYDATA		0x16d5	AnyDATA Corporation
+vendor CMOTECH		0x16d8	CMOTECH Co., Ltd.
 vendor LINKSYS4		0x1737	Linksys
 vendor AMIT		0x18c5	AMIT
 vendor QCOM		0x18e8	Qcom
 vendor LINKSYS3		0x1915	Linksys
 vendor DLINK		0x2001	D-Link
-vendor PLANEX2		0x2019	Planex
+vendor PLANEX2		0x2019	Planex Communications
 vendor ERICSSON		0x2282	Ericsson
 vendor MOTOROLA2	0x22b8	Motorola
 vendor TRIPPLITE	0x2478	Tripp-Lite
-vendor HIROSE		0x2631	Hirose
+vendor HIROSE		0x2631	Hirose Electric
 vendor NHJ		0x2770	NHJ
-vendor PLANEX		0x2c02	Planex
-vendor VIDZMEDIA	0x3275	VidzMedia
+vendor PLANEX		0x2c02	Planex Communications
+vendor VIDZMEDIA	0x3275	VidzMedia Pte Ltd
 vendor AEI		0x3334	AEI
 vendor PQI		0x3538	PQI
-vendor DAISY		0x3579	Daisy
+vendor DAISY		0x3579	Daisy Technology
 vendor NI		0x3923	National Instruments
-vendor MICRONET		0x3980	Micronet
+vendor MICRONET		0x3980	Micronet Communications
 vendor IODATA2		0x40bb	I-O Data
 vendor IRIVER		0x4102	iRiver
 vendor DELL		0x413c	Dell
 vendor ACEECA		0x4766	Aceeca
 vendor AVERATEC		0x50c2	Averatec
-vendor ONSPEC2		0x55aa	OnSpec
+vendor ONSPEC2		0x55aa	OnSpec Electronic Inc.
 vendor ZINWELL		0x5a57	Zinwell
 vendor SITECOM		0x6189	Sitecom
-vendor ARKMICRO		0x6547	Arkmicro Technologies
+vendor ARKMICRO		0x6547	Arkmicro Technologies Inc.
 vendor INTEL		0x8086	Intel
 vendor HP2		0xf003	Hewlett Packard
 

==== //depot/projects/soc2007/loafier_busalloc/kern/kern_sx.c#2 (text+ko) ====

@@ -40,7 +40,7 @@
 #include "opt_ddb.h"
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/kern_sx.c,v 1.53 2007/05/31 09:14:47 attilio Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/kern_sx.c,v 1.54 2007/07/06 13:20:44 attilio Exp $");
 
 #include <sys/param.h>
 #include <sys/ktr.h>
@@ -63,6 +63,9 @@
 #error "You must have SMP to enable the ADAPTIVE_SX option"
 #endif
 
+CTASSERT(((SX_ADAPTIVESPIN | SX_RECURSE) & LO_CLASSFLAGS) ==
+    (SX_ADAPTIVESPIN | SX_RECURSE));
+
 /* Handy macros for sleep queues. */
 #define	SQ_EXCLUSIVE_QUEUE	0
 #define	SQ_SHARED_QUEUE		1
@@ -287,8 +290,10 @@
 	curthread->td_locks--;
 	WITNESS_UNLOCK(&sx->lock_object, 0, file, line);
 	LOCK_LOG_LOCK("SUNLOCK", &sx->lock_object, 0, 0, file, line);
+#ifdef LOCK_PROFILING_SHARED
 	if (SX_SHARERS(sx->sx_lock) == 1)
 		lock_profile_release_lock(&sx->lock_object);
+#endif
 	__sx_sunlock(sx, file, line);
 }
 
@@ -412,23 +417,21 @@
 #ifdef ADAPTIVE_SX
 	volatile struct thread *owner;
 #endif
+	uint64_t waittime = 0;
 	uintptr_t x;
 	int contested = 0, error = 0;
-	uint64_t waitstart = 0;
 
 	/* If we already hold an exclusive lock, then recurse. */
 	if (sx_xlocked(sx)) {
 		KASSERT((sx->lock_object.lo_flags & SX_RECURSE) != 0,
 	    ("_sx_xlock_hard: recursed on non-recursive sx %s @ %s:%d\n",
-		    sx->lock_object.lo_name, file, line));		
+		    sx->lock_object.lo_name, file, line));
 		sx->sx_recurse++;
 		atomic_set_ptr(&sx->sx_lock, SX_LOCK_RECURSED);
 		if (LOCK_LOG_TEST(&sx->lock_object, 0))
 			CTR2(KTR_LOCK, "%s: %p recursing", __func__, sx);
 		return (0);
 	}
-	lock_profile_obtain_lock_failed(&(sx)->lock_object,
-	    &contested, &waitstart);
 
 	if (LOCK_LOG_TEST(&sx->lock_object, 0))
 		CTR5(KTR_LOCK, "%s: %s contested (lock=%p) at %s:%d", __func__,
@@ -452,6 +455,8 @@
 					    "%s: spinning on %p held by %p",
 					    __func__, sx, owner);
 				GIANT_SAVE();
+				lock_profile_obtain_lock_failed(
+				    &sx->lock_object, &contested, &waittime);
 				while (SX_OWNER(sx->sx_lock) == x &&
 				    TD_IS_RUNNING(owner))
 					cpu_spinwait();
@@ -538,6 +543,8 @@
 			    __func__, sx);
 
 		GIANT_SAVE();
+		lock_profile_obtain_lock_failed(&sx->lock_object, &contested,
+		    &waittime);
 		sleepq_add(&sx->lock_object, NULL, sx->lock_object.lo_name,
 		    SLEEPQ_SX | ((opts & SX_INTERRUPTIBLE) ?
 		    SLEEPQ_INTERRUPTIBLE : 0), SQ_EXCLUSIVE_QUEUE);
@@ -560,8 +567,8 @@
 
 	GIANT_RESTORE();
 	if (!error)
-		lock_profile_obtain_lock_success(&(sx)->lock_object, contested,
-		    waitstart, file, line);
+		lock_profile_obtain_lock_success(&sx->lock_object, contested,
+		    waittime, file, line);
 	return (error);
 }
 
@@ -629,14 +636,17 @@
 #ifdef ADAPTIVE_SX
 	volatile struct thread *owner;
 #endif
+#ifdef LOCK_PROFILING_SHARED
+	uint64_t waittime = 0;
+	int contested = 0;
+#endif
 	uintptr_t x;
-	uint64_t waitstart = 0;
-	int contested = 0, error = 0;
+	int error = 0;
+
 	/*
 	 * As with rwlocks, we don't make any attempt to try to block
 	 * shared locks once there is an exclusive waiter.
 	 */
-	
 	for (;;) {
 		x = sx->sx_lock;
 
@@ -650,10 +660,12 @@
 			MPASS(!(x & SX_LOCK_SHARED_WAITERS));
 			if (atomic_cmpset_acq_ptr(&sx->sx_lock, x,
 			    x + SX_ONE_SHARER)) {
+#ifdef LOCK_PROFILING_SHARED
 				if (SX_SHARERS(x) == 0)
 					lock_profile_obtain_lock_success(
 					    &sx->lock_object, contested,
-					    waitstart, file, line);
+					    waittime, file, line);
+#endif
 				if (LOCK_LOG_TEST(&sx->lock_object, 0))
 					CTR4(KTR_LOCK,
 					    "%s: %p succeed %p -> %p", __func__,
@@ -661,9 +673,6 @@
 					    (void *)(x + SX_ONE_SHARER));
 				break;
 			}
-			lock_profile_obtain_lock_failed(&sx->lock_object, &contested,
-			    &waitstart);
-
 			continue;
 		}
 
@@ -677,23 +686,22 @@
 			x = SX_OWNER(x);
 			owner = (struct thread *)x;
 			if (TD_IS_RUNNING(owner)) {
-				lock_profile_obtain_lock_failed(&sx->lock_object, &contested,
-				    &waitstart);
 				if (LOCK_LOG_TEST(&sx->lock_object, 0))
 					CTR3(KTR_LOCK,
 					    "%s: spinning on %p held by %p",
 					    __func__, sx, owner);
 				GIANT_SAVE();
+#ifdef LOCK_PROFILING_SHARED
+				lock_profile_obtain_lock_failed(
+				    &sx->lock_object, &contested, &waittime);
+#endif
 				while (SX_OWNER(sx->sx_lock) == x &&
 				    TD_IS_RUNNING(owner))
 					cpu_spinwait();
 				continue;
 			}
-		} 
+		}
 #endif
-		else
-			lock_profile_obtain_lock_failed(&sx->lock_object, &contested,
-			    &waitstart);
 
 		/*
 		 * Some other thread already has an exclusive lock, so
@@ -750,8 +758,12 @@
 		if (LOCK_LOG_TEST(&sx->lock_object, 0))
 			CTR2(KTR_LOCK, "%s: %p blocking on sleep queue",
 			    __func__, sx);
-		
+
 		GIANT_SAVE();
+#ifdef LOCK_PROFILING_SHARED
+		lock_profile_obtain_lock_failed(&sx->lock_object, &contested,
+		    &waittime);
+#endif
 		sleepq_add(&sx->lock_object, NULL, sx->lock_object.lo_name,
 		    SLEEPQ_SX | ((opts & SX_INTERRUPTIBLE) ?
 		    SLEEPQ_INTERRUPTIBLE : 0), SQ_SHARED_QUEUE);
@@ -822,7 +834,6 @@
 			MPASS(x == SX_SHARERS_LOCK(1));
 			if (atomic_cmpset_ptr(&sx->sx_lock, SX_SHARERS_LOCK(1),
 			    SX_LOCK_UNLOCKED)) {
-				lock_profile_release_lock(&sx->lock_object);
 				if (LOCK_LOG_TEST(&sx->lock_object, 0))
 					CTR2(KTR_LOCK, "%s: %p last succeeded",
 					    __func__, sx);
@@ -837,7 +848,6 @@
 		 */
 		MPASS(x == (SX_SHARERS_LOCK(1) | SX_LOCK_EXCLUSIVE_WAITERS));
 
-		lock_profile_release_lock(&sx->lock_object);
 		sleepq_lock(&sx->lock_object);
 
 		/*

==== //depot/projects/soc2007/loafier_busalloc/sys/sx.h#2 (text+ko) ====

@@ -26,7 +26,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
  * DAMAGE.
  *
- * $FreeBSD: src/sys/sys/sx.h,v 1.36 2007/05/31 09:14:47 attilio Exp $
+ * $FreeBSD: src/sys/sys/sx.h,v 1.37 2007/07/06 13:20:44 attilio Exp $
  */
 
 #ifndef	_SYS_SX_H_
@@ -178,9 +178,11 @@
 	if (!(x & SX_LOCK_SHARED) ||
 	    !atomic_cmpset_acq_ptr(&sx->sx_lock, x, x + SX_ONE_SHARER))
 		error = _sx_slock_hard(sx, opts, file, line);
-	else
+#ifdef LOCK_PROFILING_SHARED
+	else if (SX_SHARERS(x) == 0)
 		lock_profile_obtain_lock_success(&sx->lock_object, 0, 0, file,
 		    line);
+#endif
 
 	return (error);
 }

==== //depot/projects/soc2007/loafier_busalloc/vm/vm_fault.c#2 (text+ko) ====

@@ -72,7 +72,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/vm/vm_fault.c,v 1.232 2007/06/17 04:14:27 mjacob Exp $");
+__FBSDID("$FreeBSD: src/sys/vm/vm_fault.c,v 1.233 2007/07/06 21:25:21 alc Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -402,13 +402,15 @@
 
 			vm_pageq_remove_nowakeup(fs.m);
 
-			if (VM_PAGE_RESOLVEQUEUE(fs.m, queue) == PQ_CACHE &&
-			    vm_page_count_severe()) {
-				vm_page_activate(fs.m);
-				vm_page_unlock_queues();
-				unlock_and_deallocate(&fs);
-				VM_WAITPFAULT;
-				goto RetryFault;
+			if (VM_PAGE_RESOLVEQUEUE(fs.m, queue) == PQ_CACHE) {
+				cnt.v_reactivated++;
+				if (vm_page_count_severe()) {
+					vm_page_activate(fs.m);
+					vm_page_unlock_queues();
+					unlock_and_deallocate(&fs);
+					VM_WAITPFAULT;
+					goto RetryFault;
+				}
 			}
 			vm_page_unlock_queues();
 
@@ -1335,6 +1337,6 @@
 		marray[i] = rtm;
 	}
 
-	/* return number of bytes of pages */
+	/* return number of pages */
 	return i;
 }


More information about the p4-projects mailing list