The space reported by "swap -l" refers to disk-based backing store, but the swap values reported by "swap -s", "sar -r", vmstat, and top all refer to available space in swapfs, which is the vnode interface between the anon layer and physical swap devices. It is essentially virtual swap space, and is the combination of pageable physical memory and disk based backing store. If you run out of space in swapfs, but "swap -l" reports that you have allocated little or no disk-based backing store, it implies that your backing store is being used up by memory reservations. When a process reserves memory, Solaris tries to reserve against the backing store. When a process allocates memory, Solaris tries to allocate from available physical RAM. If your memory reservations exceed the size of your backing store, you can have memory allocation failures while still having lots of unallocated backing store.
Since you mention that you are running Oracle, I suspect that you are using DISM rather than ISM for the Oracle SGA. DISM currently makes a swapfs reservation that is equal in size to the entire DISM, so you need backing store of at least that size, plus your normal backing store requirements. You also mention that you are running a V880, which doesn't support dynamic reconfiguration (DR). Since DR is the primary reason to run DISM, you should probably consider using ISM instead, which does not do the backing store reservation. If you aren't using DISM, you should check the amount of reserved memory reported by "swap -s" then track down where the reservations are going. You can use "pmap -S" to report reservations. HTH, David Lutz ----- Original Message ----- From: Awais Vaseer <[EMAIL PROTECTED]> Date: Sunday, June 15, 2008 9:33 pm > Hello, > > We have a V880 with 64GB of Memory and a 40GB swap device confgiured, > running Solaris 10 and Oracle. > > A few days ago, one of our admins noticed a filesystem full error for > /tmp and that new processes were failing to start up. > > /var/adm/messages:Jun 11 02:16:52 xxxxxx tmpfs: [ID 518458 > kern.warning] WARNING: /tmp: File system full, swap space limit > exceeded > > They ran both 'swap -l' and 'swap -s' and saw that while 'swap -l' was > reporting all of the 40GB swap disk device as being unused and > available, 'swap -s' was reporting only 4GB of available swap. I > thought 'swap -s' reports all available swap including RAM [i]AND[/i] > swap disk. > > The system has since recovered and is working fine, but unfortunately > I only have a description of the symptoms and no detailed logs, > command output captures or debug information to investigate this > further. > > Has anyone else seen 'swap -l' reporting all of the swap disk as > unused and available, while 'swap -s' lists only a very small amount > of swap being available - Why is there a discrepancy between the > output of the two commands. Is there a way to correlate the outputs of > 'swap -l' and 'swap -s' ? > _______________________________________________ perf-discuss mailing list perf-discuss@opensolaris.org