Solaris 7 3/99 Online Release Notes (SUNWrdm)

Chapter 2 Runtime Bug Descriptions

System Administration Bugs

Non-Root Applications Using All Available Swap Space Can Hang a System Or/And Cause Critical System Daemons to Die (1189666)

Non-root applications sometimes use all available swap space, which can result in a hung system or cause critical system daemons to die.

Workaround: Because the VM subsystem reserves a small amount of swap space that is in the form of physical memory for root processes, it enables system administrators to log in and kill offending user processes that have used all available swap space. Therefore, system hangs are prevented and critical system daemons can keep running.


Note -

Because non-root processes cannot reserve swap space against this pool, some non-root processes may no longer be available with ENOMEM whenever you type the df or swap -s command and a message is displayed indicating that a small amount of swap space is still available.


Auditing of the Network (nt) audit Class Can Cause System Failure (4172702)

When auditing is enabled, selecting for the network audit events (nt class) can cause the system to fail.

Workaround: Do not enable auditing for the network audit events (nt class) or all audit events (all class) for any user or for the default of all users. The Solaris 7 operating environment has neither of these classes enabled. Individual user audit is controlled in the /etc/security/audit_user file that has the form username:classes:classes. Do not enter the class at all or in either of the classes fields.

For example, do not modify an /etc/security/audit_user file with entries like


root:lo,nt:no 	
bill:all:no

Default auditing is controlled in the /etc/security/audit_control file by the flags entry that has the form flags:classes. Again, do not enter either the class all or nt in the classes field. For example, do not modify an /etc/security/audit_control file with flags entries like dir:/var/audit


 flags:nt
minfree:20
naflags:lo

This problem is addressed by the Solaris 7 10683210683 patch.

File System Bugs

Upgrade Can Fail on Systems With Overlapping Slices (4162497)

If a system that you need to upgrade has overlapping slices on any of the attached disks (excluding the backup slice), the upgrade configuration process fails. If you are using Disk Space Reallocation, the auto-layout process fails.

Workaround: Change or delete the overlapping slices by using the format command.


Caution - Caution -

Note that changes to slices will cause data loss on both the slice being changed and on any slices that is being overlapped by the changed slice. Any data on the affected slices should be backed up before slice manipulation is attempted.


SPARC only: cpr_reset_properties: Unable to open /.cpr_default on /pci@1f,4000/scsi@3/disk@0,0:a" (4163575)

The above-listed message is displayed as is or a variation of this message may be displayed whenever you reboot after a cpr Suspend.

The criteria for using cpr are:

Network Issues

Files With Negative Times Will No Longer Be Supported Over an NFS Mount

The NFS protocol reports the modification, access, and meta data change times on files as 32-bit unsigned value that counts the number of seconds elapsed since January 1, 1970, as an unsigned value. This gives NFS a theoretical upper limit to the Year 2106.

Starting with the Solaris 7 release, the Solaris NFS client and server no longer mistakenly render negative times on files as unsigned values. Thus an NFS client that conformed to the NFS protocol specification would interpret that a file last modified in 1969 was in fact modified in 2106.

In the Solaris 7 release, the NFS client and server implementation has been corrected to adhere to the protocol. Whenever the NFS server encounters a file with a negative time, it refuses to provide attributes for it to the NFS client.

Therefore, no longer will files with negative times be supported over an NFS mount. When the NFS client tries to access a file with negative times, the client typically gets an "overflow" error.

Also, one can have a tar (see the tar(1) command), or cpio (see the cpio(1) command) archive that has negative times stored in the archive. When extracting this archive over NFS, it no longer works if using a Solaris 7 NFS client.

Workaround: The workaround to the first problem is to log onto the NFS server that has the file (the nfsstat(1M) utility, invoked with the -m option, identifies the server), and use the touch(1) command to change the file times to the current date and time.

CDE Issues

Compiling Motif Programs

Binary compatibility of existing Motif binaries is not affected. Many parameters in the Motif Application Programming Interface (API) are of type XmString, which is an opaque type. Motif source code that uses char* where the Motif API expects an XmString parameter is always incorrect. Such incorrect Motif code is more likely to core dump when compiled in the Solaris 7 operating environment.

Workaround: Use an older version of Motif.

Supported Y2K Dates Testing Procedure

CDE and Solaris 7 is Y2Kcompliant. Use the date command to modify the system date and clock. If you want the system date and clock to reflect a future date for testing purposes, halt or shut down the system and run in single user mode. You can only modify the system date in single user mode. You can then boot your system and run in multi user mode with the desired test date.

Centralized Calendar Access Swap Rquirement

If you deploy centralized calendar services where users have access to their Calendar from a remote centralized server, then the Calendar requires about ten times the total size of Calendar files in swap space to work reliably.

For example, if users want to have access to Calendar from the same server and the Calendar files' size totals 50 MB, then Calendar requires 500 MB of swap space to work reliably.

If these space limitations are not considered during the installation of Solaris, users may have unreliable access to the Calendar.

Workaround: Increase swap space to enable the Calendar to work reliably.

The Motif Window Manager (MWM) Is No Longer Supported in the Solaris 2.6 and 2.7 Operating Environment

If you are currently using the MWM, upgrade to CDE desktop. The CDE desktop provides superior functionality and the transition is not difficult. The following information is provided if you cannot upgrade from the MWM to the full CDE desktop.

If you have developed applications using the Motif Development kit that shipped with the 2.5 Software Developer's Kit, you can now use dtwm, the Windows Manager, that is part of CDE. The Windows Manager can be used just like the MWM. The Windows Manager also supports resource files for the MWM. The following actions can be taken to make the Windows Manager appear similar to an existing MWM configuration.

Turn off the dtwm front panel using the following settings:


Dtwm*useFrontPanel:      False

This resource can be set in .Xdefaults, or the existing resource can be changed from True to False in the file /usr/dt/app-defaults/C/Dtwm

The dtwm option -name allows the use of most existing mwm resources. The -name option is documented in the dtwm man page.

MWM customers may or may not depend on the following file: $HOME/.mwmrc. There is a dtwm resource config file that can be set to make dtwm read the file $HOME/.mwmrc. This resource is documented in the dtwm man page.

The root menu for dtwm and mwm is not the same. The dtwm root menu is fully configurable. You can make any changes in the root menu. See the man pages for dtwm and dtwmrc.

CDE Mailer Needs Additional Free Memory to Open a Mailbox

The CDE Mailer needs twice the size of a mailbox in free memory to open the mailbox. For example, if you have a 150 MB mailbox, you need at least 300 MB of free memory to open the mailbox.

Workaround: Increase your swap space to enable your mailbox to be opened.

CDE Bugs

Date Prompt String Uses LC_MESSAGES When It Should Use LC_TIME (4053983)

If your system's LC_TIME environment variable is set to a locale different from the locale that is set in the LC_MESSAGES environment variable, then the date prompt displays a format that is not compatible with what the CDE Mailer expects.

Workaround: Before you start your vacation mail, make sure that your system's LC_MESSAGES and LC_TIME environment variables are set to the same locale.

Copy/Paste Functions Fail in dtterm When Using the ls -l Command in CTL Locales (4129969)

The Copy/Paste functions do not work properly if you try to copy and paste any text that includes Hebrew and Arabic characters and numbers, such as 1, 2, 3, 4, etc.

Names For Attachments Are Displayed in Reversed Order in Hebrew and Arabic Locales (4130010)

If you are using dtmail in either Hebrew or Arabic locales and you have attachments with Hebrew or Arabic names, these names are displayed in reversed order in the dtmail attachment.

The Name of the Month in the Calendar Manager Icon of the CDE Workspace Manager is Incorrectly Reversed (4136966)

If you are using dtcm in either Hebrew or Arabic locales, the name of the Month in the Calendar Manager icon on the front is incorrectly reversed.

Dtmail May Truncate the Body of an Email Message (4133964)

Dtmail may truncate the body of an email message if the message body contains non-printable characters.

The following warning message is displayed:


Message contains a binary code which is invalid as a character in the
current locale. For this reason part of this message may be truncated.
If you run CDE in the same locale that this message came from, you
will be able to view the entire message.

If an email message is created in one locale and then emailed to another locale, email may be truncated because it contains a binary code that is invalid as a character in the locale to which the email was sent.

For example, this bug may occur when:

Workaround: Perform the following steps:

  1. Exit CDE.

  2. Log into CDE in the locale where the email was composed

    or

    quit dtmail and set the environment variable LANG to the correct locale; then restart dtmail.


Note -

The same data that is sent as an attachment is not truncated when viewed.


SPARC only: When Selecting dtmail in the Common Desktop Environment (CDE), It Is Not CTL-Enabled in the Arabic Locale (4140698)

If you open dtmail in the Arabic locale on your Common Desktop Environment, the Arabic date and time is neither correctly shaped nor correctly laid out. Also, if you insert Arabic characters in a new message dialog, it results in a row of Arabic characters that is displayed without being correctly shaped or laid out.

SPARC only: The Arabic Font Size Is Very Large (4140700)

If you select ar, the Arabic locale, from the login screen, the dtlogin is displayed with a very large font. The default font is also very large after signing on.

SPARC only: Appointments Are Not Displayed in the Calendar Manager In Arabic When Selecting dtcm From CDE (4140701)

You are unable to view any appointments in the Calendar Manager in Arabic when you select dtcm in the Common Desktop Environment.

Workaround: Perform the following steps:

  1. Select ar, the Arabic locale, from the dtlogin screen.

  2. Start dtcm to open the Appointment Editor.

  3. Add a new appointment that includes Arabic text.

  4. Close the Appointment Editor.

The new appointment is now displayed in the Calender Manager.

Core Dumps May Occur for Motif Programs on Systems with the Solaris 2.5.1 Operating Environment Running (4157689)

This bug only affects Motif programs that have been compiled on systems that run the Solaris 2.5.1 operating environment and also contain a custom Motif widget that subclasses the XmText widget. Such a program may cause a core dump when it is executed on a system with the Solaris 2.6 or Solaris 7 operating environment running.

Workaround: Recompile the program on a system with either the Solaris 2.4, 2.5, 2.5.1, 2.6 or Solaris 7 operating environment running.

Compiling Motif Programs on Solaris 7 (4172061)

This problem occurs when compiling a Motif program in the Solaris 7 operating environment if you link to an older shared library that has been compiled in the Solaris 2.5 or Solaris 2.6 operating environments and if the older library also uses the Motif API. In this case the Motif program uses Motif version 2.1 and the old shared library uses Motif version 1.2. A core dump occurs. This is not a binary compatibility problem for applications compiled in the Solaris 2.4, 2.5, 2.5.1, 2.6 operating environments. Those applications should run correctly in the Solaris 7 operating environment.

Workaround: When you use either one of the following two workarounds, copy the Solaris 2.6 Motif header file directory Xm located in /usr/dt/include/ to a temporary directory.

SPARC only: restore from sys-suspend Sometimes Does Not Restore CDE (4174133)

sys-suspend(1M) may hang and not refresh the screen on some slow systems. After a system is resumed, Screen Lock is in effect by default. This problem occurs after you enter a user password. A white screen is displayed instead of a Common Desktop Environment (CDE) screen. Although you can gain access to the system remotely, you cannot enter anything because the screen is still locked. If this problem occurs, you can recover the CDE session by remotely logging on the system as superuser and then killing the sys-suspend process.

Workaround: If this problem has occurred as a result of executing autoshutdown, use the dtpower(1M) application to disable autoshutdown. The problem does not occur if you execute sys-suspend without the Screen Lock option.

Refer to "Disabling the Screen Lock" in Using Power ManagementSolaris 7 Reference Manual Collection for a description on how to disable the Screen Lock for sys-suspend invoked by the keyboard's power key. To disable the Screen Lock for the sys-suspend command that is invoked from the CDE Workspace Menu:

  1. Become superuser.

  2. Create the following dtaction file /etc/dt/appconfig/types/locale/sunOW.dt. The locale is the name of the language option that is selected when you start CDE.

  3. Copy the ACTION SDTsuspend { ... } definition from /usr/dt/appconfig/types/locale/sunOW.dt to /etc/dt/appconfig/types/locale/sunOW.dt.

  4. Add the -x flag to sys-suspend command in the /etc/dt/appconfig/types/locale/sunOW.dt file.

  5. Exit the CDE session and log in again.

JavaTM Development Kit (JDKTM) Bugs

Java Applications Dump Core When There Is Insufficient Swap Space (4037312)

Java applications dump core when there is not enough swap space. The application indicates the following bus error:


not enough space

Workaround: Exit other applications running on the system or add more swap space. See the System Administration Guide, Volume I for details on adding swap space.

Do Not Use Java Thread.suspend () And Thread.resume () Methods 4040218

The Java Thread.suspend() method may cause Java application programs to hang. It is strongly recommended that you do not use the suspend() and resume() methods.

Hangs may occur because a thread holding a lock is suspended and the thread responsible for resuming this thread needs this lock. This is a general problem with threaded programming because of improper usage of these primitives, which leads to application deadlocks.

Workaround: Use other appropriate synchronization methods, such as wait() and notify().

Timestamp Constructor Accepts Two-Digit Date (4047499)

java.sql.Timestamp accepts a two-digit year but does not allow for years beyond 1999 (it interprets a two-digit date as 19xx). This problem does not occur when a four-digit year is specified.


Caution - Caution -

The java.sql.Timestamp class extends the java.util.Date class where several methods have been deprecated. To ensure forward compatibility, use the java.text.SimpleDateFormat methods.


SPARC only: Java on SPARC Dumps Core (4087298)

Random bus error or segmentation fault occurs in an application or support library.

Workaround: Use java_g or java -debug to run this program. Also, try turning the JIT off:


setenv JAVA_COMPILER NONE

Any of these workarounds change the execution profile of the VM.

Adjust Colormap To Improve Performance in True-Color Environment (4102599)

Numerous X-requests in Java applications sometimes cause a slow startup in 8-bit color (TrueColor or PseudoColor) environments. This is especially apparent on slower systems. A large part of the startup delay is due to the computation of an optimal dithered colormap by the awt library during initialization.

Workaround: Adjust the colormap size computed at initialization by using the environment variable VIRTCUBESIZE. Set it to a power of 2 between 4 and 32. The default value is 32.


setenv VIRTCUBESIZE 8 

The -nojit Option Displays a Warning (4144550)

When -nojit is used, the following warning is displayed:


Warning: JIT compiler "none" not found. Will use interpreter  

Workaround: Set -Djava.compiler=NONE

64-Bit Solaris Issues

SPARC only: Limitation on OpenWindowsTM 3.6.1 APIs for the Solaris 7 Operating Environment

The following warning message is displayed when you try to compile a 64-bit XViewTM or OLIT application:


Creating 64-bit applications in {XView, OLIT} is not supported.

SPARC only: No 64-bit Executable Code Between 0 and 2G Virtual

To prevent user programs from encountering a bug that causes certain 64-bit user applications to stall when executing instructions loaded between virtual addresses 0 (0x0) and 2G (0x80000000), the system automatically ensures that 64-bit applications do not load instructions in that range. This does not reduce the amount of physical memory available to applications, nor does it prevent user data from being loaded in that range. 32-bit applications are not affected.

64-Bit Solaris Bugs

SPARC only: 64-bit libmail Not Available (4169295)

The 64-bit libmail library is missing. You cannot create 64-bit applications that require this library.

Graphics Bugs

A User's Multi-Threaded Application Hangs (4076297)

A user's multi-threaded applications can hang when such the application causes an _XRead to be issued from Xlib.

Workaround: You can either:

or

XIL

Operation Is Not Implemented (1245393)

The photo CD I/O device does not support an xil_get_pixel operation.

Workaround: If you need to obtain the value for a particular pixel of a photo CD image, copy the photo CD image to a memory image and then call xil_get_pixel on the memory image.

stdimage Freezes In Limited Circumstances (4155742)

The ImageViewer (sdtimage) can freeze in limited circumstances during the manipulation of an image on a screen. This problem only occurs when XIL is using the X Shared Memory (xshm) display pipeline. A thread deadlock may be the cause of the problem between XIL and xshm.

The xshm pipeline is only used when the workstation framebuffer does not have an accelerated XIL display driver available, such as the TCX and ZX framebuffers. Existing accelerated XIL drivers for cg6(GX), cg14(SX), ffb(Creator) and afb(Elite) framebuffers do not cause this problem.

Workaround: If this problem occurs, use the Image Tool (/usr/openwin/bin/imagetool) as a substitute for sdtimage.

XGL

Gcache decomp Does Edges Incorrectly For gcache_multi_simple_polygon (1167214)

When an XGL Gcache decomposes a polygon with edges, some edges are rendered incorrectly for xgl_gcache_multi_simple_polygon().

Workaround: Set the XGL_GCACHE_USE_APPL_GEOM to TRUE. Alternately, use xgl_gcache_polygon() instead of xgl_gcache_multi_simple_polygon() and turn off the XGL_GCACHE_SHOW_DECOMP_EDGES when creating the GCACHE context.

Window Size Returned by DGA Behind by One Resize Event (1183134)

With XViewTM (and possibly other tool kits) calling the application's resize_proc() before sending the resize request to the server, the window size returned by DGA is behind by one resize event.

Workaround: Calling XSync() before calling xgl_window_raster_resize() fixes the problem.

Security Bugs

Security Vulnerability In ufsdump And ufsrestore (4132365)

A security vulnerability exists in the ufsdump(1M) and ufsrestore(1M) commands. If you have already gained access to a given Solaris system, you can exploit this vulnerability to obtain root access. Fixes for these problems are available for this release by installing patch ID 106793-01, a patch for SPARC systems, or patch ID 106794-01, a patch for x86 based systems.

If you have not yet obtained and installed the appropriate patch, you can apply the following workaround on your system.

Workaround: If you use the chmod command on the ufsdump and ufsrestore programs such that the set-uid bit is removed, the programs are then no longer vulnerable. You can remove the set-uid bit by executing the following command as root:


# chmod 0555  /usr/lib/fs/ufs/ufsdump /usr/lib/fs/ufs/ufsrestore
Some of the ufsdump/ufsrestore functionality is now only available to root, specifically having access to backup devices on the network using the rmt(1M) protocol.

Solaris 7 praudit and auditreduce Cannot Process Solaris 2.6 Audit Files (4167174 and 4168892)

Solaris 7 audit trails are incompatible with audit trails that have been generated in the Solaris 2.3, 2.4, 2.5, 2.5.1, 2.6 operating environments. You cannot use the praudit and auditreduce commands in the Solaris 7 operating environment to process audit files that have been generated in the Solaris 2.3, 2.4, 2.5, 2.5.1, 2.6 operating environments.

Workaround: Process audit trails only on the Solaris release on which they have been generated. This problem is addressed by the Solaris 7 106832106833 patch.

AnswerBook2TM Bugs

AnswerBook2 Server Administrative Access Authentication Fails (4113327)

AnswerBook2 server administrative access authentication fails if you use a CGI-based http server instead of the default NSAPI server.

Workaround: Perform the following steps:

  1. Become root on the document server.

  2. Turn off administrative access control for the document server by typing the following command:


    # /usr/lib/ab2/bin/ab2admin -o access_off
    
  3. If you still need to control access to administrative functions on the document server, use available commands on your http server to restrict access to the following URL:


    /ab2/@Ab2Admin
    

Localization Issues

OpenWindows Is Not Supported As a Desktop Option In Some Locales

OpenWindows is not supported as a desktop option in the following locales and partial locales:

Table 2-1 Desktop Options Not Supported

Desktop Option 

Name of Country 

en_GB.ISO8859-15

Britain 

de.ISO8859-15

Germany 

fr.ISO8859-15

France 

it.ISO8859-15

Italy 

es.ISO8859-15

Spain 

sv.ISO8859-15

Sweden 

da.ISO8859-15

Denmark 

de_AT.ISO8859-15

Austria 

en_IE.ISO8859-15

Ireland 

pt.ISO8859-15

Portugal 

nl_BE.ISO8859-15

Belgium 

nl.ISO8859-15

Netherlands 

fr_BE.ISO8859-15

Belgium 

fi.ISO8859-15

Finland 

el_EURO

Greece 

th

Thailand 

th_TH

Thailand 

he

Israel 

ar

Egypt 

de.UTF-8

Germany 

fr.UTF-8

France 

it.UTF-8

Italy 

es.UTF-8

Spain 

sv.UTF-8

Sweden 

en_EU.UTF-8

Europe 

ja_JP.UTF-8

Japan 

ja_JP.PCK

Japan 

ko.UTF-8

Korea 

zh.GBK

PRC 

zh_TW.BIG5

Taiwan 

Localization Bugs

x86 only: Cannot Add a New User With SolsticeTM AdminTools in Arabic or Hebrew Locales (4159527)

If you log in as root in the Arabic or Hebrew locale, you cannot add or modify users with the SolsticeTM AdminToolsTM. The Add User window is displayed but is blank. This problem occurs whenever you add or modify information about the user in all subwindows.

Workaround: Use root to add or modify information about users.

x86 only: Some Custom Arabic TrueType Fonts May Cause an Intel XServer To Crash (4161002)

If applications are using custom fonts rather than system fonts, the XServer may crash on x86 platforms. The problem occurs because some characters in the font are exceeding the height limitation specified with the font.

Workaround: Provide an unhinted version of the offending font. The height of unhinted versions is usually lower.

Arabic 16-Bit Proportional Fonts Clip Characters (4167851)

If you use Arabic 16-bit proportional fonts in the Solaris 7 operating environment, the characters are only partially displayed on the screen.

Workaround: Only use monospace fonts.

Static Desktop Text Is Not Enabled For Complex Text Layout (4170194)

Static text, such as icon text and Workspace panel text, has not been enabled for Complex Text Layout. Therefore, the Arabic and Hebrew translations of English static text do not display correctly.

Hardware Bugs

x86 only: 3Com EtherLink 3C509B Does Not Generate Interrupts (4153488)

3Com EtherLink III 3C905B cards in a Compaq ProLiant 6500 can fail to generate interrupts. The card sends packets but does not receive them.

Workaround: There is no known workaround for this problem. However, because some slots appear to have this problem occur more frequently than other slots, moving the card to another PCI slot might help. Also, successive reboots of the system have succeeded in getting the card out of this state.

x86 only: iprb: dma Overrun While Receiving Frame (4156622)

Some PCI motherboards contain DMA chipsets that are unable to support 100-Mbps Fast Ethernet.

Workaround: See "100-Mbps Ethernet Performance" in the Solaris 7 (Intel Platform Edition) Device Configuration Guide for additional information and recommended solution.

x86 only: ncrs: Mismatch of Narrow and Wide SCSI Operations on Intel N440BX Motherboard (4165916)

If there are Wide Small Computer System Interface (SCSI) targets attached to the Symbios adapter but your boot device is not one of these targets, then the Solaris driver does not successfully negotiate Wide SCSI data transfer and the devices do not operate correctly.

Workaround: Set the adapter firmware to 8-bit/narrow mode using the Symbios BIOS Configuration Utility:

x86 only: kdmconfig: JumpStart Installation Fails With pnp Monitor (4166376)

JumpStart installations configured to use a Plug-and-Play monitor cannot be properly installed. The monitor information on the installed system is incomplete.

Workaround: Configure the JumpsStart installation to use a comparable multi-frequency monitor.