This chapter describes known runtime problems. You may also want to refer to the online runtime_bugs file in the SUNWrdm package on the Solaris 7 5/99 CD for additional runtime problems.
The information in this chapter supplements any information listed in the runtime_bugs file that is part of the SUNWrdm package on the Solaris 7 5/99 CD. If you boot from the Solaris 7 5/99 CD, the runtime_bugs file is located in the directory:
/cdrom/sol_7_599_sparc/s0/Solaris_2.7/Docs/release_info/C
The default installed location for the runtime_bugs file is the directory:
/usr/share/release_info/Solaris_2.7/C
The name of this product is Solaris 7 5/99, but code and path or package path names may use Solaris 2.7 or SunOS 5.7. Always follow the code or path as it is written.
If you display the 7 Solaris information files (listed in Step 2) that are included in the SUNW?rdm packages and installed in the /usr/share/release_info/Solaris_2.7/locale directory, you can only view them in English even though you logged in using the European locale.
Select Information from the front panel's Help menu.
Double-click the Solaris_2.7 folder in the Application Manager.
The following 7 Solaris Information files are displayed:
documentation_issues
driverupdate
eof
installation_bugs
new_features
patches
runtime_bugs
Double-click on each file.
It displays each file in dtpad.
Workaround: Go to /usr/share/release_info/Solaris_2.7/locale and use vi or dtpad.
If you lose the carrier, i.e., become disconnected from the serial port (that is not located on the default console or on an auxiliary console through which you are logged in, and then bring the system to single-user or administrative mode by executing the init command from that port, you must ensure that the carrier is reestablished on that serial port before bringing the system back up. The system then prompts you for a run level to which you want to boot the system (only on the port where the init command was initiated).
Workaround: Reconnect to the serial ports when you lose the carrier before rebooting the system.
A misleading message is sometimes displayed on the device on which you initiated the init state transition when administering a system using the init command even though you executed the reboot command. When executing init s, a single-user shell is established on a remote console and the subsequent rebooting of the system can cause the following message to be displayed:
Enter run level |
Workaround: Ignore the misleading message.
If you press Shift--D as a superuser or after logging in as root from the superuser login prompt and then issue an exit command to be at the default run level, you are prompted for the default run level. The prompt is displayed on a console on which the init command was initially executed instead of the console on which Shift--D or the exit command were originally issued.
If you execute the init command from a pty, /dev/console becomes the default device on which you are prompted for a run level. If you are running a remote console and log in as a superuser and then type Shift--D to boot the system, the run level prompt is then displayed on the console instead of the auxiliary console.
If a configuration includes one or more auxiliary consoles and the carrier drops the connection for the auxiliary console on which the init command was run, and the sulogin shell has exited from another auxiliary or default console, then the following prompt will not be displayed after reestablishing the connection on the port from which the carrier dropped the connection:
ENTER RUN LEVEL |
Although you are never prompted for the run level, the system is still waiting for the run level to be entered.
Workaround: Reestablish the connection on the port from the carrier has dropped the connection and enter the desired run level even though you are not prompted for the run level.
Daemons or commands may use /dev/console explicitly to display messages. The frequency of such messages is low among the set of messages that the console may display.
Workaround: All messages are still printed to /dev/console and can therefore be monitored. You can also monitor syslog log files.
If syslogd needs to display error messages on a console, these messages will be directed to the default location /dev/syscon. The error messages are not displayed on any configured auxiliary consoles in this feature patch.
If you have UFS file systems listed in /etc/vfstab with quotas enabled, you must apply the following workaround. Otherwise, quotas are not enabled automatically after booting a system.
Workaround: You must run quotacheck -a and quotaon -a for quotas to be correctly enabled. Otherwise, quotas remain disabled.
When loading an unbundled device driver, STREAMS module, file system, or other kernel module, you may see the following error message:
kernel_module_path: undefined symbol WARNING: mod_load: cannot load module 'kernel_module_path' |
The kernel runtime linker does not recognize the new register symbol type introduced in the SC5.0 FCS compilers and assemblers for 64-bit SPARC binaries.
Workaround: You must verify that the error message was generated because the kernel runtime linker does not recognize the new register symbol type. To do this, type:
# nm kernel_module_path | grep REGI |
If this is the problem, the output from this command is a table that shows one row with 2 in the Value column and REGI in the Type column, and another row with 3 in the Value column and REGI in the Type column. An example is:
[154] | 2| 0|REGI |GLOB |0 |UNDEF | [155] | 3| 0|REGI |GLOB |0 |UNDEF | |
To correct the problem:
If you have the source code for the kernel module, recompile the kernel module with -xregs=no%appl option, or, if it is written in assembly language, assemble it with -xregsym=no option.
If you do not have the source code, contact the provider of the kernel module to report the problem.
When debugging a multi-threaded program with a signal handler on a given thread stack, dbx 4.0 cannot successfully dump the thread's stack.
Workaround: Use dbx 5.0.
Java applications dump core when there is not enough swap space. Applications sometimes produce the following bus error:
not enough space |
Workaround: Exit other applications running on the system or add more swap space. See the Solaris System Administration Guide for details on adding swap space.
Many X-requests in Java applications can cause a slow startup in 8-bit color (TrueColor or PseudoColor) environments. This is 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 |
When the -nojit option is used, the following warning is displayed:
Warning: JIT compiler "none" not found. Will use interpreter |
Workaround: Use the -Djava.compiler=NONE command line option instead of the -nojit option.
In the Italian locale that supports euro currency (it_IT_EURO), the default currency format obtained using either getCurrencyInstance() or getCurrencyInstance(locale) from the java.text.NumberFormat returns currency values formatted as integers.
Workaround: Use your own currency format rather than the locale's default.