This section describes other drivers that apply to the kernel.
This parameter controls what dax kstats are collected by the dax driver. This parameter can be set through the /etc/system.d directory. See /etc/system.d/ Directory Files for more information. Alternatively, you can also use the mdb --kernel -w --unsafe-write-access command. To read the parameter's current value, use the mdb --kernel --unsafe-io-access dax_stats_flags/D. For information about the mdb --kernel -w --unsafe-write-access and mdb --kernel --unsafe-io-access commands, see kmdb Debugger Entry in Oracle Solaris Modular Debugger Guide and the mdb(1) man page. Note that you should use the –-kernel option instead of the obsolescent –k option.
1 – dax unit statistics collection only, excluding queue and CPU statistics.
2 – dax queue and dax CPU statistics collection. This setting is not recommended because collecting queue and CPU statistics can have an impact on performance.
3 – dax unit, queue and CPU statistics collection
When dax queue and or dax cpu statistics are needed.
x86 only: This parameter controls the number of Extended Message Signaled Interrupts (MSI-X) that a device instance can allocate. Due to an existing system limitation, the default value is 2. You can increase the number of MSI-X interrupts that a device instance can allocate by increasing the value of this parameter. This parameter can be set either by editing an /etc/system.d/file or by setting it with mdb before the device driver attach occurs.
SPARC based systems: 8
x86 based systems: 2 If the system supports x2APIC, the apix module can increase the default value to 8.
To increase the number of MSI-X interrupts that a device instance can allocate. However, if you increase the number of MSI-X interrupts that a device instance can allocate, adequate interrupts might not be available to satisfy all allocation requests. If this happens, some devices might stop functioning or the system might fail to boot. Reduce the value or remove the parameter in this case.
0 (messages off)
Here are the most useful values:
0x80000000 – Prints [un] loading... message. For every module loaded, messages such as the following appear on the console and in the /var/adm/messages file:
Apr 20 17:18:04 neo genunix: [ID 943528 kern.notice] load 'sched/TS_DPTBL' id 15 loaded @ 0x7be1b2f8/0x19c8380 size 176/2096 Apr 20 17:18:04 neo genunix: [ID 131579 kern.notice] installing TS_DPTBL, module id 15.
0x40000000 – Prints detailed error messages. For every module loaded, messages such as the following appear on the console and in the /var/adm/messages file:
Apr 20 18:30:00 neo unix: Errno = 2 Apr 20 18:30:00 neo unix: kobj_open: vn_open of /platform/sun4v/kernel/exec/sparcv9/intpexec fails Apr 20 18:30:00 neo unix: Errno = 2 Apr 20 18:30:00 neo unix: kobj_open: '/kernel/exec/sparcv9/intpexec' Apr 20 18:30:00 neo unix: vp = 60015777600 Apr 20 18:30:00 neo unix: kobj_close: 0x60015777600 Apr 20 18:30:00 neo unix: kobj_open: vn_open of /platform/SUNW,Sun-Fire-T200/kernel/exec/sparcv9 /intpexec fails, Apr 20 18:30:00 neo unix: Errno = 2 Apr 20 18:30:00 neo unix: kobj_open: vn_open of /platform/sun4v/kernel/exec/sparcv9/intpexec fails
0x20000000 - Prints even more detailed messages. This value doesn't print any additional information beyond what the 0x40000000 flag does during system boot. However, this value does print additional information about releasing the module when the module is unloaded.
These values can be added together to set the final value.
When a module is either not loading as expected, or the system seems to hang while loading modules. Note that when 0x40000000 is set, system boot is slowed down considerably by the number of messages written to the console.