Patch-ID# 115554-26


Download this patch from My Oracle Support

Your use of the firmware, software and any other materials contained in this update is subject to My Oracle Support Terms of Use, which may be viewed at My Oracle Support.
For further information on patching best practices and resources, please see the following links:
Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.

Keywords: security audio sunblade framework wheel mouse usb serial audit enhancement
Synopsis: SunOS 5.9_x86: USB Drivers and Framework Patch
Date: Jun/22/2011


Install Requirements: After installing this patch on an active boot environment, the system will be in a potentially inconsistent state until a reconfigure reboot is performed. Unless otherwise specified in the Special Install Instructions below, it is normally safe to apply further patches prior to initiating the reboot due to the relatively small footprint of the patch utilities. Normal operations must not be resumed until after the reconfigure reboot is performed.

Solaris Release: 9_x86

SunOS Release: 5.9_x86

Unbundled Product:

Unbundled Release:

Xref: This patch available for SPARC as patch 115553

Topic: SunOS 5.9_x86: USB Drivers and Framework Patch

Relevant Architectures: i386

Bugs fixed with this patch:

Sun CR # Bug #
410877514954196
423776414988522
435442715032262
440240015048903
441954015054422
450740815080711
463115115095277
464735815099087
465578915100957
466084615102483
466230015102953
466581115103735
470250115111804
470293015111908
470624415112783
470743715113101
471723815115479
471843715115749
472399315117216
473503115120165
473546515120266
473719415120747
474067715121820
475467915126013
475759015126888
476571815129276
476957715130603
477634015132690
478128315134206
478229215134486
478385515134996
478591615135603
478678615135873
478831515136324
479067815136998
479861915139773
480002915140306
480012315140341
480104615140687
480486015141991
481023015143714
481150115144167
481175815144244
481293515144649
481650915145731
482405415148161
482476315148406
482617115148819
482897215149586
483414315151228
483629815151964
483660615152038
483823515152602
484148915153722
484429615154449
484517915154695
484793615155532
484829515155626
485286315156894
485462915157448
485844315158609
486053415159227
486075315159275
486559215160543
486916615161553
486932615161619
486936215161628
486939615161641
487581815163308
487623415163445
487690015163638
487973815164543
487974115164545
487979915164567
488022715164698
488157615165060
488157715165063
488313815165535
488944115167423
488949915167438
488960015167483
488960615167487
489105415167857
489105815167862
489160415168047
489383415168713
489447515168937
489808315170197
489817415170221
489817615170222
489885215170441
489955115170666
490038315170915
490090015171042
490846915173253
491434115174762
491600915175259
491664315175449
491684815175521
491771115175765
491924815176133
491925115176134
491926015176135
492065515176506
492268315177039
492306915177136
492754315178390
492764815178427
493533515180539
493923715181518
494009215181743
494108215181970
494514115182897
494685915183344
494927015184022
495007315184206
495123215184553
496125715187426
496767315189314
497151015190324
497159215190358
497186915190451
497658315191661
497679215191722
498837915195033
499041115195586
499311115196226
499470015196664
499559215196915
500105815197984
500376415198424
500644815199119
500849315199763
501798315202639
501821815202706
501823515202709
501874215202814
502107515203489
502108315203492
502179515203649
502180415203656
502826315205398
502839815205449
503085115206175
503263115206744
503470315207448
503706715208226
503914815208859
504495915210573
504507615210591
504771215211348
504915015211760
504921515211776
505319915212828
505828315214253
506695215216460
507917815220391
508651315222822
510154315227304
510206015227510
510784815229457
510900715229797
617652615231259
619761115237362
620125715238507
623092515250016
623750015252738
626164215262355
626771815264791
627310615266844
628755015272447
632296615286720
633713115292188
633804615292557
634069915293627
635871815301130
637086015306199
639000415314908
641247615324939
641496715325938
642358615329438
643752915335191
644536415338660
645176115341531
645687615344142
658457115412045
701538215693994
702199315698936


Changes incorporated in this version: 7015382 7021993

Patches accumulated and obsoleted by this patch: 115003-02 115339-01 115558-01 116066-03 117197-01 117199-02 117383-01

Patches which conflict with this patch:

Patches required with this patch: 117172-17 117417-01 (or greater)

Obsoleted by:

Files included with this patch:

/kernel/drv/hid
/kernel/drv/scsa2usb
/kernel/drv/scsa2usb.conf
/kernel/drv/usb_ac
/kernel/drv/usb_as
/kernel/drv/usba10_ehci
/kernel/drv/usba10_ehci.conf
/kernel/drv/usba10_hid
/kernel/drv/usba10_hid.conf
/kernel/drv/usba10_hubd
/kernel/drv/usba10_hubd.conf
/kernel/drv/usba10_ohci
/kernel/drv/usba10_ohci.conf
/kernel/drv/usba10_scsa2usb
/kernel/drv/usba10_scsa2usb.conf
/kernel/drv/usba10_ugen
/kernel/drv/usba10_ugen.conf
/kernel/drv/usba10_uhci
/kernel/drv/usba10_uhci.conf
/kernel/drv/usba10_usb_ac
/kernel/drv/usba10_usb_ac.conf
/kernel/drv/usba10_usb_as
/kernel/drv/usba10_usb_as.conf
/kernel/drv/usba10_usb_mid
/kernel/drv/usba10_usb_mid.conf
/kernel/drv/usba10_usbprn
/kernel/drv/usba10_usbprn.conf
/kernel/drv/usba10_usbser_edge
/kernel/drv/usba10_usbser_edge.conf
/kernel/misc/hidparser
/kernel/misc/kbtrans
/kernel/misc/usba
/kernel/misc/usba10
/kernel/misc/usba10_hidparser
/kernel/misc/usba10_usbser
/kernel/strmod/usb_ah
/kernel/strmod/usb_ah1
/kernel/strmod/usbkb1
/kernel/strmod/usbkbm
/kernel/strmod/usbms
/kernel/strmod/usbms1
/usr/include/sys/cpr.h
/usr/include/sys/msreg.h
/usr/include/sys/usb/clients/hid/hid.h
/usr/include/sys/usb/clients/ugen/usb_ugen.h
/usr/include/sys/vuid_event.h
/usr/include/sys/vuid_wheel.h
/usr/lib/abi/abi_usb.so.1
/usr/lib/adb/ohci_polled
/usr/lib/adb/ohci_state
/usr/lib/adb/usbkbm_state
/usr/lib/cfgadm/usb.so.1
/usr/lib/mdb/kvm/usba.so
/usr/share/lib/keytables/type_6/japan
/usr/share/lib/keytables/type_6/layout_0f
/usr/share/lib/keytables/type_6/layout_10f

Problem Description:

7015382 USB problems with long descriptors
7021993 ehci_compute_high_speed_bandwidth() should validate endpoint wMaxPacketSize
 
(from 115554-25)
 
6584571 VUIDGWHEELCOUNT ioctl panics 64bit systems with invalid address argument
 
(from 115554-24)
 
6414967 hid_qreply_error calls freemsg on non-mblk
 
(from 115554-23)
 
6358718 keyboard unusable after halting system if connected to front USB + output/input set to screen/KB
6390004 combination USB keyboard and USB hub is not recognized as keyboard
 
(from 115554-22)
 
5107848 scsa2usb: panic for WRITE command without data buffer
6197611 panic in scsa2usb_rw_transport while burning DVD
 
(from 115554-21)
 
4108775 the hub driver needs to do power budgeting
5044959 scheduling of queued request on control pipe not working
5109007 assertion failed: timeout != usba_drain_timeout in usba_drain_cbs
6230925 the hub driver handles power operating mode incorrectly
6267718 the hub driver should print out warning to syslog when the local power is lost
6340699 NULL pointer reference in usba module causes panic
6370860 OS USB Error: "Connecting device on port 2 failed" seen during power and reboot cycles
6412476 front USB hub initializes to USB 1.x full speed on OHCI rather than USB 2.0 hi speed on EHCI
6423586 Uli M1575 USB OHCI trn_oor panic
6445364 Chicago_S9U9: front USB hub goes bad after a CPR cycle
6451761 Chicago_S9U9: hub driver get configuration descriptor should retry before doing drastic cleanup
6456876 need to fix warlock for USB in S9
 
(from 115554-20)
 
6287550 Chicago (Sun Ultra 45) P0.1 ohci_ed_pool_addr assertion failure with new M1575
6437529 S9 USB support for Boston (Sun Fire V445), Seattle (Sun Fire V215/V245), and Chicago (Sun Ultra 45 Work Station) platforms
4951232 hubd: MAX_PORTS prevents ports from being utilized on hardware with >7 ports
5047712 ALi EHCI+OHCI USB 2.0 PCI controller is not usable
6201257 usb007 does not enumerate on ehci but does on ohci
6337131 ehci_detach panics debug kernel with a failed assertion with ALi USB2.0 PCI card
6322966 ehci: the data may overflow
6261642 careless use of delay() causes enumeration failures if hires_tick = 1 is set
4754679 hubd_resume_port: incorrectly clearing feature CFS_C_PORT_CONNECTION
4811501 hudb: kill OBP children before enumeration starts
6338046 Sun Type 6 Japanese keyboard and other Japanese keyboards should be recognized
 
(from 115554-19)
 
6237500 upgrade (Solaris 9 to Solaris 10) of SUNWusb not working properly due to broken preremove script
6273106 patch 115553-18 USB Drivers and Framework Patch missing required dependency
 
(from 115554-18)
 
6176526 c-kermit test doesn't exit smoothly while running test on old EdgePort device
5102060 no driver for EdgePort
5053199 system becomes unusable upon disconnecting an active EdgePort device
 
(from 115554-17)
 
4647358 scsa2usb: USB floppy format fails on x86
4707437 remove USB dump support
4717238 USB floppy drives get accessed frequently for no reason
4740677 GNOME2.0: media password verification fails to match password exactly
4848295 SCSA2USB_ATTRS_TUR is ignored
4891604 scsa2usb.conf: new record for suppressing mode sense requests
4893834 usb_free_log_handle() not called if usb_register_client() fails
4898083 scsa2usb: doesn't create /dev/dsk node for Addonics UDD device
4898852 scsa2usb: do not bp_mapin if pkt != NULL
4899551 scsa2usb: override interface class if != 8
4914341 vold cannot mount USB floppies
4919251 scsa2usb_detach fails detach unnecessarily
4917711 nutvs test hangs on enws with Seagate tape drive
4919260 request referenced after freeing
4927543 doorlock handling fails on Sony USB 2.0 flash drive
4940092 USB client drivers should use standard pm functions to raise/lower power
4941082 scsa2usb: virtual geometry is too small
4949270 USB Trek Flash drive hangs at mount or mkfs
4967673 scsa2usb: needs to be taught about mass storage devices that don't support inquiry
4971510 USB is spamming syslog
4976583 scsa2usb: has minor nodes but does not implement getinfo(9E)
4995592 scsa2usb: should give console message when device has been reconnected
5006448 vold cannot mount write-protected USB floppies
5028263 sanborn cruzer returns incorrect residues
5034703 cannot write vtoc to USB ZIP drive
5049150 scsa2usb: formatting DVD+RW media hangs
5049215 scsa2usb: error recovery
5066952 improve handling of memory sticks
5086513 USB ZIP drive doesn't accept passwd R/W protection
5101543 scsa2usb2: scsa2usb attributes modified: 0xfffe
5079178 USB CD drive doesn't respond to eject request
 
(from 115554-16)
 
        This revision cleans up the unnecessary patch dependency.
 
(from 115554-15)
 
        This revision accumulates 115003-02 to resolve the metacluster problem.
 
(from 115554-14)
 
4950073 Emkay USB head set does not work
 
(from 115554-13)
 
5021083 EdgePort device doesn't fully recover from low power mode
5039148 panic while detaching TI EdgePort device
5045076 CDE can't start after backing out patch 115553-06
5058283 usba10_ohci not loaded on LX50 after installing SUNWusb package
 
(from 115554-12)
 
        This revision updates postinstall and preremove.
 
(from 115554-11)
 
4922683 ehci requires kstats for observability
4946859 amsrc2 stereo upsampling swaps right and left channels
5017983 ehci does not detect that interrupts are not working at attach time
5018218 EHCI needs a more reliable way to halt a QH
5018235 HUBDI has an invalid ASSERT
5021075 F1+A doesn't work reliably
5032631 assertion failed: mp->b_next == NULL && mp->b_prev == NULL
4990411 usba10_uhci is not available for Solaris 9 4/04
5030851 ehci needs to be attached before uhci on VIA chips
5028398 system panics on exit from OS after arriving at the prom-level
5037067 usb_lookup_ep_data needs to handle USB_EP_DIR_DONT_CARE
 
(from 115554-10)
 
4237764 detach/attach of keyboard causes layout code to be reset on non-self-ID keyboard
4402400 USB mouse driver should support more than 3 buttons
4718437 USB wheel mouse support needed for Pro/E
4880227 USB keyboard not operating properly when plugged in after system is booted
4916643 hidparser update required for S10
4971592 using Logitech wireless USB keyboard leads to unwanted repetition of characters
4993111 hid driver doesn't warlock
5008493 L1-A hangs
4900383 support for TI-based Edgeports
4988379 Edgeport/1 still not working on S10-51
4631151 support USB 1.1 or low/full speed USB devices behind USB 2.0 or high speed hub
4660846 ohci/ehci: Fails to recover gracefully if resources are low
4702930 ehci driver needs to eliminate dummy QH
4816509 usbser uses obsolete DDI interfaces
4826171 minor memory leak
4891054 make sure intr bits cleared before returning from ISR in ohci polled mode
4891058 needs to save allocated bandwidth information as per actual frame number
4900900 ohci/ehci doesn't handle request with multiple TDs under short xfer condition
4908469 do not include prom_isa.h for ohci files
4919248 ohci_save_data_toggle() should initialize pp_error to USB_CR_OK
4923069 usbser_edge is far too stack-hungry for a driver
4927648 FULL/LOW Interrupt devices behind 2.0 hubs cause HW/SW collision
4939237 usb_check_same_device() needs a check for same vendor id and same product id
4961257 explore removal of soft interrupts for Tx/Rx callbacks
4976792 ehci transaction errors (xacterr) and retries
4994700 usba: need a way to serialize callbacks for devices
5018742 addition of usb_lookup_ep_data to S9 usba10 framework
4869326 hcdi.c: use-after-free, deref of null pointer
5001058 hot-plugging a USB mouse can lead to a storm of random mouse events
 
(from 115554-09)
 
5021795 ohci must cleanly take control of HC from BIOS
5021804 CPU startup hangs on Stinger 2p with BIOS 1.26.07
 
(from 115554-08)
 
4860753 CPR resume failure with active USB devices
5003764 USB panics on CPR resume
 
(from 115554-07)
 
        This revision addresses a packaging issue found during testing.
 
(from 115554-06)
 
4971869 ohci needed for S9U6 for Stinger 2P
 
(from 115554-05)
 
4662300 incorrect sample rate compaction code in usb_as
4935335 cfgadm_usb: misleading error message - library error
 
(from 115554-04)
 
        This revision accumulates S9U6 feature point patch 116066-03.
 
(from 115554-03)
 
4920655 pipe_reset needed in hubd_create_child if 1st device desc read fails
 
(from 115554-02)
 
4916009 combining two USB driver related patches 115554-01 and 115558-01
 
(from 115554-01)
 
4854629 mouse rev 105 does not respond to first get hid descriptor request
4800123 Netra AC200 USB audio does not work reliably
4852863 USB audio does not correctly register full duplex devices with mixer
 
(from 115558-01)
 
4847936 USB keyboard connected via Lightwave VDE not recognized with Solaris 9
4801046 suspend ohci controller during CPR suspend if USB keyboard is not connected
 
(from 115339-01)
 
4655789 key up events lost when keys held down on multiple keyboards at once
 
(from 116066-03)
 
4945141 need to create an x86 patch for libdevice
 
(from 116066-02)
 
4828972 add support for USB tape
4894475 SCMD_READ_FORMAT_CAP should be implemented for SCSI subclass devices
4916848 usb_ugen.h should be added to i386 exception list for Solaris 9
 
(from 116066-01)
 
4419540 USB serial driver support required on Solaris
4507408 USB device hotplug causes crash during resume phase
4665811 Solaris 9 fails to make USB mass storage devices available to system
4702501 USB warlock issues on the Fiesta platform
4706244 Enchilada system panic: BAD TRAP: type=31 in USB module
4723993 scsa2usb: misbehaving device can cause process to hang
4735031 dead code in scsa2usb
4735465 WARNING: (usba10_ohci0): Connecting device on port 2 failed
4737194 ohci/ehci drivers need to make sure intr bits cleared before returning from ISR
4757590 minor lint fix and cleanup
4765718 need to press STOP key twice for L1-A on Enchilada and Taco systems
4769577 explore if qenable can be eliminated from USB audio drivers
4776340 ON support for Enchilada and Taco workstations
4781283 ddi_dma_sync is not used consistently in ohci/ehci drivers
4782292 USB: key-stuck symptom when pressing key after FB has been power-managed
4783855 cfgadm_usb: panic after configure of non-responsive USB device
4785916 ugen doesn't protect from bogus control message lengths
4786786 ugen returns EIO on bulk write out endpoints for a USB Canon Scanner N670U
4788315 ohci panic due to NULL pointer dereference in ohci_sendup_td_message()
4790678 "disk not responding to selection" when unplugging USB easy disk
4798619 enumeration fails if we can't get string descriptors
4800029 workaround for 4788884 (PCI SERR seen while doing a CPR)
4804860 usb_as: base sample rate should be checked before reducing sr list
4810230 scsa2usb: waitQ length should be limited
4811758 ehci panic with datafab high speed memory stick device during hotplug test
4812935 add support for ELO touch screen (Heidelberg)
4824054 ohci/ehci doesn't wake up the thread waiting for done td under error condition
4824763 isoc_pkt_status field in usb_isoc_pkt_descr_t should be of type usb_cr_t
4834143 ugen must validate wLength to buf b_bcount
4836298 non-exclusive endpoint opens not allowed
4836606 support Interrupt OUT endpoint
4838235 ugen: poll on devstat doesn't block
4841489 ugen: incorrect buffer full status on disconnect
4844296 ohci driver susceptible to spurious interrupt panics during attach
4845179 hubd needs to wait for PowerOn ToPowerGood time after powering on an USB port
4858443 the min low speed poll interval is enforced on Solaris but not on Linux/Windows
4860534 leaking: QTD exhaustion
4865592 ugen's lowering power causes UNAVAILABLE state without state change notification
4869166 wrong macro used to change QTD structure
4869362 ugen.c: dereference precedes check
4869396 interrupt OUT implementation is incomplete
4875818 periodic list is updated incorrectly while adding/deleting interrupt endpoints
4876234 transfer all USB ports control to OHCI host controller on UE error
4876900 change intr_pkt_length to intr_len since this field represents request length
4879738 fix for bugid: 4854629 needed for usba1.0 framework on S9U6
4879741 fix for bugid: 4847936 needed for usba1.0 framework on S9U6
4879799 pm_set_power definition needs update in warlock file
4881576 control transfer length is calculated incorrectly
4881577 ehci doesn't handle short transfer condition correctly
4883138 ohci/ehci doesn't support transfer timeout for interrupt out requests
4889441 WARNING: /../pci@3/usb@8 (usba10_ohci2): Connecting device on port 3 failed
4889499 USB_KYDB: WARNING: Device keyboard0 failed to power up on s9port_02
4889600 ugen: check for valid bp missing in ugen_epx_intr_OUT_req_cb
4889606 ohci: never return cr != 0 for completed isoch td
4898174 fix for bugid 4800123 needed for usba1.0 framework on S9U6
4898176 fix for bugid 4852863 needed for usba1.0 framework on S9U6
 
(from 117199-02)
 
5001058 hot-plugging a USB mouse can lead to a storm of random mouse events
 
(from 117199-01)
 
4237764 detach/attach of keyboard causes layout code to be reset on non-self-ID keyboard
4402400 USB mouse driver should support more than 3 buttons
4718437 USB wheel mouse support needed for Pro/E
4880227 USB keyboard is not operating properly when plugged in after system is booted
4916643 hidparser update required
4971592 using Logitech wireless USB keyboard leads to unwanted repetition of characters
4993111 hid driver doesn't warlock
5008493 L1-A hangs
 
(from 117383-01)
 
4900383 support for TI-based Edgeports
4988379 Edgeport/1 still not working
4631151 support USB 1.1 or low/full speed USB devices behind USB 2.0 or high speed hub
4660846 ohci/ehci: fails to recover gracefully if resources are low
4702930 ehci driver needs to eliminate dummy QH
4816509 usbser uses obsolete DDI interfaces
4826171 minor memory leak
4891054 make sure intr bits cleared before returning from ISR in ohci polled mode
4891058 need to save allocated bandwidth information as per actual frame number
4900900 ohci/ehci doesn't handle request with multiple TDs under short xfer condition
4908469 do not include prom_isa.h for ohci files
4919248 ohci_save_data_toggle() should initialize pp_error to USB_CR_OK
4923069 usbser_edge is far too stack-hungry for a driver
4927648 FULL/LOW Interrupt devices behind 2.0 hubs cause HW/SW collision
4939237 usb_check_same_device() needs a check for same vendor id and same product id
4961257 explore removal of soft interrupts for Tx/Rx callbacks
4976792 ehci transaction errors (xacterr) and retries
4994700 usba: need a way to serialize callbacks for devices
5018742 addition of usb_lookup_ep_data to S9 usba10 framework
4869326 hcdi.c: use-after-free, deref of null pointer
 
(from 115003-02)
 
        This revision accumulates S9U7 feature point patch 117197-01.
 
(from 115003-01)
 
4354427 audit hooks for auditing enter/exit to prom/debugger incomplete
 
(from 117197-01)
 
4880227 USB keyboard is not operating properly when plugged in after system is booted


Patch Installation Instructions:
--------------------------------
 
Please refer to the man pages for instructions on using 'patchadd'
and 'patchrm' commands provided with Solaris.
 
The following example installs a patch to a standalone machine:
 
       example# patchadd /var/spool/patch/123456-07
 
The following example removes a patch from a standalone system:
 
       example# patchrm 123456-07
 
For additional examples please see the appropriate man pages. Any
other special or non-generic installation instructions should be
described below as special instructions.


Special Install Instructions:
-----------------------------
 
NOTE 1:  Reconfigure the system (boot -r) immediately after patch installation.
 
NOTE 2:  In order to get the complete support for Enchilada and Taco
         Intel based workstations, please install the following patches:
 
         116473-01 (or greater)  rmformat patch
         116475-01 (or greater)  libsmedia patch
         116477-01 (or greater)  pcic driver patch
         114720-02 (or greater)  kernel/misc/mixer patch
 
NOTE 3:  If you are planning to use USB floppy, you MUST install the
         following patches:
 
         116473-01 (or greater)  rmformat patch
         116475-01 (or greater)  libsmedia patch
 
NOTE 4:  To get the complete fix for bug 4945141 (Need to create an x86
         patch for libdevice) please also install the following patch:
 
         116487-01 (or greater)  libdevice patch
 
NOTE 5:  Please check the USB Dual Framework Guide for USB Dual Framework
         description, usage, and configuration tips.  The guide is available
         at the following URL:
 
                   http://www.sun.com/desktop/whitepapers.html
 
NOTE 6:  To get the complete RFE 4718437 (wheel mouse support needed
         for Pro/E), please install the following patches:
 
         117419-01 (or greater)  vuid patch
         112786-25 (or greater)  Xsun patch
 
NOTE 7:  To get the complete fix for Audit Enhancement feature, please
         also install the following patch:
 
         114929-02 (or greater)  C2 patch


NOTE: The list of 'patches required with this patch' (above) has been
modified from the list specified at patch creation time. The reason for
the modification is that one or more of the required patches was
either never released or withdrawn after its release. The following
substitutions (which are guaranteed to satisfy the original requirements)
were therefore made:

117172-17 replaces 112234-12




README -- Last modified date: Saturday, November 10, 2012