Patch-ID# 148888-05


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 ip libelf.so libld.so dladm rdsv3 ibcm ibd ibdm pcie vpci mac libumem.so ufs ibmf ibtl
Synopsis: SunOS 5.10: kernel patch
Date: Jun/28/2013


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.
Use Single User Mode (run level S) when installing this patch on an active boot environment. An alternative may be specified in the Special Install Instructions.

Solaris Release: 10

SunOS Release: 5.10

Unbundled Product:

Unbundled Release:

Xref: This patch available for x86 as patch 148889

Topic: SunOS 5.10: kernel patch
	***********************************************************
	NOTE: This patch may contain one or more OEM-specific platform ports.
	      See the appropriate OEM_NOTES file within the patch for
	      information specific to these platforms.
	      DO NOT INSTALL this patch on an OEM system if a corresponding
	      OEM_NOTES file is not present (or is present, but instructs not
	      to install the patch), unless the OEM vendor directs otherwise.
	***********************************************************


Relevant Architectures: sparc sparc.sun4u sparc.sun4v

Bugs fixed with this patch:

Sun CR # Bug #
646888515349737
647083215350591
651004915370332
670924515484377
683013215556084
686566415578728
693336115628336
699364515676271
699507115677428
699595815678120
701134715690939
701237215691703
701695115695137
701749215695559
702510315701001
702821315703204
703770215710181
704297215714189
704603815716458
704850415718245
705486015722215
705630415723117
705804015723935
705942315724686
706060115725252
706334215726674
707862515735284
708352415738030
709620115744845
709798115746083
710018115747893
710373815750113
711485915756925
711797115758906
712083015760658
712256715761942
712879315765489
713465315769069
714137815769826
714501415772517
715697715781679
715889915783418
716138115785520
716182515785807
716507115788521
716732915790441
717078015793305
717294415795021
717302915795084
717353715795471
717404915795832
717584315797196
717679315798027
717719215798365
717857715799411
718122515801602
718281315802719
718373315803516
718388815803635
718517715804771
719134015809901
719179015810326
719242415810882
719271315811067
719478815812880
719616615814006
719694515814727
720230115819819
720234815819872
720357215821350
720385115821692
720495115823081
720538515823625
720544615823706
720598915824381
720630615824814
720682015825558
223210715825571
15840018
15865335
15890365
15944592
15992305
16010708
16011581
16019706
16054425
16072390
16090197
16222774
16225323
16270463
16271360
16322922
16328253
16338465
16389244
16499340
16887127
675161715510298
675201415510494
684928615568236
700943415689215
701478315693542
701580115694298
703646115709224
703906415711291
708906315740944
709959015747488
712951315766025
715208715777699
717148215793898


Changes incorporated in this version: 16887127

Patches accumulated and obsoleted by this patch: 143513-02 143581-04 148067-02 148219-02 148328-03 148410-01 148415-02 148983-01 149161-01 150027-01 150110-01 150117-01 150153-01 150159-01 150167-01 150182-01

Patches which conflict with this patch:

Patches required with this patch: 118833-36 120011-14 125503-02 126540-02 127127-11 137137-09 139555-08 141444-09 142909-17 144500-19 147147-26 150435-01 (or greater)

Obsoleted by:

Files included with this patch:

/kernel/drv/mcxe.conf
/kernel/drv/mcxnex.conf
/kernel/drv/sparcv9/daplt
/kernel/drv/sparcv9/devinfo
/kernel/drv/sparcv9/dld
/kernel/drv/sparcv9/hermon
/kernel/drv/sparcv9/ib
/kernel/drv/sparcv9/ibd
/kernel/drv/sparcv9/ip
/kernel/drv/sparcv9/mcxe
/kernel/drv/sparcv9/mcxnex
/kernel/drv/sparcv9/rdsv3
/kernel/drv/sparcv9/rpcib
/kernel/drv/sparcv9/scsi_vhci
/kernel/drv/sparcv9/tavor
/kernel/fs/sparcv9/procfs
/kernel/fs/sparcv9/ufs
/kernel/kmdb/sparcv9/genunix
/kernel/kmdb/sparcv9/mpt
/kernel/kmdb/sparcv9/mpt_sas
/kernel/kmdb/sparcv9/mpxio
/kernel/misc/sparcv9/dls
/kernel/misc/sparcv9/ibcm
/kernel/misc/sparcv9/ibdm
/kernel/misc/sparcv9/ibmf
/kernel/misc/sparcv9/ibtl
/kernel/misc/sparcv9/mac
/kernel/misc/sparcv9/pcicfg
/kernel/misc/sparcv9/sol_ofs
/kernel/strmod/sparcv9/ip
/kernel/sys/sparcv9/kaio
/lib/ld.so.1
/lib/libdladm.so.1
/lib/libelf.so.1
/lib/libld.so.4
/lib/liblddbg.so.4
/lib/libumem.so.1
/lib/llib-lelf
/lib/llib-lelf.ln
/lib/sparcv9/ld.so.1
/lib/sparcv9/libelf.so.1
/lib/sparcv9/libld.so.4
/lib/sparcv9/liblddbg.so.4
/lib/sparcv9/libumem.so.1
/lib/sparcv9/llib-lelf.ln
/platform/SUNW,SPARC-Enterprise/kernel/sparcv9/unix
/platform/SUNW,Sun-Fire-15000/kernel/sparcv9/unix
/platform/SUNW,Sun-Fire/kernel/sparcv9/unix
/platform/SUNW,Ultra-Enterprise-10000/kernel/sparcv9/unix
/platform/sun4u/kernel/kmdb/sparcv9/unix
/platform/sun4u/kernel/misc/sparcv9/forthdebug
/platform/sun4u/kernel/misc/sparcv9/kmdbmod
/platform/sun4u/kernel/misc/sparcv9/pcie
/platform/sun4u/kernel/sparcv9/genunix
/platform/sun4u/kernel/sparcv9/unix
/platform/sun4v/kernel/cpu/sparcv9/SPARC-M4
/platform/sun4v/kernel/cpu/sparcv9/SPARC-T3
/platform/sun4v/kernel/cpu/sparcv9/SPARC-T4
/platform/sun4v/kernel/cpu/sparcv9/SPARC-T5
/platform/sun4v/kernel/cpu/sparcv9/SPARC64-X
/platform/sun4v/kernel/cpu/sparcv9/SUNW,UltraSPARC-T1
/platform/sun4v/kernel/cpu/sparcv9/SUNW,UltraSPARC-T2
/platform/sun4v/kernel/cpu/sparcv9/SUNW,UltraSPARC-T2+
/platform/sun4v/kernel/cpu/sparcv9/generic
/platform/sun4v/kernel/cpu/sparcv9/sun4v-cpu
/platform/sun4v/kernel/drv/sparcv9/vpci
/platform/sun4v/kernel/kmdb/sparcv9/unix
/platform/sun4v/kernel/misc/sparcv9/forthdebug
/platform/sun4v/kernel/misc/sparcv9/kmdbmod
/platform/sun4v/kernel/misc/sparcv9/pcicfg
/platform/sun4v/kernel/misc/sparcv9/pcie
/platform/sun4v/kernel/pcbe/sparcv9/pcbe.SPARC-T3
/platform/sun4v/kernel/pcbe/sparcv9/pcbe.SPARC-T4
/platform/sun4v/kernel/pcbe/sparcv9/pcbe.SUNW,UltraSPARC-T1
/platform/sun4v/kernel/pcbe/sparcv9/pcbe.SUNW,UltraSPARC-T2
/platform/sun4v/kernel/pcbe/sparcv9/pcbe.SUNW,UltraSPARC-T2+
/platform/sun4v/kernel/pcbe/sparcv9/pcbe.sun4v-cpu
/platform/sun4v/kernel/sparcv9/genunix
/platform/sun4v/kernel/sparcv9/unix
/sbin/dladm
/usr/bin/elfedit
/usr/bin/isainfo
/usr/bin/sparcv9/elfedit
/usr/bin/sparcv9/pargs
/usr/ccs/bin/elfdump
/usr/ccs/bin/sparcv9/elfdump
/usr/include/inet/ip_multi.h
/usr/include/sys/aio_impl.h
/usr/include/sys/auxv_SPARC.h
/usr/include/sys/ddi_impldefs.h
/usr/include/sys/devinfo_impl.h
/usr/include/sys/fs/ufs_inode.h
/usr/include/sys/hwconf.h
/usr/include/sys/ib/adapters/hermon/hermon_ioctl.h
/usr/include/sys/ib/ibtl/ibtl_types.h
/usr/include/sys/ib/mgt/ibmf/ibmf.h
/usr/include/sys/mdi_impldefs.h
/usr/include/sys/modctl.h
/usr/include/sys/pathname.h
/usr/include/sys/scsi/adapters/scsi_vhci.h
/usr/include/sys/sunddi.h
/usr/include/sys/sunmdi.h
/usr/lib/cfgadm/scsi.so.1
/usr/lib/cfgadm/sparcv9/scsi.so.1
/usr/lib/elfedit/cap.so
/usr/lib/elfedit/sparcv9/cap.so
/usr/lib/ldoms/ldmad
/usr/lib/libdiskmgt.so.1
/usr/lib/mdb/kvm/sparcv9/dls.so
/usr/lib/mdb/kvm/sparcv9/genunix.so
/usr/lib/mdb/kvm/sparcv9/intr.so
/usr/lib/mdb/kvm/sparcv9/isp.so
/usr/lib/mdb/kvm/sparcv9/md.so
/usr/lib/mdb/kvm/sparcv9/mdb_ks.so
/usr/lib/mdb/kvm/sparcv9/mpt.so
/usr/lib/mdb/kvm/sparcv9/mpt_sas.so
/usr/lib/mdb/kvm/sparcv9/mpxio.so
/usr/lib/mdb/kvm/sparcv9/mr_sas.so
/usr/lib/mdb/kvm/sparcv9/nca.so
/usr/lib/mdb/kvm/sparcv9/nfs.so
/usr/lib/mdb/kvm/sparcv9/s1394.so
/usr/lib/mdb/kvm/sparcv9/sd.so
/usr/lib/mdb/kvm/sparcv9/ssd.so
/usr/lib/mdb/kvm/sparcv9/usba.so
/usr/lib/mdb/kvm/sparcv9/zfs.so
/usr/lib/picl/plugins/libpicldevtree.so.1
/usr/lib/rcm/modules/SUNW_mpxio_rcm.so
/usr/lib/sparcv9/libdiskmgt.so.1
/usr/platform/SUNW,SPARC-Enterprise/lib/cfgadm/scsi.so.1
/usr/platform/SUNW,SPARC-Enterprise/lib/cfgadm/sparcv9/scsi.so.1
/usr/platform/sun4u/include/vm/hat_sfmmu.h
/usr/platform/sun4u/lib/mdb/kvm/sparcv9/unix.so
/usr/platform/sun4u/lib/mdb/kvm/sparcv9/wrsm.so
/usr/platform/sun4u/lib/mdb/kvm/sparcv9/wrsmd.so
/usr/platform/sun4v/include/sys/machcpuvar.h
/usr/platform/sun4v/include/vm/hat_sfmmu.h
/usr/platform/sun4v/lib/cfgadm/scsi.so.1
/usr/platform/sun4v/lib/cfgadm/sparcv9/scsi.so.1
/usr/platform/sun4v/lib/mdb/kvm/sparcv9/ldc.so
/usr/platform/sun4v/lib/mdb/kvm/sparcv9/unix.so
/usr/platform/sun4v/lib/mdb/kvm/sparcv9/vdsk.so
/usr/sbin/sparcv9/prtconf

Problem Description:

16887127 install of 148888-03 causes kaio error on reboot
 
(from 148888-04)
 
15628336 df reports free space on SVM mirror UFS filesystem that is inaccessible until sync
15714189 panic: vhci_pathinfo_offline should fail when timing out waiting for outstanding commands
15718245 panic: the path count checking inside scsi_busctl_uninitchild should be removed
15723935 hermon FMR lock contention should be reduced
15726674 p_init_type_reply member of ibt_hca_portinfo_t is never set by HCA drivers
15747893 SR-IOV support for ConnectX InfiniBand
15760658 rss address path structure broken for little-endian
15765489 buffer overrun in hermon
15772517 OFUV perftest latency spike at 128 bytes
15783418 hermon should return wc_detail value regardless of IPOK
15788521 measure receiver forward progress to avoid sending mondo timeout
15790441 panic due to an assertion in ds_drv.c
15793305 odd len argument to munmap from the runtime linker:  /platform/sun4
15795021 PCIe IOV framework should support memory sharing with root and I/O domains for IOV drivers
15797196 several Parfait issues after integration of 7153994
15798027 PCIe panic issue
15801602 deadlock between ufs_lockfs_begin_getpage() and ufs_scan_nodes() resulting in system panic
15810326 BAD TRAP: type=e (#pf Page fault) addr=0 occurred in rpcmod
15812880 sshd[1641]: error: /dev/ptmx: Not enough space
15814727 hermon is limited to only 8 minor nodes
15944592 Solaris 10 kernel panic when mounting an iSCSI LU
16222774 reproducible system panic with bad trap 0x31 in find_mbind during modctl()
16338465 readlink() on procfs can spend several seconds building a path for a.out
16389244 16222774 broke ::prtconf
16499340 Intel "fast reboot" fails with CX-2 firmware newer than 2.7.8130
 
(from 148888-03)
 
15678120 TLS, Initial Executable (IE) to Local Executable (LE) translation needs to be more flexible (x86)
15723117 TLS test case core-dumped during execution on Solaris
15738030 BAD TRAP type=31 panic when running spec2006
15758906 prstat reports inaccurate memory usage for process with shared memory
15795471 problem with library (SCTP)
15803516 Solaris SCTP drops heartbeat ACK's if fragmented
15803635 customer sees Solaris SCTP is sending SACK with invalid gap information after patching
15823706 IPsec inbound policy mismatch with link-locals and ICMP traffic
15825571 panic if SCTP rec. data chunk with wrong SSN during the initial connection establishment stage
15840018 fix for 7184971 does not handle bit 31 correctly
15992305 CPU structure access may cause memory controller overload on large configuration
16054425 wrong I/O length reported when aio reaped via event ports
16090197 getrlimit64 should return real limits for limit values exceeding ILP32 max
16322922 Athena PCBE counter names are outdated
16328253 aio_copyout_result_port() uses a buf after it is freed
 
(from 148888-02)
 
15349737 IPV6_NEXTHOP options are ignored on UDP sockets
15350591 Yosemite has reintroduced 4460375
15370332 mpathadm show different path status from CAM utility
15556084 support for EMC VPLEX virtual storage
15578728 IPV6_NEXTHOP does not work with TCP socket
15769069 poor SCTP receive side performance when SO_RCVBUF is smaller than the message being sent
15785807 acl() syscall can set errno to -1 rather than a valid error code
15799411 fix for 6263346 causing problems for some old applications
15802719 bringing down one deprecated ipif makes other deprecated ipif unpingable
15804771 outgoing HTTP packets with IP_NEXTHOP set are dropped after a few hours without traffic
15819872 TCP listen and connection hash reports use incorrect mutex
15823625 explicit failover is always reported for any non-ALUA asym devices
15825558 TPGS/ALUA Unavailable state
16072390 missing MATCH_IRE_TYPE specifier in onlink IRE lookup for IP_NEXTHOP
16225323 remove the hard coded processor name in cpustat -h
16270463 cpc_cciname() should use correct brand name for upcoming SPARC systems
16271360 change M4 CPU module name to M5
 
(from 148888-01)
 
15484377 IPMP active-active link-based Failure Detection does not send IGMP membership report after failback
15710181 too much time spent reaping sfmmu8_cache
15722215 Solaris needs to support memory errors referenced via virtual addresses (FWARC 2012/220)
15724686 HSVCINFO_UNIX_CNT is calculated incorrectly
15750113 ipmp test address should be prevented from erroneously picking as a source address of an ire
15795084 recursive mutex_enter panic happened in sfmmu_mlspl_enter()
15798365 WARNING: kstat_create('unix', 29, 'pcieb_nexus_enum_tq'): namespace collision
15809901 problem with kernel (tty)
15810882 e_ddi_free_instance assertion: np->in_devi == dip, file: ../../common/os/instance.c, line: 864
15811067 another potential mutex re-enter when dealing with page unmapping
15814006 when you insert 2 Twinville and 2 Niantic cards, the device path of 1 card of each is wrong
15819819 process_nonresumable_error needs to get corresponding RAs for those errors referenced via VAs
15823081 panic assertion failed: MUTEX_NOT_HELD(&b->tqbucket_lock), file: ../../common/os/taskq.c
15824381 busstat fails when cmu0 is not present
16019706 KU rejuvenation post Solaris 10 Update Release 11
 
(from 150153-01)
 
15676271 ld should accept SHT_PROGBITS for unwind sections on amd64 and map to SHT_AMD64_UNWIND
15725252 ld does not merge multiple progbits .eh_frame sections on amd64
15744845 corrupted relocatable object output when ENOSPC
15769826 _elf_outsync() doesn't catch ENOSPC error
 
(from 148328-03)
 
15795832 dladm show-link calls mac_start() unnecessarily
16010708 incorrect variable name in dls_vlan_hold()
16011581 clarify logic in i_dladm_nt_net_walk() and i_dladm_nt_net_add()
 
(from 148328-02)
 
        This revision accumulates generic Sustaining patch 143581-04
        into Solaris S10U11 update.
 
(from 148328-01)
 
        This revision accumulates generic Sustaining patch 143581-03
        into Solaris S10U11 update.
 
(from 143581-04)
 
6751617 dladm show-link -s -i needs to flush stdout after each line
 
(from 143581-03)
 
7152087 die() function is writing '\n' to stdout instead of stderr
 
(from 143581-02)
 
        This revision accumulates generic Sustaining patch 143513-02
        into Solaris S10U9 update.
 
(from 143581-01)
 
        This revision accumulates generic Sustaining patch 143513-01
        into Solaris S10U9 update.
 
(from 143513-02)
 
6752014 'dladm show-dev' does report link status unknown for legacy interfaces
 
(from 143513-01)
 
6849286 'dladm show-dev/show-link -s' has overlapping columns with large values
 
(from 148415-02)
 
15677428 messages don't go through due to SendQ full
15690939 fix race in rdsv3_ib_update_ipaddr()
15695559 some RDSv3 downcall handles for sockfs return the negative errno
15701001 panic in debug kernel on accessing cm_id->device after rdma_destroy_id()
15703204 rdsv3_ib_ring_unalloc() calls may corrupt the send ring
15735284 unconfiguring an HCA under IPMP puts the other link in the group in failed state
15746083 DB processes stuck in rds sendmsg
15761942 take-2: rds-ping between 192.168.1.100 and localhost caused panic
15781679 assertion failed: cma_get_acpt_idp(root_idp, chanp->chan_qp_hdl), sol_cma.h line 621
 
(from 148415-01)
 
        This revision accumulates generic Sustaining patch 148410-01
        into Solaris S10U11 update.
 
(from 148410-01)
 
7009434 qperf freezes rdsv3 connection and reports 0 throughput
7015801 on cable pulling, CQ interrupts while ib_tasklet af_thread exits caused panic
7036461 connection stuck due to lack of rdsv3_ib_allocation units
7099590 rds-info leaves unbound sockets behind
7171482 snode leak
 
(from 148219-02)
 
        This revision accumulates generic Sustaining patch 148067-02
        into Solaris S10U11 update.
 
(from 148219-01)
 
        This revision accumulates generic Sustaining patch 148067-01
        into Solaris S10U11 update.
 
(from 148067-02)
 
7014783 long recovery time for IPoIB-CM during fault injection
 
(from 148067-01)
 
7039064 multicast join errors seen on hosts
7089063 SRU7 fails to join multicast group of SRU6
 
(from 149161-01)
 
        This revision accumulates generic Sustaining patch 148983-01
        into Solaris S10U11 update.
 
(from 148983-01)
 
7129513 devfs causing prtconf, zpool status, rsh to hang
 
(from 150027-01)
 
15821692 internal error in AER UE register needs to be ignored for sun4v Root Ports
 
(from 150110-01)
 
15824814 vpci doesn't handle MD change correctly
15865335 panic encountered after I/O card is removed from root domain and added to I/O domain
15890365 vpci_dev_check() will hang when LDC events do not come as expected
 
(from 150117-01)
 
15821350 problem with kernel (gld)
 
(from 150159-01)
 
15716458 libumem's default free block search method may lead to memory waste
 
(from 150167-01)
 
15691703 PxFS needs a way to determine free blocks on UFS
 
(from 150182-01)
 
15695137 x4800 panics in ibmf_i_free_msg
15756925 kernel panic in ibmf (bad_mutex)
15785520 system cannot be pinged


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:  The Enhancement Request 15556084 (support for EMC VPLEX virtual
         storage) delivers support for EMC VPLEX virtual storage.  It is
         necessary to install also a patch 142088-03 (or greater) to get
         this storage fully supported by all tools. It is especially
         important on x86 systems where luxadm command may core dump
         without this patch in some special situations when interacting
         with EMC VPLEX devices.
 
NOTE 2:  The Enhancement Request 15825558 (TPGS/ALUA Unavailable state)
         introduces new constant DI_PATH_STATE_UNAVAILABLE, defined in
         usr/include/sys/devinfo_impl.h.  A function di_path_state(3devinfo)
         can return the new value when either EMC VPLEX or any ALUA compliant
         device which supports Unavailable TPG access state is connected to
         Solaris host. See man page di_path_state(3devinfo) for reference.
 
NOTE 3:  Due to 16090197 (getrlimit64 should return real limits for limit
         values exceeding ILP32 max), there is a change in the behavior of
         getrlimit64 with this patch.  After this patch, getrlimit64, when
         called from a 32-bit process, returns real values for limit values
         greater than or equal to 32-bit model maximum and less than 64-bit
         model maximum.  Prior to this patch, this routine, when called from a
         32-bit process, used to return RLIM_INFINITY for limit values which
         fall in this range.  This change in behavior will be specifically
         visible for limits like maximum size of virtual memory, maximum size
         of size of stack segment which have different model maximum for 32-bit
         model versus 64-bit model.  This change also effects the behavior of
         the ulimit built-in command provided by the shells.  The following
         example demonstrates the change in behavior of ulimit from 32-bit
         bourne shell (note that 5GB is greater than the 32-bit model maximum,
         which is 4GB):
 
         $ ulimit -v 5242880       #set the limit on address space size to 5GB
         $ ulimit -v               #now prints the limit value as 5GB
         5242880
         $
 
	 Prior to the fix, the second command used to print the limit value as
	 'unlimited'.  Now, it prints the real value.
 
NOTE 4:  Due to the complex nature of adding SR-IOV support for InfiniBand 
         on Solaris 10 guest ldoms, if you need to patchrm this kernel patch
         revision, you MUST also patchrm 148888-04 if installed previously.

NOTE 5:  If this Kernel Patch was installed before the availability of:

         125555-13  patch behavior patch

         in some cases Infiniband interfaces could be rendered inaccessible
         due to bug 17198090 (IB interfaces become inaccessible).  To fix
         this if it has occurred, please apply the (same) following patch:

         125555-13 (or greater)  patch behavior patch

         For further information, please see Document 1576796.1.

NOTE 6:  If InfiniBand(IB) devices fail to plumb on guest domains after
         a stop/start from the control domain, please also install the
         following patch:

         144872-03 (or greater)  ifconfig patch

         For more details, see Service Alert Document 1614350.1:

         https://support.oracle.com/rs?type=doc&id=1614350.1


README -- Last modified date: Tuesday, May 12, 2015