SRDB ID   Synopsis   Date
22221   I'm seeing GROW wakeups and SHRNK wakeups messages, with references to DR. What are these?   19 Apr 2000

Status Issued

Description
Symptom: 
Messages similar to the following are seen.

  Dec 29 09:57:37 oak unix: GROW wakeups:
  Dec 29 09:57:37 oak unix: 0
  Dec 29 09:57:37 oak last message repeated 3 times
  Dec 29 09:57:37 oak unix: 98
  Dec 29 09:57:37 oak unix: 43
  Dec 29 09:57:37 oak unix: 0
  Dec 29 09:57:37 oak unix:
  Dec 29 09:57:37 oak unix: SHRNK wakeups:
  Dec 29 09:57:37 oak unix: 0
  Dec 29 09:57:37 oak last message repeated 6 times
  Dec 29 09:57:37 oak unix:
  Dec 29 09:57:37 oak unix: freemem 13803
  Dec 29 09:57:37 oak unix: ckstat:391306883: compress
  Dec 29 09:57:37 oak unix: compress: chunk = 36 pages
  Dec 29 09:57:37 oak unix: compress: freemem=13806, dr_kfreemem=2777, 
                            dr_kpages=42388
  Dec 29 09:57:37 oak unix: compress selection: [0x10c95480-0x10c95d80) 
                            p=[0x10b1e-0x10b42), np=36
  Dec 29 09:57:37 oak unix: compress selection: total npages = 36, nsegs = 1
  Dec 29 09:57:37 oak unix: compress: adding 0 pages back to dr_kfreemem
  Dec 29 09:57:37 oak unix: compress: added 36 pages to freemem
  Dec 29 09:57:37 oak unix: DR: compressing caged kernel by 36 pages (42388 -> 42352)
  Dec 29 09:57:37 oak unix: cage compress: [0x10c95480-0x10c95d80) p=[0x10b1e-0x10b42), np=36
  Dec 29 09:57:37 oak unix: cage compress: total npages = 36, nsegs = 1
  Dec 29 09:57:37 oak unix: cage_thread: compressed kern map by 36 pages.
SOLUTION SUMMARY:
Resolution: 
When the caged kernel is enabled (see releases for OS specifics), the cage 
resizes itself according to the demands of the system. If more kernel pages
are needed, the cage grows. If more user pages are needed, the cage shrinks. 
The message above are reporting resizing activity. A DR operation
(attach/detach/drain) need not be active for the cage kernel to resize. 

These messages are only logged when the kernel flag dr_mem_debug is set to -1. 
This can be done either in /etc/system or via adb. In practice, the 
dr_mem_debug flag needs only be set when debugging a drain problem. To turn
off the flag and surpress these messages, perform the following steps as root: 

             # adb -kw
             physmem 5b291
             dr_mem_debug/W 0
             dr_mem_debug:   0x0             =       0x0
             $q

Note: dr_mem_debug is only valid in Solaris 2.5.1 and Solaris 2.6. 
SUBMITTER: Charles Price APPLIES TO: Hardware/Ultra Enterprise/Servers/Enterprise 10000, Operating Systems/Solaris/Solaris 2.6 ATTACHMENTS:


Copyright (c) 1997-2003 Sun Microsystems, Inc.