My Oracle Support Banner

dtrace_meta_lock[8] can become contentious under numerous conditions. (Doc ID 2440527.1)

Last updated on JULY 07, 2023

Applies to:

Solaris Operating System - Version 10 1/13 U11 to 11.3 [Release 10.0 to 11.0]
Information in this document applies to any platform.

Symptoms

Systems may experience unexpected performance impact, that is spiky.  Looking at the lockstats output, you will see the lock dtrace_meta_lock[8] being very contentious.  Note, the system does not have to be running dtrace directly to encounter this issue.  A sample output of lockstat would look something like this (note the actual stack into the dtrace routine may be different from system to system.

 

Count indv     cuml   rcnt     nsec           Lock                           Hottest Caller
     26   25%   84%  0.00 122228431  dtrace_meta_lock[8]    dtrace_helper_provider_register+0x10
     nsec ------ Time Distribution ------ count     Stack
    16384 |@                                         1         dtrace_helper_slurp+0x21c
    32768 |@                                         1         dtrace_ioctl_helper+0xb0
    65536 |@                                         1         vnext_ioctl+0x70
  131072 |@@                                     2         sdev_fem_ioctl+0x78
  262144 |                                            0         vhead_ioctl+0xe0
  524288 |                                            0         fop_ioctl+0xd0
1048576 |                                            0         ioctl+0x16c
2097152 |                                            0         syscall_trap+0x228

Note the spin time on the lock, we are spinning an average of 0.12 seconds per event.

 

Also mutex blocks may show the issue

Adaptive mutex block: 240 events in 2.095 seconds (115 events/sec)

-------------------------------------------------------------------------------
Count indv cuml rcnt     nsec Lock                   Hottest Caller
   44 100% 100% 0.00 3814415376 dtrace_meta_lock[8]    dtrace_helper_provider_register+0x10
       nsec ------ Time Distribution ------      count         Stack
      33554432 |                                     1         dtrace_helper_slurp+0x21c
      67108864 |                                     0         dtrace_ioctl_helper+0xb0
     134217728 |@                                    2         vnext_ioctl+0x70
     268435456 |                                     1         sdev_fem_ioctl+0x78
     536870912 |@@@                                  5         vhead_ioctl+0xe0
    1073741824 |@@                                   3         fop_ioctl+0xd0
    2147483648 |@@@@                                 6         ioctl+0x16c
    4294967296 |@@@@@@@                             14        syscall_trap+0x228
    8589934592 |@@@                                  5
   17179869184 |@@@@                                 6
   34359738368 |                                     1

Which shows the mutex blocking for an average of almost 4 seconds per event.

 

Changes

 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Changes
Cause
Solution


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.