Solaris 7 5/99 Release Notes (SPARC Platform Edition)

krtld Does Not Recognize sparcv9 Register Symbols (4203394)

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: