Applied Kernel Patch to Solaris 10 on v40z, no longer auto boots

I recently updated the patches on a v40z machine including a kernel patch. After rebooting, the machine would no longer automatically boot to Solaris. Instead it would just wait for user input at the Grub bootloader screen. Anyone experienced this or have a solution?
I believe the patch in question is 118855-19
# bootadm list-menu
The location for the active GRUB menu is: /boot/grub/menu.lst
default 0
timeout 10
0 Solaris 10 6/06 s10x_u2wos_09a X86
1 Solaris failsafe

SOLVED:
Disabled ECC in the bios (though Windows and Gentoo Linux show now trouble whatsoever with my ECC memory, solaris doesn't like it)

Similar Messages

  • Last kernel patch for Solaris 10 x86 screwed up my kernel

    Hi,
    The last kernel patch for Solaris 10 x86 (sorry I can�t remember the patch id, but the revision is 30), available from Sun Update Manager screwed up my system.
    The system is still booting but in maintenance mode: smf can't start because of repository corrupted. Given instructions to restore the repository does not work because / filesystem is mounted read-only...
    As I am not a solaris expert, I will reinstall it from CD. I hope I won't loose the filesystem.
    I was used to blindly trust Sun solaris patches, that was a mistake.
    Laurent.

    i dont know why but still i do get default log in into the single mode
    after startup
    Requesting maintenance mode
    (See /lib/svc/share/README for aditional information. )
    Root password for system maintenance (control-d to bypass):i did removed the patch installed before so now
    SunOS jorgito 5.10 Generic_118844-26 i86pc i386 i86pcand finaly i do have milestone like this
    bash-3.00$ svcprop restarter | grep mile
    options/milestone astring svc:/milestone/multi-user:default
    dont know what to do else, also tried to synchronize boot-archive from solaris failsafe ...

  • How to do Kernel Patching in Solaris 10?

    How to do Kernel Patching in Solaris 10?

    Hi,
    In single user
    # init s
    # patchadd <kernel_patch>
    or the best is to install the last Solaris update patch bundle
    See http://sunsolve.sun.com/show.do?target=patches/patch-access
    Marco.

  • Sequence of Applying Kernel Patches

    Hi All,
    We have ECC 5.0 (Central Instance) OS:HP UNIX and four Dialog Instances on Windows Platform.
    For Applying the latest kernel patches what should be the sequence, first dialog instances or Central Instance?
    For this landscape is it required that while applying kernel patch Database should be in shutdown mode?
    Regards,
    Prashant.

    Dear,
    >First we have to apply Support pack in the Dialog instance
    Its not first dialog instance.
    Please follow below steps.
    1. shutdown all dialog instances.
    2. take backup of current kernel directory
    3. stop central instance
    4. switch the kernel files from new kernel
    5. start the central instance.If its successfully up with new patch level  then
    6. One by one start the dialog instance.
    Note: If the dialog instances sharing the path of Central instance Kernel directory then no need to do anything on dialog instances. Sapcpe program will copy new kernel to dialog instance local kernel directory automatically while restarting the dialog instances.
    If dialog instances not sharing the path of CI then repeat the same procedure as of CI for DI's.
    Edited by: Imran  Mulani on Sep 11, 2008 9:29 AM

  • Unable to boot the sytem after applying kernel patch 118844-27

    We have an hp ProLiant DL380 Storage server connected to HP StorageWorks Moduler Smart Array 30 via SCSI. Solaris 03/05 was installed previously on this system with kernel 118844-20. When I queried and installed all required patches with 'smpatch add -i .. ' command, all patches applied and the system is rebooted. After reboot, the system kept restarting. I followed the instructions on Sun Alert document 102087, and installed grub using 01/06 1st CDROM. It installed successfully, but problem persisted. The systems started booting, but before printing 'Configuring devices' the system rebooted again. Providing -v option to the kernel, it lastly printed a PCI device id (/pci@....) and after 2-3 seconds rebooted again.
    Finally I had to reinstall the solaris (this time 01/06). The disk was accessible after booting with CD ROM, and I was able to get cylinder numbers of disk, and I installed the new system to the root partition of the other live upgrade environment. The boot disk was partitioned under linux, it was three partitions, Solaris2 (50GB),Solaris(4GB),Linux(18GB). Installation medium told that the fdisk partition was invalid, and i repartitioned the whole disk again.
    System up and running Solaris 10 01/06 now, but the strange thing is that, previously hard disk (both boot disk and disks on array) locations were identified as '/dev/rdsk/c0tx' but now, the system sees that hard disks at '/dev/c1tx' and CDROM at '/dev/c0t0'.
    Now I want to ask tow questions:
    * Could this disk number change made the system unbootable previously?
    * May I safely apply patch 118844-28 to the system
    -Thanks

    Here's a similar topic https://bbs.archlinux.org/viewtopic.php?pid=536210 also if that doesn't work you should install vesa as it also says it's not found in your log.

  • Kernel patches in Solaris

    All,
    First of all, I am fairly new to Unix...
    I have a SAP NW 7.0 subscription system running on Solaris 10; I installed all usage types except PI. Now I want to upgrade to SP14. As part of this I have to patch the kernel from 111 to 133 as well.
    According to this thread (https://forums.sdn.sap.com/click.jspa?searchID=9023739&messageID=4713075), I should copy the newly extracted kernel files to /sapmnt/<SID>/exe.
    Note 19466 though states that I have to copy them to /usr/sap/<SAPSID>/sys/exe/run.
    I did both, my system is up and running but if I check the kernel version under system/status/Sup.Pkg.lvl in the GUI, it still shows 111.
    What is the proper way?
    Also, can't I use JSPM to patch the kernel? If I run it, it shows the kernel but says something like no information available.
    Thanks,
    Guenther

    Found the issue myself: I used root to extract and copy the kernel files. SAPCPE during the start procedure running under <sid>adm did not have permission to copy the files from /sapmnt/<SID>/exe to the other directories.
    After I deleted the existing files and recreated the new kernel using <sid>adm everything worked fine.
    Another newbie lesson learned
    Guenther

  • Kernel patch updation for solaris 10 x86

    I have Solaris 10 06/06 installed on x86 machine which is using svm and clustered with another node. The kernel revision is 118855-19 from the uname -a output. I am looking for the kernel patch updation and I heard 118855-36 is the latest one. Shall I go ahead with this patch and what r the dependency patches for this.
    If anyone done this please guide me..

    Patch 118855-36 is the latest kernel patch for Solaris 10 on x86 and its dependencies are:
    113000-01 117435-02 118344-14 119043-09 119255-14 121264-01 122035-01 123840-01 (or greater)
    Whether you should go ahead and install the patch is up to you, if possible try it out on a test box first. For better advice on this matter, I would suggest posting in the Solaris 10 forum as this forum is for the Sun Update Connection, Patch Manager & PatchPro toolsets.

  • Problem of SIGPOLL(SI_NOINFO) in latest Solaris9 kernel patch

    Hi,
    We are facing a rather strange problem with the latest kernel patch on Solaris 9. (Generic_112233-08). We had not faced this problem with any of the other kernel patches of Solaris 9.
    Our application has a main thread and a single child thread (pthread). The main thread schedules aio_writes() on the raw disk interface and lets the child thread block on sigwaitinfo() to listen to the signal completion notification. This is communicated to it via the SI_ASYNCIO code of SIGPOLL. The child thread then informs the main thread by writing to a bi-directional pipe. Since the main thread has registered for read interest on the bi-directional pipe (via /dev/poll) it is informed of the completion of the aio_write() without having to block itself. Under normal circumstances, the child thread receives SIGPOLL with SI_ASYNCIO code.
    This application has been running fine on all the previous builds of Solaris (Generic, Generic_112233-04, Generic_112233-06) on sparc platform expect with the latest kernel patch. The child thread now keeps receiving SIGPOLL with SI_NOINFO code. There has been no change in our application and we are perplexed to the reason of this behaviour. Since it is SI_NOINFO there is not much debugging information we can get.
    We have been able to replicate this behaviour using a small stand-alone program. We are attaching it at the end of the email. We tried this program on a couple of different Sparc systems and were able to reproduce this behaviour on one of them but not on the other.
    Has anybody faced problems with regard to SIGPOLL in the latest kernel patch of Solaris 9 for sparc systems ?
    Thanks
    Regards
    Raj Pagaku
    proxy-24:~ >uname -a
    SunOS proxy-24 5.9 Generic_112233-08 sun4u sparc SUNW,Ultra-5_10
    proxy-24:~ >gcc -v
    Reading specs from /usr/local/lib/gcc-lib/sparc-sun-solaris2.9/3.2/specs
    Configured with: ../configure with-as=/usr/ccs/bin/as with-ld=/usr/ccs/bin/ld --disable-nls
    Thread model: posix
    gcc version 3.2
    Compiled this program using the following command : gcc -g kernel_bug.c -lrt -lpthread
    #include <stdio.h>
    #include <aio.h>
    #include <errno.h>
    #include <fcntl.h>
    #include <pthread.h>
    #include <signal.h>
    #include <stdlib.h>
    #include <string.h>
    #include <unistd.h>
    #include <sys/resource.h>
    #include <sys/stat.h>
    #include <sys/types.h>
    #define min(x,y) (((x)<=(y))?(x):(y))
    #define DISPLAY_COUNT 10000
    typedef struct DiskInfoCallOut {
    void (*func_ptr)(void *);
    void *data_ptr;
    } DiskInfoCallOut;
    typedef struct DiskInfo {
    struct aiocb di_aiocb;
    DiskInfoCallOut di_callout;
    off_t di_currOffset;
    int di_scheduled;
    } DiskInfo;
    typedef struct Disk {
    int fd;
    char *buffer;
    int bufferLen;
    } Disk;
    static sigset_t aioSignalSet;
    int aioSigFD[2];
    int glob_scheduled = 1;
    int glob_respond = 1;
    Disk disk;
    static void LaunchDiskOperation(DiskInfo *di);
    char BUFDATA[4096] = {'a'};
    char rawDeviceName[256] = "/dev/rdsk/";
    static void
    InitializeDisk()
    int fd;
    if ((fd = open(rawDeviceName, O_RDWR, 0)) == -1) {
    fprintf(stderr, "Unable to open raw device \n");
    exit(-1);
    disk.fd = fd;
    disk.buffer = BUFDATA;
    disk.bufferLen = sizeof(BUFDATA);
    static void
    AIOSignalHandler(int sigNum, siginfo_t* si, void* context)
    fprintf(stderr, "WARN: got signal %d in AIOSignalHandler!\n", sigNum);
    /* Function implementing the slave thread */
    static void*
    AIOSignalThread(void *arg)
    struct sigaction sa;
    siginfo_t info;
    sigset_t ss;
    int sig_num;
    int retVal;
    /* Initialize the signal set*/
    sigemptyset(&ss);
    sigaddset(&ss, SIGPOLL);
    if ((retVal = pthread_sigmask(SIG_SETMASK, &ss, NULL))) {
    fprintf(stderr, "pthread_sigmask failed in AIOSignalThread \n");
    exit(-1);
    sa.sa_handler = NULL;
    sa.sa_sigaction = AIOSignalHandler;
    sa.sa_mask = aioSignalSet;
    sa.sa_flags = SA_SIGINFO;
    if (sigaction(SIGPOLL, &sa, NULL)) {
    fprintf(stderr, "sigaction in AIOSignalThread \n");
    exit(-1);
    /* Wait infinitely for the signals and respond to the main thread */
    while (1) {
    sig_num = sigwaitinfo(&aioSignalSet, &info);
    if (sig_num != SIGPOLL) {
    fprintf(stderr, "caught unexpected signal %d in AIOSignalThread \n",
    sig_num);
    exit(-1);
    if (info.si_code != SI_ASYNCIO){
    fprintf(stderr, "ERROR: siginfo_t had si_code != SI_ASYNCIO, si_code = %d \n", info.si_code);
    continue;
    /* Write the stored pointer value in the pipe so that the main thread can process it */
    if (write(aioSigFD[1], &(info.si_value.sival_ptr), sizeof(info.si_value.sival_ptr)) !=
    sizeof(info.si_value.sival_ptr)) {
    perror("Couldn't write the whole pointer");
    exit(-1);
    return (NULL);
    static void
    Init()
    pthread_attr_t aioAttr;
    pthread_t aioThread;
    int retVal = 0;
    /* Create a bidirectional pipe */
    if (pipe(aioSigFD)) {
    perror("pipe failed");
    exit(-1);
    /* Initialize to prevent other threads from being interrupted by
    SIGPOLL */
    sigemptyset(&aioSignalSet);
    sigaddset(&aioSignalSet, SIGPOLL);
    if ((retVal = pthread_sigmask(SIG_BLOCK, &aioSignalSet, NULL))) {
    fprintf(stderr, "pthread_sigmask failed in Init\n");
    exit(-1);
    InitializeDisk();
    if ((retVal = pthread_attr_init(&aioAttr)))
    fprintf(stderr, "pthread_attr_init failed \n");
    if ((retVal = pthread_attr_setdetachstate(&aioAttr, PTHREAD_CREATE_DETACHED)))
    fprintf(stderr, "pthread_attr_setdetachstate failed \n");
    if ((retVal = pthread_attr_setscope(&aioAttr, PTHREAD_SCOPE_SYSTEM)))
    fprintf(stderr, "pthread_attr_setscope failed in \n");
    if ((retVal = pthread_attr_setstacksize(&aioAttr, 2*1024*1024)))
    fprintf(stderr, "pthread_attr_setstacksize failed \n");
    if ((retVal = pthread_create(&aioThread, &aioAttr,
    AIOSignalThread, NULL)))
    fprintf(stderr, "pthread_create failed \n");
    static void
    UpdateDiskWriteInformation(DiskInfo *di)
    di->di_currOffset += disk.bufferLen;
    di->di_scheduled = 0;
    static void
    DiskOpCompleted(void *ptr)
    DiskInfo di = (DiskInfo )ptr;
    if (aio_error(&di->di_aiocb))
    perror("aio_error");
    if (aio_return(&di->di_aiocb) < 0)
    perror("aio_return ");
    UpdateDiskWriteInformation(di);
    glob_respond++;
    static void
    LaunchDiskOperation(DiskInfo *di)
    int res;
    di->di_callout.func_ptr = DiskOpCompleted;
    di->di_callout.data_ptr = di;
    memset(&di->di_aiocb, 0, sizeof(di->di_aiocb));
    di->di_aiocb.aio_fildes = disk.fd;
    di->di_aiocb.aio_buf = disk.buffer;
    di->di_aiocb.aio_nbytes = disk.bufferLen;
    di->di_aiocb.aio_offset = di->di_currOffset;
    di->di_scheduled = 1;
    di->di_aiocb.aio_sigevent.sigev_notify = SIGEV_SIGNAL;
    di->di_aiocb.aio_sigevent.sigev_signo = SIGPOLL;
    di->di_aiocb.aio_sigevent.sigev_value.sival_ptr = &di->di_callout;
    res = aio_write(&di->di_aiocb);
    if (res == -1) {
    perror("aio op error");
    static void
    HandleSignalResponses()
    int fd;
    #define DISKINFO_CALLOUT_MAX 64
    DiskInfoCallOut* callout[DISKINFO_CALLOUT_MAX];
    struct stat pipeStat;
    int numCompleted;
    int bytesToRead;
    int sz;
    int i;
    fd = aioSigFD[0];
    while (1) {
    /* Find whether there is any data in the pipe */
    if(-1 == fstat(fd, &pipeStat)) {
    perror("fstat");
    exit(-1);
    if (pipeStat.st_size < sizeof(DiskInfoCallOut *))
    break;
    numCompleted = min((pipeStat.st_size/sizeof(DiskInfoCallOut *)),DISKINFO_CALLOUT_MAX);
    bytesToRead = numCompleted * sizeof(DiskInfoCallOut *);
    if ((sz = read(fd, callout, bytesToRead)) != bytesToRead) {
    perror("Error reading from pipe");
    exit(-1);
    for (i = 0; i < numCompleted; i++)
    (*callout[i]->func_ptr)(callout[i]->data_ptr);
    int main(int argc, char *argv[])
    DiskInfo *di;
    FILE *logPtr1 = NULL;
    FILE *logPtr2 = NULL;
    FILE *logPtr3 = NULL;
    struct rusage ru;
    struct timeval t1, t2;
    long timeTaken = 0;
    int writeCount = 0;
    int i;
    char logFileName1[1024];
    char logFileName2[1024];
    char logFileName3[1024];
    if (argc < 2) {
    fprintf(stderr, "Usage : %s <partition_name> \n", argv[0]);
    exit(-1);
    strcat(rawDeviceName, argv[1]);
    writeCount = 1;
    printf("Partition selected = %s \n", rawDeviceName);
    di = calloc(writeCount, sizeof(DiskInfo));
    sprintf(logFileName1, "%s.log1", argv[0]);
    if ((logPtr1 = fopen(logFileName1, "w+")) == NULL) {
    fprintf(stderr, "Unable to create file test_pgm \n");
    exit(-1);
    sprintf(logFileName2, "%s.log2", argv[0]);
    if ((logPtr2 = fopen(logFileName2, "w+")) == NULL) {
    fprintf(stderr, "Unable to create file test_pgm \n");
    exit(-1);
    sprintf(logFileName3, "%s.log3", argv[0]);
    if ((logPtr3 = fopen(logFileName3, "w+")) == NULL) {
    fprintf(stderr, "Unable to create file test_pgm \n");
    exit(-1);
    Init();
    for (i = 0; i < writeCount; i++) {
    di.di_currOffset = (1 << 18) * (i + 1);
    di[i].di_scheduled = 0;
    gettimeofday(&t1, NULL);
    while (1) {
    int curScheduled = 0;
    /* Schedule the disk operations */
    for (i = 0; i < writeCount; i++) {
    if (di[i].di_scheduled == 0) {
    LaunchDiskOperation(&di[i]);
    glob_scheduled++;
    curScheduled++;
    /* Handle the responses */
    HandleSignalResponses();
    if ((curScheduled) && (glob_respond % DISPLAY_COUNT == 0)) {
    gettimeofday(&t2, NULL);
    timeTaken = ((t2.tv_sec * 1000000 + t2.tv_usec) -
    (t1.tv_sec * 1000000 + t1.tv_usec))/1000;
    printf("Scheduled = %d, Responded = %d, Time Taken = %ld ms \n",
    glob_scheduled, glob_respond, timeTaken);
    fprintf(logPtr1, "Scheduled = %d, Responded = %d, Time Taken = %ld ms \n",
    glob_scheduled, glob_respond, timeTaken);
    fprintf(stderr,"wrote to logPtr1 ..\n");
    fprintf(logPtr2, "Scheduled = %d, Responded = %d, Time Taken = %ld ms \n",
    glob_scheduled, glob_respond, timeTaken);
    fprintf(stderr,"wrote to logPtr2 ..\n");
    fprintf(logPtr3, "Scheduled = %d, Responded = %d, Time Taken = %ld ms \n",
    glob_scheduled, glob_respond, timeTaken);
    fprintf(stderr,"wrote to logPtr3 ..\n");
    t1 = t2;

    Hi @cooldog ,
    I hit this same LVM2 snapshot kernel oops on several Oracle Linux 6.5 servers running UEK R3 kernel version 3.8.13-16.3.1.  I have Linux Premier Support so I opened a Service Request.  Oracle Support got back to me with the following notes.
    Hello Matt, 
    Bug 17487738 : EXT4: STRESS TESTING WITH SUSPEND/RESUME FS ACCESS CAUSES FS ERRORS This bug is fixed in kernel version: 3.8.13-18. This kernel will be available quite soon for download.
    You may upgrade the kernel once its available. ~Siju 
    Update
    Dear Matt, Latest available UEK3 kernel version 'kernel-uek-3.8.13-26.el6uek.x86_64' incorporates the required bugfix. [root@server1 tmp]# rpm -q --changelog -p kernel-uek-3.8.13-26.el6uek.x86_64.rpm | grep -i 17487738
    warning: kernel-uek-3.8.13-26.el6uek.x86_64.rpm: Header V3 RSA/SHA256 signature: NOKEY, key ID ec551f03
    - fs: protect write with sb_start/end_write in generic_file_write_iter (Guangyu Sun) [Orabug: 17487738] <<<<<<======================================== You can download the UEK3 kernel from ULN or from public-yum repo. 
    http://public-yum.oracle.com/repo/OracleLinux/OL6/UEKR3/latest/x86_64/getPackage/kernel-uek-firmware-3.8.13-26.el6uek.noarch.rpm
    http://public-yum.oracle.com/repo/OracleLinux/OL6/UEKR3/latest/x86_64/getPackage/kernel-uek-3.8.13-26.el6uek.x86_64.rpm Hope this helps! ~Siju 
    Subscribe to the Oracle Linux el-errata mailing list .
    The latest kernel-uek-3.8.13-26.el6uek.x86_64 version fixed the problem.
    - Matt

  • Solaris 10 kernel Patch 127127-11

    we need to apply solaris 10 kernel Patch 127127-11 in our prod server as a prerequisite for oracle10g patch set 10.2.0.4 installation
    but i found a Doc 242366 (May Cause a system Panic from ip_wput_ioctl()).It is mentioned in doc that Binary relief is available through normal
    support channels.Is that Binary complete fix of this problem?If yes, then i need that binary please give me the link where i can download the binary,
    If not, then what is the solution of this problem.?
    Thanks

    These kinds of binary hotfixes/IDR's are only available through sun support to contract customers.
    If your concerned, I suggest you raise a support case.
    That being said, 127127-11 is kinda old. So I would be surprised if the bug hadnt been fixed by now.
    Its been replaced by either 137111 or 137137.
    Ive upgraded at least a dozen systems past that level and never seen a problem.
    So it can't be too common..

  • Steps for Kernel Patch Updation on Solaris 10 X4100 with 2disks mirrored

    Hi all,
    I have Solaris 10 10/06 (118855-19) installed on one of the X4100 server. This is the time for me to update the latest kernel patch (118855-36). We have two disks mirrored. My questions are,
    1) Do i need to detach any of the disk from the mirror before doing any patching.
    2) Is it possible to install the patches without detaching any disks from the mirror. (i.e. installeing patch on mirrored root filesystem)
    3) how to boot from the second disk in case the patch installation creates problem while booting up.
    Any suggestions or steps which you have already implemented for the above scenario.

    This isn't really a question for this forum, you may be better to look at some of the sys-admin forums for a complete answer.
    You should not need to break the mirror in order to apply the kernel patch, however doing so would allow for quicker recovery of the system should something go wrong during patching.
    I would strongly advise that you read the special install instructions for the kernel patch prior to installing it.
    http://sunsolve.sun.com/search/document.do?assetkey=1-21-118855-36-1
    You may also wish to use a patch cluster rather than smpatch/updatemanager, these can be downloaded from SunSolve:
    http://sunsolve.sun.com/private-cgi/show.pl?target=patchpage

  • Static library not accessed properly after Solaris Kernel patch update !

    Hi,
    We are facing a sever issue in our application after our customer updated the Solaris 10 kernel patch u9 to u10.
    We have two static libraries libdlib.a and libDLIB.a, with exactly same code base, but these two libraries are scattered across the code base and linked by many shared objects in our application.
    However, one of the shared objects that links to "libdlib.a" library tries to access a function from "libDLIB.a". This behavior is causing a crash at a later point, since that shared object is supposed to access the function from "libdlib.a". Moreover, we found this is happening through the use of dbx.
    I'm unable to understand why this problem surfaced after kernel patch update, though still the shared object works fine on Solaris 10 u9 patch.
    Flow is something like this :
    1. syslogrecorder.so gets loaded by one of the processes.
    2. syslogrecorder.so is linked to "libdlib.a" at compile time, so it uses "libdlib.a" function DLIB_LoadLibrary and gets a handle to all the function pointers of the loaded library ( The purpose of DLIB_LoadLibrary is to load a shared library dynamically using dlopen )
    3. syslogrecorder.so tries to do a "dlsym" and to do that it needs access to the library handle which we got in previous call DLIB_LoadLibrary. So syslogrecorder.so calls another function from DLIB_ProcAddress, which actually gives back the access to the loaded shared library.
    Here is a catch in step 3, it is supposed to call DLIB_ProcAddress from the libdlib.a but as we observed from dbx output it does so by calling DLIB_ProcAddress from libDLIB.a and hence fails to give back the access to loaded shared library, causing crash at a later point in code.
    Can someone put some light here that why this could happen ??
    Thanks
    Kuldeep

    To clarify: You did not modify or rebuild any of your binaries, but after installing a kernel patch, the application stopped working. Most likely, something about your application depended on a accidental behavior of the runtime loader. That accidental behavior changed due to the patch, and your application failed.
    For example, if there is a circular dependency among shared libraries, the loader will break the cycle at an arbitrary point to establish an initialization order. By accident, that order might work, in the sense of not causing a problem. A change to the loader could cause the cycle to be broken at a different point, and the resulting initialization order could cause a now-uninitialized object to be accessed. I'm not saying this is what is wrong, but this is an example of a dependency on accidental loader behavior.
    Finding your actual problem will require tracing the sequence of operations leading up to the failure. You are more likely to find help in a Solaris linker forum. AFAIK, there are currently no Oracle forums for Solaris, and the old OpenSolaris forums have been converted to mailing lists. You can try the "tools-linking" list found on this page:
    http://mail.opensolaris.org/mailman/listinfo
    I also suggest you review the paper on best practices for using shared libraries written by Darryl Gove and myself:
    http://www.oracle.com/technetwork/articles/servers-storage-admin/linkinglibraries-396782.html
    If you have a service contract with Oracle, you can use your support channel to get more help.
    Edited by: Steve_Clamage on May 18, 2012 3:21 PM

  • Kernel patch update for solaris 10 x86

    I have Solaris 10 06/06 installed on x86 machine which is using svm and clustered with another node. The kernel revision is 118855-19 from the uname -a output. I am looking for the kernel patch updation and I heard 118855-36 is the latest one. Shall I go ahead with this patch and what r the dependency patches for this.
    If anyone done this please suggest and guide me..

    For Solaris 10 x86 the latest offered with smpatch is 125101-07 and yes it may be recommended to patch. Then again you said clustered with sun cluster? You may want to check the documentation and if your machines aren't facing the internet you may wait for 7/07 to hit the street and do an upgrade.

  • How to apply signed patches to Studio 11 under Solaris 10?

    I'm running Solaris 10 6/06 on a Sun W2100z (x86_64) workstation. I have a long history of experience with Solaris, but I'm not terribly familiar with the things that are new or different with 10, including zones and the new patch management tools.
    I want to apply the latest patches to the various components of Studio 11, e.g. 120759-08,
    121018-04, etc. Since all the other patches I've applied (for other OS subsets) have been "signed" patches, I was hoping to stay consisent and apply signed patches to Studio 11 too. I've been foiled at every attempt, though, so I'm looking for some help.
    - if I use /usr/bin/updatemanager to select and attempt to apply the patches, I just get error
    messages saying that the patches could not be applied:
    121016-03 Sun Studio 11_x86: Patch for Sun C_x86 5.8 Compiler            Failed
    Utility used to install the update failed with exit code {0}.
    120762-02 Sun Studio 11_x86: Patch for Performance Analyzer Tools       Failed
    Install of update failed. Utility used to install the update is not able to add packages. Utility used to install the update failed with exit code 5.... and so on.
    - if I try using "smpatch" to add the patch, I get this error:
    $sudo smpatch add -i 120759-08
    add patch 120759-08
    Transition old-style patching.
    Patch 120759-08 failed to install due to a failure produced by pkgadd.
    pkgadd: ERROR: The package <SPROlang> is currently installed on the system in the
    global zone. To install the new instance of this package in the global
    zone only, you must specify the -G option. To install the new instance
    of this package in all zones you must first remove the existing instance
    of this package from the global zone first (via pkgrm) and then install
    the new instance of this package in all zones.
    pkgadd: ERROR: package <SPROlang> cannot be installed on this system/zone- if I try to use "patchadd" directly with the jar file in the current directory, I get this:
    $sudo patchadd 120759-08
    Validating patches...
    Loading patches installed on the system...
    Done!
    Loading patches requested to install.
    Done!
    Checking patches that you specified for installation.
    Done!
    Approved patches will be installed in this order:
    120759-08
    Verifying signed patch <120759-08>...
    Verifying digital signature for signer <es-signature>
    ERROR: Signature verification failed while verifying certificate <subject=Sun Microsystems Inc Root CA, issuer=GTE CyberTrust Root>:<unable to get local issuer certificate>.
    ERROR: Unable to verify signature for signer <es-signature>
    Signature invalid on signed patch <120759-08>.
    Patchadd is terminating.That's three strikes, and I'm out of ideas. Any suggestions for how one goes about applying signed patches for Studio 11? I'll switch to unsigned if I have to, but this seems like it shouldn't be this hard.
    Thanks,
    Tim

    I started a new thread on the updatemanager forum.
    http://forum.sun.com/jive/thread.jspa?threadID=107410
    I found that forum by googling for "updatemanager" and "zones", but
    I couldn't find any recent information on this issue. It seems the
    problem has been known about for a while now.
    --chris                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Solaris 10 U4 and kernel patches

    When I install a fresh U4 machine, I then (as I always do) apply the recommended patch cluster. U4 has kernel patched to 120011-14. In the patch cluster, there are kernel patches 118833-36 and also 120011-14. When I run the patch cluster, it installs 118833-36! Isn't this older than the kernel on there? Shouldn't both 118833-36 and 120011-14 BOTH not install as the kernel is already at level 120011-14. The cluster gets to 118833-36 installs that and then of course every patch after that one fails as the machine is waiting for a reboot.

    KJP 137138-09 should be ok with cpquary3 driver 1.9.1. KJP 137138 introduced new feature which does not allow misaligned pointer mutexes to work and panics the system. with revision 07 SUN introduced a new environment variable as a for applications which cannot be ported easily "6729759 need to accommodate non-8-byte-aligned mutexes".
    This is documented in alert 244606 "The resolution for OpenSolaris releases sets _THREAD_LOCKS_MISALIGNED to 0. This is to ensure that any faulty applications fail and are identified. To allow such applications to continue to work on OpenSolaris releases based upon snv_96 or later, the environment variable _THREAD_LOCKS_MISALIGNED must be set to 1." For this to work you need to have revision 09 of this KJP applied.
    Can you post the stack trace so i can have a look at it. I guess you have another application which uses unaligned mutexes.
    A pkginfo of the cpquary3 package would also be useful.
    -Marco

  • Solaris 10 kernel patch upgrade

    Hi all,
    i am in a process of upgrading the kernel patch of a solaris 10 x64 machine, the present kernel patch is "5.10 Generic_144489-06 i86pc i386 i86pc" the updated kernel patch that i am going to upgrade to is patch "144501-19".
    could you please let me know if there is any special handling to undergo the upgrade or it is only sufficient to follow the 144501-19 README file?
    i know that i should put the system on the single user mode level and i have to have a valid OS backup before doing the patchadd, but if i am missing anything else please let me know
    thanks

    Hello,
    if you are having system filesystems (/ /usr /var ...) on software RAID1 devices, best practise is to split mirrors and have most recent actual copy of the system (or create current ZFS snapshot if using ZFS on root),patch it in single user mode or use Live Upgrade functionality and create alternate boot environment and patch the ABE on running system (you can find various info in Oracle Docs or get inspired by various blogs:http://nilesh-joshi.blogspot.com/2011/10/oracle-solaris-patching-using-live.html). I always patch kernel and other system components using PCA patching utility - have a look on project homepage http://www.par.univie.ac.at/solaris/pca/ it's really advanced and helpful tool. It can save you lot of time when solving dependecies and also downloading the patches.
    Good luck

Maybe you are looking for