- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - HP-UX
- >
- cannot fork: no swap space
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Forums
Discussions
Discussions
Discussions
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-11-2001 07:46 AM
12-11-2001 07:46 AM
The problem I am having is when ever we startup the UAT db wierd things happen. The most resent is that the ping command won't work. It gives the following error:
ora-prod:/oracle/orauat/8.1.7/dbs> ping ora-apps
/usr/bin/getmemwindow[29]: cannot fork: no swap space
PING ora-apps.westlongbranch.tellium.com: 64 byte packets
64 bytes from 192.168.28.64: icmp_seq=0. time=0. ms
64 bytes from 192.168.28.64: icmp_seq=1. time=0. ms
64 bytes from 192.168.28.64: icmp_seq=2. time=0. ms
If anyone has an idea why this is happening I would greatly appreciate your help.
Thanks,
Tom
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-11-2001 07:50 AM
12-11-2001 07:50 AM
Re: cannot fork: no swap space
It appears you have run out of swap. to confirm this, run
swapinfo -tam
you will get out put like this
Mb Mb Mb PCT START/ Mb
TYPE AVAIL USED FREE USED LIMIT RESERVE PRI NAME
dev 8000 0 8000 0% 0 - 1 /dev/vg00/lvol11
dev 256 0 256 0% 0 - 1 /dev/vg00/lvol2
reserve - 5810 -5810
memory 9817 5816 4001 59%
total 18073 11626 6447 64% - 0 -
If you are at 100% you will need to add swap
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-11-2001 07:53 AM
12-11-2001 07:53 AM
Re: cannot fork: no swap space
# swapinfo -tan
Kb Kb Kb PCT START/ Kb
TYPE AVAIL USED FREE USED LIMIT RESERVE PRI NAME
dev 4194304 0 4194304 0% 0 - 1 /dev/vg00/lvol2
dev 2097152 0 2097152 0% 0 - 1 /dev/vg00/lvol14
reserve - 3170380 -3170380
total 6291456 3170380 3121076 50% - 0 -
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-11-2001 07:54 AM
12-11-2001 07:54 AM
Re: cannot fork: no swap space
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-11-2001 07:55 AM
12-11-2001 07:55 AM
Re: cannot fork: no swap space
Swap space must be available in the event that a process *might* need it. If you are memory rich, you could enable pseudo swap by setting the kernel parameter 'swapmem_on' to one. This can be done with SAM but will require a reboot after the kernel is regenerated.
Otherwise, you should setup some secondary device swap. This can easily be done with SAM if you like. Start by choosing a disk other than one where your primary swap resides (vg00) and configure an equal size device swap with a swap priority that is equal to your primary swap. This will cause interleaving of swap I/O.
To monitor swap utilization, use:
# swapinfo -tam
Regards!
...JRF...
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-11-2001 07:56 AM
12-11-2001 07:56 AM
Re: cannot fork: no swap space
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-11-2001 08:02 AM
12-11-2001 08:02 AM
Re: cannot fork: no swap space
The thing I see though, is that you say in your original post that you have 2GB of swap, but your swapinfo output shows that you have 6GB of swap. I assume the 6GB is accurate since swapinfo is showing that. The next question is how much memory do you actually have? Is it 4GB or is it more?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-11-2001 08:07 AM
12-11-2001 08:07 AM
Re: cannot fork: no swap space
Kb Kb Kb PCT START/ Kb
TYPE AVAIL USED FREE USED LIMIT RESERVE PRI NAME
dev 2097152 0 2097152 0% 0 - 1 /dev/vg00/lvol2
reserve - 1641728 -1641728
total 2097152 1641728 455424 78% - 0 -
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-11-2001 08:14 AM
12-11-2001 08:14 AM
SolutionYour 2 solutions are:
Set swapmem_on to 1 to enable RAM to exceed swap space. This does require a reboot.
Increase swap space to 4GB so it is the same size as RAM. This can be done without a reboot.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-11-2001 08:40 AM
12-11-2001 08:40 AM
Re: cannot fork: no swap space
This will allocate phantom swap so that the need for actual swap space will be much lower.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-11-2001 09:52 AM
12-11-2001 09:52 AM
Re: cannot fork: no swap space
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-11-2001 10:10 AM
12-11-2001 10:10 AM
Re: cannot fork: no swap space
This is because each process reserves a portion of the swap space just in case it has to swap. It doesn't actually use it unless it has to, which should be never because RAM is so cheap. This is the beauty of the swapmem_on kernel parameter. When you set this, it actually reserves swap space in memory. Keep in mind that it does NOT use memory for this though. This kernel parameter allows you to have less swap space than RAM, thus allowing you to free up precious disk space.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-11-2001 10:16 AM
12-11-2001 10:16 AM
Re: cannot fork: no swap space
ora-prod:/oracle/orauat/8.1.7/dbs> ping ora-apps
/usr/bin/getmemwindow[29]: cannot fork: no swap space
getmemwindow indicates that you are running memory windows, something that allows old 32-bit applications to address an entire 32-bit address space independently from other applications. This is more likely an issue with the way memory has been laid out for memory windows rather than swap space.
Unfortunately, the error message does not indicate whether memory window #0 (the default 32-bit addressing space) is the culprit. Since you started ping without any memory window directive, this is likely the case. ping will run in the default window and it may indeed be due to the default memory window being used up.
I would recommend that each instance of Oracle be run in a non-default memory window so that the #0 window will have lots of room for ordinary commands.
Bill Hassell, sysadmin
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-11-2001 10:45 AM
12-11-2001 10:45 AM
Re: cannot fork: no swap space
With 4GB memory can I create more than 1 additional memory window?
Currently I have max_mem_window set to 1. Below is output for this configuation.
# memwin_stats -m
Shared Memory:
T ID KEY MODE OWNER GROUP UserKey KernId
m 0 0x411c0626 --rw-rw-rw- root root Global 0
m 1 0x4e0c0002 --rw-rw-rw- root root Global 0
m 2 0x4120042c --rw-rw-rw- root root Global 0
m 22531 0x5f1e6748 --rw-rw---- oraprod dba 1 2
m 70148 0x930df460 --rw-rw---- orauat dba Global 0
# memwin_stats -w
Entry USER_KEY KERN_KEY QUAD2_AVAIL QUAD3_AVAIL PID REFCNT
Memory Windows:
0 Global 0 262144 152940 10516 212
1 Private 1 0 0 0 1
2 1 2 262144 45095 10541 177
# ipcs -ma
IPC status from /dev/kmem as of Tue Dec 11 13:38:29 2001
T ID KEY MODE OWNER GROUP CREATOR CGROUP NATTCH SEGSZ CPID LPID ATIME DTIME CTIME
Shared Memory:
m 0 0x411c0626 --rw-rw-rw- root root root root 0 348 353 353 8:58:33 8:58:33 8:58:26
m 1 0x4e0c0002 --rw-rw-rw- root root root root 2 31040 353 355 3:05:12 8:58:33 8:58:26
m 2 0x4120042c --rw-rw-rw- root root root root 2 8192 353 355 3:05:12 8:58:26 8:58:26
m 22531 0x5f1e6748 --rw-rw---- oraprod dba oraprod dba 88 889032704 3211 10559 13:38:28 13:38:28 17:14:24
m 70148 0x930df460 --rw-rw---- orauat dba orauat dba 50 447250432 6586 10516 13:38:11 13:38:11 12:34:10
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-11-2001 11:22 AM
12-11-2001 11:22 AM
Re: cannot fork: no swap space
The idea is to keep each instance of a large program separate from another copy so multiple copies do not have to share a single 3.75Gb area. Now having only 4Gb is going to be a big performance hit if you have four instances of Oracle that each need 1200 megs of RAM. The instances will swap like crazy and performance will be awful.
If you are going to use memory windows to allow multiple instances of the program to use all addressable memory, you'll need a lot more RAM to have acceptable performance. If you change the programs to use only 500 megs each, then 4 copies should fit just fine but then memory windows would probably not be necessary.
Bill Hassell, sysadmin