Home | History | Annotate | Download | only in usb
History log of /src/sys/dev/usb/umass_quirks.c
RevisionDateAuthorComments
 1.102  19-Jun-2020  flxd Add umass quirk for Alcor AU6366 multi-card reader.
 1.101  13-Apr-2020  jdolecek remove obsolete support for ISD-ATA umass(4) adapters
 1.100  28-Oct-2017  pgoyette branches: 1.100.4; 1.100.16;
Update the kernhist(9) kernel history code to address issues identified
in PR kern/52639, as well as some general cleaning-up...

(As proposed on tech-kern@ with additional changes and enhancements.)

Details of changes:

* All history arguments are now stored as uintmax_t values[1], both in
the kernel and in the structures used for exporting the history data
to userland via sysctl(9). This avoids problems on some architectures
where passing a 64-bit (or larger) value to printf(3) can cause it to
process the value as multiple arguments. (This can be particularly
problematic when printf()'s format string is not a literal, since in
that case the compiler cannot know how large each argument should be.)

* Update the data structures used for exporting kernel history data to
include a version number as well as the length of history arguments.

* All [2] existing users of kernhist(9) have had their format strings
updated. Each format specifier now includes an explicit length
modifier 'j' to refer to numeric values of the size of uintmax_t.

* All [2] existing users of kernhist(9) have had their format strings
updated to replace uses of "%p" with "%#jx", and the pointer
arguments are now cast to (uintptr_t) before being subsequently cast
to (uintmax_t). This is needed to avoid compiler warnings about
casting "pointer to integer of a different size."

* All [2] existing users of kernhist(9) have had instances of "%s" or
"%c" format strings replaced with numeric formats; several instances
of mis-match between format string and argument list have been fixed.

* vmstat(1) has been modified to handle the new size of arguments in the
history data as exported by sysctl(9).

* vmstat(1) now provides a warning message if the history requested with
the -u option does not exist (previously, this condition was silently
ignored, with only a single blank line being printed).

* vmstat(1) now checks the version and argument length included in the
data exported via sysctl(9) and exits if they do not match the values
with which vmstat was built.

* The kernhist(9) man-page has been updated to note the additional
requirements imposed on the format strings, along with several other
minor changes and enhancements.

[1] It would have been possible to use an explicit length (for example,
uint64_t) for the history arguments. But that would require another
"rototill" of all the users in the future when we add support for an
architecture that supports a larger size. Also, the printf(3) format
specifiers for explicitly-sized values, such as "%"PRIu64, are much
more verbose (and less aesthetically appealing, IMHO) than simply
using "%ju".

[2] I've tried very hard to find "all [the] existing users of kernhist(9)"
but it is possible that I've missed some of them. I would be glad to
update any stragglers that anyone identifies.
 1.99  01-Jul-2016  skrll branches: 1.99.10;
Convert umass(4) to usbhist.
 1.98  01-Jun-2016  pgoyette Add quick for Sandisk Cruzer - from PR kern/46547
 1.97  23-Apr-2016  skrll Merge nick-nhusb

- API / infrastructure changes to support memory management changes.
- Memory management improvements and bug fixes.
- HCDs should now be MP safe
- conversion to KERNHIST based debug
- FS/LS isoc support on ehci(4).
- conversion to kmem(9)
- Some USB 3 support - mostly from Takahiro HAYASHI (t-hash).
- interrupt transfers now get proper DMA operations
- general bug fixes
- kern/48308
- uhub status notification improvements
- umass(4) probe fix (applied to HEAD already)
- ohci(4) short transfer fix
 1.96  12-Sep-2014  skrll branches: 1.96.2;
Improve USB debugging with USBHIST based on KERNHIST.

Convert some DPRINTFs to USBHIST_LOG and allow usbdebug, ehcidebug and
umassdebug to be changed via sysctl.

Remove the #define mess in usb.h.

This was started by mrg@ and updated by reinoud@
 1.95  14-May-2013  kiyohara branches: 1.95.8; 1.95.12;
Add quirk for IODATA2 USB2SC.
This works target 0 only. However supports 4 targets in spec.
 1.94  24-Aug-2012  drochner branches: 1.94.2;
Another contribution to PR kern/42225 which will hopefully
bring the story to an end:

Always ignore the residue from the CSW, just use the real
transfer length counted by the USB stack. This was first
proposed by Markus Kilbinger but unfortunately ignored
later. (Too many cooks...)
According to Matthias Kretschmer, Darwin and Haiku do
the same.

Remove the "UMASS_QUIRK_IGNORE_RESIDUE" quirk which was
just for the one "SuperTop" device mentioned in the PR.
This device was successfully tested by Matthias Kretschmer /
Ignatios Souvatzis.

I've tested the patch with various other devices and
didn't find regressions.
 1.93  03-Mar-2012  riz Add quirk for Kingston DataTraveler 100 G2 (which apparently has
a Toshiba vendor ID)
 1.92  23-Dec-2011  jakllsch branches: 1.92.2;
Revert previous due to active usbmp branch(es).
 1.91  22-Dec-2011  jakllsch Adjust-away inconsistent and trailing whitespace.
 1.90  20-Sep-2011  jakllsch branches: 1.90.2; 1.90.6;
Don't sync cache on Sansa Clip, while not fatal to further device access,
it spews 4 "generic HBA error" lines in the dmesg just plugging it in.
 1.89  19-Sep-2011  plunky add Kingston DataTraveler 102 G2 (does not like being told to lock door)
 1.88  03-Sep-2011  asau Add quirks for Kingston DT 101 to stop them giving HBA errors.
 1.87  24-Aug-2011  mbalmer Wrap the include "opt_umass.h" in #ifdef _KERNEL_OPT.
 1.86  23-Aug-2011  christos defopt UMASS_DEBUG
 1.85  31-Jul-2011  jakllsch Restore original residue quirk proposed in PR#42225, it is necessary.
 1.84  30-Dec-2010  jakllsch HP v125w flash drive doesn't like PREVENT/ALLOW either.
Reported by Gary Duzan on current-users;
http://mail-index.netbsd.org/current-users/2010/12/30/msg015240.html
 1.83  03-Nov-2010  dyoung Stop using the compatibility macros USB_ATTACH(), USB_DETACH(),
USB_MATCH(), et cetera. These files produce the same assembly
(according to objdump -d) before and after the change
 1.82  18-Oct-2010  sborrill Add quirk for Kingston DT Mini 10 to stop it giving HBA errors.
 1.81  08-Jun-2010  jakllsch Add quirks for Creative Nomad MuVo, it chokes when told to prevent
media removal or synchronize cache. Should fix PR#30389.
 1.80  07-Jun-2010  jakllsch Four more quirky umass(4)es.
These include the Philips SA235, and iRiver iFP-series audio players.
Mostly from PR#25440 and PR#43264.
 1.79  13-Feb-2010  martin branches: 1.79.2;
Remove UMASS_QUIRK_IGNORE_RESIDUE, instead max out the expected response
size at the actual transfer length. Fixes PR kern/42225 differently.
 1.78  30-Oct-2009  is branches: 1.78.2;
Quirk to regenerate residue for borken UMASS devices; needed (at least)
for Supertop IDE bridge. From Matthias Kretschmer, PR 42225.
 1.77  12-Oct-2009  wiz Add quirk for Meizu M6, which doesn't like synchronize cache;
addresses PR 40442.

Idea for quirk from FreeBSD/hps.
 1.76  27-Oct-2008  joerg branches: 1.76.2;
Remove E220 quirk -- u3g(4) does implement that directly.
 1.75  06-Sep-2008  rmind branches: 1.75.2;
PR/37948: Yojiro UO: Support for Sony GPS GPS-CS1 devices. Check the support
of UR_BBB_GET_MAX_LUN, and disable the logic, if needed.
 1.74  11-May-2008  mlelstv branches: 1.74.4;
Use NODOORLOCK quirk to make iBead MP3 players work.
Fixes PR kern/23875.
 1.73  28-Apr-2008  martin branches: 1.73.2;
Remove clause 3 and 4 from TNF licenses
 1.72  21-Jan-2008  ichiro branches: 1.72.6; 1.72.8; 1.72.10;
add full support device driver for Huawei E220 wireless modem

PR/37692 from Yojiro UO
---
uhmodem: device driver for huawei 3G wireless modem

* what it is?

A device driver for huawei 3G wireless modem, E220 and its valiations.

The devices are very simuler to ubsa device, but they need special care
to use as modem device.
This patch introduce "uhmodem (USB Huawei modem)" for the devices.
A uhmodem device has two com devices and one USB mass strage device.
The driver enable to use all of them.

* dmesg:
uhmodem0 at uhub0 port 1 configuration 1 interface 0
uhmodem0: HUAWEI Technologies HUAWEI Mobile, rev 1.10/0.00, addr 2
uhmodem0: mass storage only mode, reattach to enable modem
uhmodem0: at uhub0 port 1 (addr 2) disconnected
uhmodem0 detached
uhmodem0 at uhub0 port 1 configuration 1 interface 0
uhmodem0: HUAWEI Technologies HUAWEI Mobile, rev 1.10/0.00, addr 2
ucom0 at uhmodem0 portno 0: modem
ucom1 at uhmodem0 portno 1: monitor
umass0 at uhub0 port 1 configuration 1 interface 2
umass0: HUAWEI Technologies HUAWEI Mobile, rev 1.10/0.00, addr 2
umass0: using SCSI over Bulk-Only
scsibus0 at umass0: 2 targets, 1 lun per target
cd0 at scsibus0 target 0 lun 0: <HUAWEI, Mass Storage, 2.31> cdrom removable
 1.71  09-Jan-2007  christos branches: 1.71.22; 1.71.28; 1.71.34;
PR/35385: Mihai Chelaru: Add a quirk for the Sony Cybershot USB camera, which
needs padding to 12.
 1.70  11-Dec-2005  christos branches: 1.70.20;
merge ktrace-lwp.
 1.69  21-Sep-2005  cube Third version of the DiskOnKey chip needs the same trick as the two others.
Combined with Nathan's previous commit, this allows the DiskOnKey 3 to
work on NetBSD! Thanks to Marc Baudoin for lending the device.
 1.68  02-Mar-2005  mycroft branches: 1.68.4;
Copyright maintenance.
 1.67  28-Jun-2004  mycroft branches: 1.67.4; 1.67.6;
Fix some UMATCH values.
 1.66  28-Jun-2004  mycroft Tracy's Clie reports that it's SFF-8070 when it's really UFI. Bah.
 1.65  25-Jun-2004  mycroft Add a comment explaining quirk table policy.
 1.64  07-Nov-2003  kivinen branches: 1.64.2;
eUSB ORCA Quad Reader (SHUTTLE) returns invalid CSWTAGs
(always 0). Added quirk to fix it.
 1.63  22-Oct-2003  augustss Re-add the quirks that force certain In-System Design adapters to appear
as (non-standard) ATA over BBB adapters. Without these quirks they are
not regocnized by the umass driver.
 1.62  18-Oct-2003  wiz Fix typo in comment.
 1.61  17-Oct-2003  mycroft The Yano quirk was intended to do FORCE_SHORT_INQUIRY. Not that that's gone,
we shouldn't need this any more, so nuke it.
 1.60  16-Oct-2003  mycroft Set the REQUEST SENSE command length to 12 for ATAPI, too. (UFI and ATAPI are
really the same...)

Fixes problems with Sony Vaio memory stick slots, which advertise themselves as
"ATAPI over CBI".

Remove the quirk for Fuji cameras, since this is almost certainly the same bug.
 1.59  16-Oct-2003  mycroft Switch back to UMATCH_DEVCLASS_DEVSUBCLASS_DEVPROTO in a few cases. Not that
it really matters, but UMATCH_VENDOR_PRODUCT effectively overrides the class
code, and that is not supposed to be part of the "quirk".
 1.58  16-Oct-2003  mycroft Document the Olympus, ScanLogic and Sony "quirks" better. Also, the ScanLogic
correctly reports itself as SCSI -- it is *not* UFI.
 1.57  16-Oct-2003  mycroft Deal with the damn DiskOnKey devices. See the comment for an explanation.
 1.56  17-Sep-2003  mycroft Shuttle products do not need PQUIRK_NOTUR any more. Also removing them for the
other two items, since they are presumed unnecessary.
 1.55  12-Sep-2003  mycroft ZIP drives don't need PQUIRK_NOTUR -- tested on both a 100 (by me) and a 250
(by gendalia). The 100 seems to have another problem that I'm looking into.
 1.54  10-Sep-2003  mycroft Exorcise UMASS_QUIRK_FORCE_SHORT_INQUIRY.
 1.53  10-Sep-2003  mycroft The Sony camera reports itself as a "disk", not a "simplified direct access"
device -- ergo, it is "SCSI", not "RBC".
 1.52  10-Sep-2003  mycroft cc -pipe -ffreestanding -O2 -Werror -Wall -Wno-main -Wno-format-zero-length -Fix several problems with CCI handling, and enable it:
* We were never calling the callback function when we got a UFI CCI(!).
* We were passing a bogus residual count on non-UFI CCIs.
* After a REQUEST SENSE, the UFI CCI may include the ASC/ASCQ from the sense
information -- don't consider this a failure.
In addition, remove a horrible hack that was causing us to drop sense
information on the floor and return empty INQUIRY responses, often in the case
where there is a UNIT ATTENTION pending during the INQUIRY. (Some drives send
the data and then fail, some don't.)

This eliminates the need for quirks for the Y-E DATA FlashBuster.

These changes work on:

umass0: SAMSUNG SFD-321U [FW 0C], rev 1.10/2.10, addr 2
umass0: using UFI over CBI with CCI
sd0 at atapibus1 drive 0: <SMSC, USB FDC, 2.10> disk removable

umass0: TEAC TEAC FD-05PUB, rev 1.10/0.00, addr 2
umass0: using UFI over CBI with CCI
sd0 at atapibus0 drive 0: <TEAC, FD-05PUB, 1026> disk removable

umass0: Y-E DATA FlashBuster-U, rev 1.00/3.04, addr 2
umass0: using UFI over CBI with CCI
sd0 at atapibus0 drive 0: <Y-E DATA, USB-FDU, 3.04> disk removable
 1.51  09-Sep-2003  mycroft PQUIRK_NODOORLOCK seems to be strictly unnecessary. If the drive doesn't
support it, we'll just get an ILLEGAL REQUEST and ignore it. Furthermore,
on the PQI Travel Flash at least, it works just fine without. These seem to
have been added in omnibus changes for particular devices, along with other
"quirks" that are now gone. Adios, we won't cry for you.
 1.50  08-Sep-2003  mycroft If maxlun>0, automatically set PQUIRK_FORCELUNS, rather than using quirk
table entries.
 1.49  08-Sep-2003  mycroft Remove UMASS_QUIRK_NO_START_STOP and UMASS_QUIRK_NO_MAX_LUN.
 1.48  08-Sep-2003  tron Add quirk for Sandisk SDDR-86. The patch was supplied by Peter Seebach
in PR kern/22720.
 1.47  05-Sep-2003  mycroft Some of the table entries are now noops. Remove them.
 1.46  05-Sep-2003  mycroft Take vigilante action and remove all the NO_MAX_LUN, NOMODESENSE and
NOBIGMODESENSE "quirks". These problems should be fixed without klugery
now.
 1.45  08-Aug-2003  wulf Add SIIG UISDMC2S Multicard Reader/Writer
 1.44  14-Jul-2003  lukem add missing __KERNEL_RCSID()
 1.43  30-Jun-2003  martin branches: 1.43.2;
Add Sony USB Memory Stick Slot (MSC-U03),
from Katsuhisa ABE in PR 22017.
 1.42  26-Jun-2003  jschauma Add support for two new devices:
- LaCie Pocket Drive (http://www.lacie.com/products/product.htm?id=10023)
- a Pen Drive (http://www.flash-memory-store.com/51usbflasdri.html)

The latter shows as a uhub with a umass and a ugen. The ugen is the
"Secure Write" device, which presumably allows password protection with the
appropriate (windows only) driver. Works fine without.

Ok by augustss.
 1.41  23-Jun-2003  augustss Add my new Laks watch with a flash disk.
Yes, I'm a geek.
 1.40  23-Jun-2003  augustss Another quirk from Urban Boquist.
 1.39  08-May-2003  augustss Add another Diskonkey product id.
 1.38  06-May-2003  dsainty Add quirk for the 3in1 MobileDrive USB SD card reader, also sold as the
"DSE USB ProDrive".
 1.37  18-Apr-2003  uwe Quirk Pilotech CRW-600.
 1.36  13-Apr-2003  augustss Add quirk for Genesys Logic GL641USB. From PR kern/21131.
 1.35  05-Apr-2003  nakayama Add quirk for Pen USB Reader.
 1.34  24-Feb-2003  nakayama Add quirk to probe I-O DATA USB-SC2 as umass.
(tested on sparc64 and i386)
 1.33  21-Jan-2003  augustss Fix typo in last commit.
 1.32  21-Jan-2003  augustss Add quirk for Melco adapter. From kern/19971, Shingo WATANABE.
 1.31  10-Jan-2003  gehenna Add quirk for NeoDio ND3050.
 1.30  31-Dec-2002  augustss Another quirk.
 1.29  23-Dec-2002  augustss Add quirk. From kern/19499, Werner Backes.
 1.28  06-Dec-2002  erh kern/12837: Provide a way to get working devices that violate the usb spec by
returning a non-matching CSW tag.
Defined a quirk for this and set it for Scanlogic SL11R, which gets my
NEO Jukebox working.
 1.27  28-Nov-2002  gehenna EasyDisk and Solid state disk like PQUIRK_NOMODESENSE.
 1.26  05-Nov-2002  cjs Fix typo.
 1.25  05-Nov-2002  cjs Restore umass_fixup_sony so that Sony cameras work once again.
 1.24  05-Oct-2002  gehenna g/c unused function.
 1.23  04-Oct-2002  gehenna Alphabetical sort.
 1.22  04-Oct-2002  gehenna Remove 'any match' entry from quirks table.
This entry detects all unknown SONY USB devices as USB storage device.
 1.21  04-Oct-2002  soren PQI Travel Flash likes PQUIRK_NODOORLOCK too.
 1.20  01-Oct-2002  soren PQI Travel Flash Drive.
 1.19  10-Sep-2002  nathanw At least some versions of the M-Systems DiskOnKey also need
UMASS_QUIRK_NO_MAX_LUN.
 1.18  31-Aug-2002  uwe Add quirks for Neodio ND5010.
 1.17  29-Jul-2002  augustss Add a quirk for an In-System Design adapter.
 1.16  11-Jul-2002  augustss Add a quirk for Trumpion device (extracted from OpenBSD).
 1.15  07-Jul-2002  augustss Add quirk for ADS HD controller. From Scott Ellis in kern/17495.
 1.14  16-Jun-2002  augustss Use different quirks for Sony Memory Stick. From John Heasley in kern/16946.
Also don't munge all sony devices when patching subclass.
 1.13  22-Apr-2002  augustss branches: 1.13.2;
Another disk quirk.
 1.12  20-Feb-2002  augustss Add quirks for Minolta Dimage X.
 1.11  11-Feb-2002  mjl Add OnSpec PC-Card reader
 1.10  07-Feb-2002  augustss Add quirks for Minolta S304.
 1.9  07-Feb-2002  augustss OnSpec doesn't like Mode Sense.
 1.8  29-Dec-2001  augustss branches: 1.8.2; 1.8.4;
Move some USB device quirks to the umass_quirk table.
 1.7  29-Dec-2001  augustss Introduce a field, busquirks, in the umass quirk table that is passed
directly to the quirk field for the bus.
 1.6  24-Dec-2001  augustss Use the new USB_PRODUCT_ANY match.
 1.5  24-Dec-2001  augustss Get rid of the transfer_speed nonsense to calculate the timeout.
We get passed a timeout from the upper layer which is what matters.
 1.4  24-Dec-2001  augustss Add a preliminary version of a driver for In-System Designs non-standard
ATA-over-BulkOnly protocol. The ISD chip can be found, e.g., in the
Archos MP3 player.
The driver still lacks real error handling.
 1.3  24-Dec-2001  augustss Make the separation between wire protocol (umass.c) and command protocol
(umass_scsipi.c) more distinct.
It is now possible to add new command protocols with a minimum of change.
The umassbus.[ch] files have been renamed umass_scsipi.[ch] since this
reflects their purpose better.
 1.2  22-Dec-2001  gehenna Add new quirk: NO_REQUEST_SENSE

Submit by: Dave Sainty
 1.1  17-Dec-2001  gehenna Introduce the new umass quirk table.

Discussed with augustss.
 1.8.4.6  10-Oct-2002  jdolecek sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work
 1.8.4.5  06-Sep-2002  jdolecek sync kqueue branch with HEAD
 1.8.4.4  23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.8.4.3  16-Mar-2002  jdolecek Catch up with -current.
 1.8.4.2  10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.8.4.1  29-Dec-2001  thorpej file umass_quirks.c was added on branch kqueue on 2002-01-10 19:59:01 +0000
 1.8.2.12  15-Jan-2003  thorpej Sync with HEAD.
 1.8.2.11  03-Jan-2003  thorpej Sync with HEAD.
 1.8.2.10  29-Dec-2002  thorpej Sync with HEAD.
 1.8.2.9  11-Dec-2002  thorpej Sync with HEAD.
 1.8.2.8  11-Nov-2002  nathanw Catch up to -current
 1.8.2.7  18-Oct-2002  nathanw Catch up to -current.
 1.8.2.6  17-Sep-2002  nathanw Catch up to -current.
 1.8.2.5  01-Aug-2002  nathanw Catch up to -current.
 1.8.2.4  20-Jun-2002  nathanw Catch up to -current.
 1.8.2.3  28-Feb-2002  nathanw Catch up to -current.
 1.8.2.2  08-Jan-2002  nathanw Catch up to -current.
 1.8.2.1  29-Dec-2001  nathanw file umass_quirks.c was added on branch nathanw_sa on 2002-01-08 00:32:14 +0000
 1.13.2.3  29-Aug-2002  gehenna catch up with -current.
 1.13.2.2  15-Jul-2002  gehenna catch up with -current.
 1.13.2.1  20-Jun-2002  gehenna catch up with -current.
 1.43.2.5  10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.43.2.4  04-Mar-2005  skrll Sync with HEAD.

Hi Perry!
 1.43.2.3  21-Sep-2004  skrll Fix the sync with head I botched.
 1.43.2.2  18-Sep-2004  skrll Sync with HEAD.
 1.43.2.1  03-Aug-2004  skrll Sync with HEAD
 1.64.2.2  02-Jul-2004  he Pull up revisions 1.65,1.67 (requested by mycroft in ticket #572):
Several fixes mostly related to USB:
o Add a comment explaining quirk table policy.
o Fix some UMATCH values in umass_quirks.c.
 1.64.2.1  30-Jun-2004  jdc Pull up revision 1.66 (requested by gendalia in ticket #565).

Tracy's Clie reports that it's SFF-8070 when it's really UFI. Bah.
 1.67.6.1  19-Mar-2005  yamt sync with head. xen and whitespace. xen part is not finished.
 1.67.4.1  29-Apr-2005  kent sync with -current
 1.68.4.3  04-Feb-2008  yamt sync with head.
 1.68.4.2  26-Feb-2007  yamt sync with head.
 1.68.4.1  21-Jun-2006  yamt sync with head.
 1.70.20.1  12-Jan-2007  ad Sync with head.
 1.71.34.1  23-Jan-2008  bouyer Sync with HEAD.
 1.71.28.1  18-Feb-2008  mjf Sync with HEAD.
 1.71.22.1  23-Mar-2008  matt sync with HEAD
 1.72.10.4  11-Aug-2010  yamt sync with head.
 1.72.10.3  11-Mar-2010  yamt sync with head
 1.72.10.2  04-May-2009  yamt sync with head.
 1.72.10.1  16-May-2008  yamt sync with head.
 1.72.8.1  18-May-2008  yamt sync with head.
 1.72.6.3  17-Jan-2009  mjf Sync with HEAD.
 1.72.6.2  28-Sep-2008  mjf Sync with HEAD.
 1.72.6.1  02-Jun-2008  mjf Sync with HEAD.
 1.73.2.2  18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.73.2.1  23-Jun-2008  wrstuden Sync w/ -current. 34 merge conflicts to follow.
 1.74.4.2  13-Dec-2008  haad Update haad-dm branch to haad-dm-base2.
 1.74.4.1  19-Oct-2008  haad Sync with HEAD.
 1.75.2.1  19-Jan-2009  skrll Sync with HEAD.
 1.76.2.2  17-Mar-2012  bouyer Apply patch, requested by riz in ticket #1737:
sys/dev/usb/usbdevs patch
sys/dev/usb/umass_quirks.c patch

Add umass quirks for the following devices:
Kingston DT 102 G2
Kingston DT 101 II
Kingston DT Mini 10
Kingston DT 101 G2
Kingston DT 100 G2
Meizo Electronics MiniPlayer M6 (SL)
Philips SA235
Sandisk Sansa Clip
 1.76.2.1  26-Nov-2010  riz Pull up following revision(s) (requested by sborrill in ticket #1489):
sys/dev/usb/umass_quirks.c: revision 1.82
sys/dev/usb/usbdevs: revision 1.564
Add Kingston DT Mini 10 pendrive
Regen
Add quirk for Kingston DT Mini 10 to stop it giving HBA errors.
 1.78.2.4  06-Nov-2010  uebayasi Sync with HEAD.
 1.78.2.3  22-Oct-2010  uebayasi Sync with HEAD (-D20101022).
 1.78.2.2  17-Aug-2010  uebayasi Sync with HEAD.
 1.78.2.1  30-Apr-2010  uebayasi Sync with HEAD.
 1.79.2.2  05-Mar-2011  rmind sync with head
 1.79.2.1  03-Jul-2010  rmind sync with head
 1.90.6.4  06-Mar-2012  mrg sync to -current
 1.90.6.3  06-Mar-2012  mrg sync to -current
 1.90.6.2  04-Mar-2012  mrg sync to latest -current.
 1.90.6.1  18-Feb-2012  mrg merge to -current.
 1.90.2.3  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.90.2.2  30-Oct-2012  yamt sync with head
 1.90.2.1  17-Apr-2012  yamt sync with head
 1.92.2.1  17-Mar-2012  bouyer Pull up following revision(s) (requested by riz in ticket #90):
sys/dev/usb/usbdevs: revision 1.610
sys/dev/usb/umass_quirks.c: revision 1.93
add product ID for the Kingston DataTraveler 100 G2.
Add quirk for Kingston DataTraveler 100 G2 (which apparently has
a Toshiba vendor ID)
 1.94.2.2  03-Dec-2017  jdolecek update from HEAD
 1.94.2.1  23-Jun-2013  tls resync from head
 1.95.12.1  06-Sep-2016  skrll First pass at netbsd-7 updated with USB code from HEAD
 1.95.8.1  05-Apr-2017  snj Pull up following revision(s) (requested by skrll in ticket #1395):
share/man/man4/axe.4: netbsd-7-nhusb
share/man/man4/axen.4: netbsd-7-nhusb
share/man/man4/cdce.4: netbsd-7-nhusb
share/man/man4/uaudio.4: netbsd-7-nhusb
share/man/man4/ucom.4: netbsd-7-nhusb
share/man/man4/uep.4: netbsd-7-nhusb
share/man/man4/urtw.4: netbsd-7-nhusb
share/man/man4/usb.4: netbsd-7-nhusb
share/man/man4/uyap.4: netbsd-7-nhusb
share/man/man4/xhci.4: netbsd-7-nhusb
share/man/man9/usbdi.9: netbsd-7-nhusb
sys/arch/amd64/conf/ALL: netbsd-7-nhusb
sys/arch/amd64/conf/GENERIC: netbsd-7-nhusb
sys/arch/amiga/dev/slhci_zbus.c: netbsd-7-nhusb
sys/arch/arm/allwinner/awin_otg.c: netbsd-7-nhusb
sys/arch/arm/allwinner/awin_usb.c: netbsd-7-nhusb
sys/arch/arm/amlogic/amlogic_dwctwo.c: netbsd-7-nhusb
sys/arch/arm/at91/at91ohci.c: netbsd-7-nhusb
sys/arch/arm/broadcom/bcm2835_dwctwo.c: netbsd-7-nhusb
sys/arch/arm/broadcom/bcm53xx_usb.c: netbsd-7-nhusb
sys/arch/arm/ep93xx/epohci.c: netbsd-7-nhusb
sys/arch/arm/gemini/obio_ehci.c: netbsd-7-nhusb
sys/arch/arm/imx/files.imx23: netbsd-7-nhusb
sys/arch/arm/imx/imxusb.c: netbsd-7-nhusb
sys/arch/arm/imx/imxusbreg.h: netbsd-7-nhusb
sys/arch/arm/omap/obio_ohci.c: netbsd-7-nhusb
sys/arch/arm/omap/omap3_ehci.c: netbsd-7-nhusb
sys/arch/arm/omap/omapl1x_ohci.c: netbsd-7-nhusb
sys/arch/arm/omap/tiotg.c: netbsd-7-nhusb
sys/arch/arm/s3c2xx0/ohci_s3c24x0.c: netbsd-7-nhusb
sys/arch/arm/samsung/exynos_usb.c: netbsd-7-nhusb
sys/arch/arm/xscale/pxa2x0_ohci.c: netbsd-7-nhusb
sys/arch/arm/zynq/zynq_usb.c: netbsd-7-nhusb
sys/arch/hpcarm/dev/nbp_slhci.c: netbsd-7-nhusb
sys/arch/hpcmips/dev/plumohci.c: netbsd-7-nhusb
sys/arch/i386/conf/ALL: netbsd-7-nhusb
sys/arch/i386/conf/GENERIC: netbsd-7-nhusb
sys/arch/i386/pci/gcscehci.c: netbsd-7-nhusb
sys/arch/luna68k/conf/GENERIC: netbsd-7-nhusb
sys/arch/mips/adm5120/dev/ahci.c: netbsd-7-nhusb
sys/arch/mips/adm5120/dev/ahcivar.h: netbsd-7-nhusb
sys/arch/mips/alchemy/dev/ohci_aubus.c: netbsd-7-nhusb
sys/arch/mips/atheros/dev/ehci_arbus.c: netbsd-7-nhusb
sys/arch/mips/atheros/dev/ohci_arbus.c: netbsd-7-nhusb
sys/arch/mips/conf/files.adm5120: netbsd-7-nhusb
sys/arch/mips/ralink/ralink_ehci.c: netbsd-7-nhusb
sys/arch/mips/ralink/ralink_ohci.c: netbsd-7-nhusb
sys/arch/mips/rmi/rmixl_ehci.c: netbsd-7-nhusb
sys/arch/mips/rmi/rmixl_ohci.c: netbsd-7-nhusb
sys/arch/playstation2/dev/ohci_sbus.c: netbsd-7-nhusb
sys/arch/powerpc/booke/dev/pq3ehci.c: netbsd-7-nhusb
sys/arch/powerpc/ibm4xx/dev/dwctwo_plb.c: netbsd-7-nhusb
sys/arch/x68k/dev/slhci_intio.c: netbsd-7-nhusb
sys/conf/files: netbsd-7-nhusb
sys/dev/cardbus/ehci_cardbus.c: netbsd-7-nhusb
sys/dev/cardbus/ohci_cardbus.c: netbsd-7-nhusb
sys/dev/cardbus/uhci_cardbus.c: netbsd-7-nhusb
sys/dev/ic/sl811hs.c: netbsd-7-nhusb
sys/dev/ic/sl811hsvar.h: netbsd-7-nhusb
sys/dev/isa/slhci_isa.c: netbsd-7-nhusb
sys/dev/marvell/ehci_mv.c: netbsd-7-nhusb
sys/dev/pci/ehci_pci.c: netbsd-7-nhusb
sys/dev/pci/ohci_pci.c: netbsd-7-nhusb
sys/dev/pci/uhci_pci.c: netbsd-7-nhusb
sys/dev/pci/xhci_pci.c: netbsd-7-nhusb
sys/dev/pcmcia/slhci_pcmcia.c: netbsd-7-nhusb
sys/dev/usb/Makefile.usbdevs: netbsd-7-nhusb
sys/dev/usb/TODO: netbsd-7-nhusb
sys/dev/usb/TODO.usbmp: netbsd-7-nhusb
sys/dev/usb/aubtfwl.c: netbsd-7-nhusb
sys/dev/usb/auvitek.c: netbsd-7-nhusb
sys/dev/usb/auvitek_audio.c: netbsd-7-nhusb
sys/dev/usb/auvitek_dtv.c: netbsd-7-nhusb
sys/dev/usb/auvitek_i2c.c: netbsd-7-nhusb
sys/dev/usb/auvitek_video.c: netbsd-7-nhusb
sys/dev/usb/auvitekvar.h: netbsd-7-nhusb
sys/dev/usb/ehci.c: netbsd-7-nhusb
sys/dev/usb/ehcireg.h: netbsd-7-nhusb
sys/dev/usb/ehcivar.h: netbsd-7-nhusb
sys/dev/usb/emdtv.c: netbsd-7-nhusb
sys/dev/usb/emdtv_dtv.c: netbsd-7-nhusb
sys/dev/usb/emdtv_ir.c: netbsd-7-nhusb
sys/dev/usb/emdtvvar.h: netbsd-7-nhusb
sys/dev/usb/ezload.c: netbsd-7-nhusb
sys/dev/usb/ezload.h: netbsd-7-nhusb
sys/dev/usb/files.usb: netbsd-7-nhusb
sys/dev/usb/hid.c: netbsd-7-nhusb
sys/dev/usb/hid.h: netbsd-7-nhusb
sys/dev/usb/if_athn_usb.c: netbsd-7-nhusb
sys/dev/usb/if_athn_usb.h: netbsd-7-nhusb
sys/dev/usb/if_atu.c: netbsd-7-nhusb
sys/dev/usb/if_atureg.h: netbsd-7-nhusb
sys/dev/usb/if_aue.c: netbsd-7-nhusb
sys/dev/usb/if_auereg.h: netbsd-7-nhusb
sys/dev/usb/if_axe.c: netbsd-7-nhusb
sys/dev/usb/if_axen.c: netbsd-7-nhusb
sys/dev/usb/if_axenreg.h: netbsd-7-nhusb
sys/dev/usb/if_axereg.h: netbsd-7-nhusb
sys/dev/usb/if_cdce.c: netbsd-7-nhusb
sys/dev/usb/if_cdcereg.h: netbsd-7-nhusb
sys/dev/usb/if_cue.c: netbsd-7-nhusb
sys/dev/usb/if_cuereg.h: netbsd-7-nhusb
sys/dev/usb/if_kue.c: netbsd-7-nhusb
sys/dev/usb/if_kuereg.h: netbsd-7-nhusb
sys/dev/usb/if_otus.c: netbsd-7-nhusb
sys/dev/usb/if_otusvar.h: netbsd-7-nhusb
sys/dev/usb/if_rum.c: netbsd-7-nhusb
sys/dev/usb/if_rumreg.h: netbsd-7-nhusb
sys/dev/usb/if_rumvar.h: netbsd-7-nhusb
sys/dev/usb/if_run.c: netbsd-7-nhusb
sys/dev/usb/if_runvar.h: netbsd-7-nhusb
sys/dev/usb/if_smsc.c: netbsd-7-nhusb
sys/dev/usb/if_smscreg.h: netbsd-7-nhusb
sys/dev/usb/if_smscvar.h: netbsd-7-nhusb
sys/dev/usb/if_udav.c: netbsd-7-nhusb
sys/dev/usb/if_udavreg.h: netbsd-7-nhusb
sys/dev/usb/if_upgt.c: netbsd-7-nhusb
sys/dev/usb/if_upgtvar.h: netbsd-7-nhusb
sys/dev/usb/if_upl.c: netbsd-7-nhusb
sys/dev/usb/if_ural.c: netbsd-7-nhusb
sys/dev/usb/if_uralreg.h: netbsd-7-nhusb
sys/dev/usb/if_uralvar.h: netbsd-7-nhusb
sys/dev/usb/if_url.c: netbsd-7-nhusb
sys/dev/usb/if_urlreg.h: netbsd-7-nhusb
sys/dev/usb/if_urndis.c: netbsd-7-nhusb
sys/dev/usb/if_urndisreg.h: netbsd-7-nhusb
sys/dev/usb/if_urtw.c: netbsd-7-nhusb
sys/dev/usb/if_urtwn.c: netbsd-7-nhusb
sys/dev/usb/if_urtwn_data.h: netbsd-7-nhusb
sys/dev/usb/if_urtwnreg.h: netbsd-7-nhusb
sys/dev/usb/if_urtwnvar.h: netbsd-7-nhusb
sys/dev/usb/if_urtwreg.h: netbsd-7-nhusb
sys/dev/usb/if_zyd.c: netbsd-7-nhusb
sys/dev/usb/if_zydreg.h: netbsd-7-nhusb
sys/dev/usb/irmce.c: netbsd-7-nhusb
sys/dev/usb/moscom.c: netbsd-7-nhusb
sys/dev/usb/motg.c: netbsd-7-nhusb
sys/dev/usb/motgvar.h: netbsd-7-nhusb
sys/dev/usb/ohci.c: netbsd-7-nhusb
sys/dev/usb/ohcireg.h: netbsd-7-nhusb
sys/dev/usb/ohcivar.h: netbsd-7-nhusb
sys/dev/usb/pseye.c: netbsd-7-nhusb
sys/dev/usb/slurm.c: netbsd-7-nhusb
sys/dev/usb/stuirda.c: netbsd-7-nhusb
sys/dev/usb/u3g.c: netbsd-7-nhusb
sys/dev/usb/uark.c: netbsd-7-nhusb
sys/dev/usb/uatp.c: netbsd-7-nhusb
sys/dev/usb/uaudio.c: netbsd-7-nhusb
sys/dev/usb/uberry.c: netbsd-7-nhusb
sys/dev/usb/ubsa.c: netbsd-7-nhusb
sys/dev/usb/ubsa_common.c: netbsd-7-nhusb
sys/dev/usb/ubsavar.h: netbsd-7-nhusb
sys/dev/usb/ubt.c: netbsd-7-nhusb
sys/dev/usb/uchcom.c: netbsd-7-nhusb
sys/dev/usb/ucom.c: netbsd-7-nhusb
sys/dev/usb/ucomvar.h: netbsd-7-nhusb
sys/dev/usb/ucycom.c: netbsd-7-nhusb
sys/dev/usb/udl.c: netbsd-7-nhusb
sys/dev/usb/udl.h: netbsd-7-nhusb
sys/dev/usb/udsbr.c: netbsd-7-nhusb
sys/dev/usb/udsir.c: netbsd-7-nhusb
sys/dev/usb/uep.c: netbsd-7-nhusb
sys/dev/usb/uftdi.c: netbsd-7-nhusb
sys/dev/usb/uftdireg.h: netbsd-7-nhusb
sys/dev/usb/ugen.c: netbsd-7-nhusb
sys/dev/usb/ugensa.c: netbsd-7-nhusb
sys/dev/usb/uhci.c: netbsd-7-nhusb
sys/dev/usb/uhcireg.h: netbsd-7-nhusb
sys/dev/usb/uhcivar.h: netbsd-7-nhusb
sys/dev/usb/uhid.c: netbsd-7-nhusb
sys/dev/usb/uhidev.c: netbsd-7-nhusb
sys/dev/usb/uhidev.h: netbsd-7-nhusb
sys/dev/usb/uhmodem.c: netbsd-7-nhusb
sys/dev/usb/uhso.c: netbsd-7-nhusb
sys/dev/usb/uhub.c: netbsd-7-nhusb
sys/dev/usb/uipad.c: netbsd-7-nhusb
sys/dev/usb/uipaq.c: netbsd-7-nhusb
sys/dev/usb/uirda.c: netbsd-7-nhusb
sys/dev/usb/uirdavar.h: netbsd-7-nhusb
sys/dev/usb/ukbd.c: netbsd-7-nhusb
sys/dev/usb/ukbdmap.c: netbsd-7-nhusb
sys/dev/usb/ukyopon.c: netbsd-7-nhusb
sys/dev/usb/ukyopon.h: netbsd-7-nhusb
sys/dev/usb/ulpt.c: netbsd-7-nhusb
sys/dev/usb/umass.c: netbsd-7-nhusb
sys/dev/usb/umass_isdata.c: netbsd-7-nhusb
sys/dev/usb/umass_isdata.h: netbsd-7-nhusb
sys/dev/usb/umass_quirks.c: netbsd-7-nhusb
sys/dev/usb/umass_quirks.h: netbsd-7-nhusb
sys/dev/usb/umass_scsipi.c: netbsd-7-nhusb
sys/dev/usb/umass_scsipi.h: netbsd-7-nhusb
sys/dev/usb/umassvar.h: netbsd-7-nhusb
sys/dev/usb/umcs.c: netbsd-7-nhusb
sys/dev/usb/umct.c: netbsd-7-nhusb
sys/dev/usb/umidi.c: netbsd-7-nhusb
sys/dev/usb/umidi_quirks.c: netbsd-7-nhusb
sys/dev/usb/umidi_quirks.h: netbsd-7-nhusb
sys/dev/usb/umodem.c: netbsd-7-nhusb
sys/dev/usb/umodem_common.c: netbsd-7-nhusb
sys/dev/usb/umodemvar.h: netbsd-7-nhusb
sys/dev/usb/ums.c: netbsd-7-nhusb
sys/dev/usb/uplcom.c: netbsd-7-nhusb
sys/dev/usb/urio.c: netbsd-7-nhusb
sys/dev/usb/urio.h: netbsd-7-nhusb
sys/dev/usb/usb.c: netbsd-7-nhusb
sys/dev/usb/usb.h: netbsd-7-nhusb
sys/dev/usb/usb_mem.c: netbsd-7-nhusb
sys/dev/usb/usb_mem.h: netbsd-7-nhusb
sys/dev/usb/usb_quirks.c: netbsd-7-nhusb
sys/dev/usb/usb_quirks.h: netbsd-7-nhusb
sys/dev/usb/usb_subr.c: netbsd-7-nhusb
sys/dev/usb/usbdevices.config: netbsd-7-nhusb
sys/dev/usb/usbdevs: netbsd-7-nhusb
sys/dev/usb/usbdevs.h: netbsd-7-nhusb
sys/dev/usb/usbdevs_data.h: netbsd-7-nhusb
sys/dev/usb/usbdi.c: netbsd-7-nhusb
sys/dev/usb/usbdi.h: netbsd-7-nhusb
sys/dev/usb/usbdi_util.c: netbsd-7-nhusb
sys/dev/usb/usbdi_util.h: netbsd-7-nhusb
sys/dev/usb/usbdivar.h: netbsd-7-nhusb
sys/dev/usb/usbhid.h: netbsd-7-nhusb
sys/dev/usb/usbhist.h: netbsd-7-nhusb
sys/dev/usb/usbroothub.c: netbsd-7-nhusb
sys/dev/usb/usbroothub.h: netbsd-7-nhusb
sys/dev/usb/usbroothub_subr.c: delete
sys/dev/usb/usbroothub_subr.h: delete
sys/dev/usb/uscanner.c: netbsd-7-nhusb
sys/dev/usb/uslsa.c: netbsd-7-nhusb
sys/dev/usb/usscanner.c: netbsd-7-nhusb
sys/dev/usb/ustir.c: netbsd-7-nhusb
sys/dev/usb/uthum.c: netbsd-7-nhusb
sys/dev/usb/utoppy.c: netbsd-7-nhusb
sys/dev/usb/uts.c: netbsd-7-nhusb
sys/dev/usb/uvideo.c: netbsd-7-nhusb
sys/dev/usb/uvisor.c: netbsd-7-nhusb
sys/dev/usb/uvscom.c: netbsd-7-nhusb
sys/dev/usb/uyap.c: netbsd-7-nhusb
sys/dev/usb/uyap_firmware.h: netbsd-7-nhusb
sys/dev/usb/uyurex.c: netbsd-7-nhusb
sys/dev/usb/x1input_rdesc.h: netbsd-7-nhusb
sys/dev/usb/xhci.c: netbsd-7-nhusb
sys/dev/usb/xhcireg.h: netbsd-7-nhusb
sys/dev/usb/xhcivar.h: netbsd-7-nhusb
sys/dev/usb/xinput_rdesc.h: netbsd-7-nhusb
sys/external/bsd/common/conf/files.linux: netbsd-7-nhusb
sys/external/bsd/common/include/linux/err.h: netbsd-7-nhusb
sys/external/bsd/common/include/linux/kernel.h: netbsd-7-nhusb
sys/external/bsd/common/include/linux/workqueue.h: netbsd-7-nhusb
sys/external/bsd/common/linux/linux_work.c: netbsd-7-nhusb
sys/external/bsd/drm2/dist/drm/radeon/atombios_encoders.c: netbsd-7-nhusb
sys/external/bsd/drm2/dist/drm/radeon/radeon_legacy_encoders.c: netbsd-7-nhusb
sys/external/bsd/drm2/drm/files.drmkms: netbsd-7-nhusb
sys/external/bsd/drm2/i915drm/files.i915drmkms: netbsd-7-nhusb
sys/external/bsd/drm2/include/linux/err.h: delete
sys/external/bsd/drm2/include/linux/workqueue.h: delete
sys/external/bsd/drm2/linux/files.drmkms_linux: netbsd-7-nhusb
sys/external/bsd/drm2/linux/linux_work.c: delete
sys/external/bsd/dwc2/dwc2.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dwc2.h: netbsd-7-nhusb
sys/external/bsd/dwc2/dwc2var.h: netbsd-7-nhusb
sys/external/bsd/dwc2/dwctwo2netbsd: netbsd-7-nhusb
sys/external/bsd/dwc2/conf/files.dwc2: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_core.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_core.h: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_coreintr.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcd.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcd.h: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcdddma.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcdintr.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcdqueue.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hw.h: netbsd-7-nhusb
sys/modules/drmkms_linux/Makefile: netbsd-7-nhusb
sys/modules/i915drmkms/Makefile: netbsd-7-nhusb
sys/rump/dev/lib/libugenhc/ugenhc.c: netbsd-7-nhusb
sys/rump/dev/lib/libusb/Makefile: netbsd-7-nhusb
sys/rump/dev/lib/libusb/USB.ioconf: netbsd-7-nhusb
sys/rump/dev/lib/libusb/usb_at_ugenhc.c: delete
sys/rump/dev/lib/libusb/opt/opt_usb.h: delete
sys/rump/dev/lib/libusb/opt/opt_usbverbose.h: delete
sys/sys/mbuf.h: netbsd-7-nhusb
usr.sbin/usbdevs/usbdevs.8: netbsd-7-nhusb
usr.sbin/usbdevs/usbdevs.c: netbsd-7-nhusb
Merge netbsd-7-nhusb:
- API / infrastructure changes to support memory management changes.
- Memory management improvements and bug fixes.
- HCDs should now be MP safe
- conversion to KERNHIST based debug
- FS/LS isoc support on ehci(4).
- conversion to kmem(9)
- Some USB 3 support - mostly from Takahiro HAYASHI (t-hash).
- interrupt transfers now get proper DMA operations
- general bug fixes
- kern/48308
- uhub status notification improvements
- umass(4) probe fix (applied to HEAD already)
- ohci(4) short transfer fix
- Change the SOFTINT level from NET to SERIAL for the USB softint handler.
This gives the callback a chance of running when another softint handler
at SOFTINT_NET has blocked holding a lock, e.g. softnet_lock and most of
the network stack.
- kern/49065 - ifconfig tun0 ... sequence locks up system / lockup:
softnet_lock held across usb xfr
- kern/50491 - unkillable wait in usbd_transfer while using usmsc0
on raspberry pi 2
- kern/51395 - USB Ethernet makes xhci hang
- Various improvements to slhci(4)
- Various improvements to dwc2(4)
 1.96.2.3  09-Jul-2016  skrll Sync with HEAD
 1.96.2.2  05-Dec-2014  skrll KNF. Remove ( ) from return statements.
 1.96.2.1  30-Nov-2014  skrll Use C99 types. u_int{8,16,32,64}_t to uint{8,16,32,64}_t.

No functional change.
 1.99.10.1  02-Nov-2017  snj Pull up following revision(s) (requested by pgoyette in ticket #335):
share/man/man9/kernhist.9: 1.5-1.8
sys/arch/acorn26/acorn26/pmap.c: 1.39
sys/arch/arm/arm32/fault.c: 1.105 via patch
sys/arch/arm/arm32/pmap.c: 1.350, 1.359
sys/arch/arm/broadcom/bcm2835_bsc.c: 1.7
sys/arch/arm/omap/if_cpsw.c: 1.20
sys/arch/arm/omap/tiotg.c: 1.7
sys/arch/evbarm/conf/RPI2_INSTALL: 1.3
sys/dev/ic/sl811hs.c: 1.98
sys/dev/usb/ehci.c: 1.256
sys/dev/usb/if_axe.c: 1.83
sys/dev/usb/motg.c: 1.18
sys/dev/usb/ohci.c: 1.274
sys/dev/usb/ucom.c: 1.119
sys/dev/usb/uhci.c: 1.277
sys/dev/usb/uhub.c: 1.137
sys/dev/usb/umass.c: 1.160-1.162
sys/dev/usb/umass_quirks.c: 1.100
sys/dev/usb/umass_scsipi.c: 1.55
sys/dev/usb/usb.c: 1.168
sys/dev/usb/usb_mem.c: 1.70
sys/dev/usb/usb_subr.c: 1.221
sys/dev/usb/usbdi.c: 1.175
sys/dev/usb/usbdi_util.c: 1.67-1.70
sys/dev/usb/usbroothub.c: 1.3
sys/dev/usb/xhci.c: 1.75
sys/external/bsd/drm2/dist/drm/i915/i915_gem.c: 1.34
sys/kern/kern_history.c: 1.15
sys/kern/kern_xxx.c: 1.74
sys/kern/vfs_bio.c: 1.275-1.276
sys/miscfs/genfs/genfs_io.c: 1.71
sys/sys/kernhist.h: 1.21
sys/ufs/ffs/ffs_balloc.c: 1.63
sys/ufs/lfs/lfs_vfsops.c: 1.361
sys/ufs/lfs/ulfs_inode.c: 1.21
sys/ufs/lfs/ulfs_vnops.c: 1.52
sys/ufs/ufs/ufs_inode.c: 1.102
sys/ufs/ufs/ufs_vnops.c: 1.239
sys/uvm/pmap/pmap.c: 1.37-1.39
sys/uvm/pmap/pmap_tlb.c: 1.22
sys/uvm/uvm_amap.c: 1.108
sys/uvm/uvm_anon.c: 1.64
sys/uvm/uvm_aobj.c: 1.126
sys/uvm/uvm_bio.c: 1.91
sys/uvm/uvm_device.c: 1.66
sys/uvm/uvm_fault.c: 1.201
sys/uvm/uvm_km.c: 1.144
sys/uvm/uvm_loan.c: 1.85
sys/uvm/uvm_map.c: 1.353
sys/uvm/uvm_page.c: 1.194
sys/uvm/uvm_pager.c: 1.111
sys/uvm/uvm_pdaemon.c: 1.109
sys/uvm/uvm_swap.c: 1.175
sys/uvm/uvm_vnode.c: 1.103
usr.bin/vmstat/vmstat.c: 1.219
Reorder to test for null before null deref in debug code
--
Reorder to test for null before null deref in debug code
--
KNF
--
No need for '\n' in UVMHIST_LOG
--
normalise a BIOHIST log message
--
Update the kernhist(9) kernel history code to address issues identified
in PR kern/52639, as well as some general cleaning-up...
(As proposed on tech-kern@ with additional changes and enhancements.)
Details of changes:
* All history arguments are now stored as uintmax_t values[1], both in
the kernel and in the structures used for exporting the history data
to userland via sysctl(9). This avoids problems on some architectures
where passing a 64-bit (or larger) value to printf(3) can cause it to
process the value as multiple arguments. (This can be particularly
problematic when printf()'s format string is not a literal, since in
that case the compiler cannot know how large each argument should be.)
* Update the data structures used for exporting kernel history data to
include a version number as well as the length of history arguments.
* All [2] existing users of kernhist(9) have had their format strings
updated. Each format specifier now includes an explicit length
modifier 'j' to refer to numeric values of the size of uintmax_t.
* All [2] existing users of kernhist(9) have had their format strings
updated to replace uses of "%p" with "%#jx", and the pointer
arguments are now cast to (uintptr_t) before being subsequently cast
to (uintmax_t). This is needed to avoid compiler warnings about
casting "pointer to integer of a different size."
* All [2] existing users of kernhist(9) have had instances of "%s" or
"%c" format strings replaced with numeric formats; several instances
of mis-match between format string and argument list have been fixed.
* vmstat(1) has been modified to handle the new size of arguments in the
history data as exported by sysctl(9).
* vmstat(1) now provides a warning message if the history requested with
the -u option does not exist (previously, this condition was silently
ignored, with only a single blank line being printed).
* vmstat(1) now checks the version and argument length included in the
data exported via sysctl(9) and exits if they do not match the values
with which vmstat was built.
* The kernhist(9) man-page has been updated to note the additional
requirements imposed on the format strings, along with several other
minor changes and enhancements.
[1] It would have been possible to use an explicit length (for example,
uint64_t) for the history arguments. But that would require another
"rototill" of all the users in the future when we add support for an
architecture that supports a larger size. Also, the printf(3)
format
specifiers for explicitly-sized values, such as "%"PRIu64, are much
more verbose (and less aesthetically appealing, IMHO) than simply
using "%ju".
[2] I've tried very hard to find "all [the] existing users of
kernhist(9)"
but it is possible that I've missed some of them. I would be glad
to
update any stragglers that anyone identifies.
--
For some reason this single kernel seems to have outgrown its declared
size as a result of the kernhist(9) changes. Bump the size.
XXX The amount of increase may be excessive - anyone with more detailed
XXX knowledge please feel free to further adjust the value
appropriately.
--
Misssed one cast of pointer --> uintptr_t in previous kernhist(9) commit
--
And yet another one. :(
--
Use correct mark-up for NetBSD version.
--
More improvements in grammar and readability.
--
Remove a stray '"' (obvious typo) and add a couple of casts that are
probably needed.
--
And replace an instance of "%p" conversion with "%#jx"
--
Whitespace fix. Give Bl tag table a width. Fix Xr.
 1.100.16.1  20-Apr-2020  bouyer Sync with HEAD
 1.100.4.1  21-Apr-2020  martin Sync with HEAD

RSS XML Feed