- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - HP-UX
- >
- Issue with ENOMEM - what could be causing it ??
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
Discussions
Discussions
Forums
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
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
тАО01-10-2005 03:21 AM
тАО01-10-2005 03:21 AM
Issue with ENOMEM - what could be causing it ??
I installed a product on an HP-UX machine, configured it, and tried to start its daemon. It responded with the message : 26556 Memory fault Server not running!! Failed to start ns-slapd process.
I am using a machine that about 2GB unused memory, while the product I installed needs about 128MB only.
I observed from the Truss output that mmap() was failing with ENOMEM message, as below:
mmap(NULL, 188416, PROT_READ|PROT_EXEC, MAP_SHARED|MAP_SHLIB, 10, 0x16000) .....
... ERR#12 ENOMEM
I also noticed the following statements in Truss:
Received signal 11, SIGSEGV, in user mode, [SIG_DFL], partial siginfo
Siginfo: si_code: I_NONEXIST, faulting address: 0x7ada001c, si_errno: 0
PC: 0xc23e9e3f, instruction: 0x44990038
exit(11) [implicit] ............................................................
... WIFSIGNALED(SIGSEGV)
waitpid(-1, WIFSIGNALED(SIGSEGV), WUNTRACED) ...................................
... = 1074
sigvec(SIGCLD, 0x7f7f0e70, 0x7f7f0e80) .........................................
... = 0
sigprocmask(SIG_BLOCK, 0x7f7f0e30, 0x7f7f0e10) .................................
... = 0
sigprocmask(SIG_SETMASK, 0x7f7f0e10, NULL) .....................................
... = 0
sigprocmask(SIG_BLOCK, 0x7f7f11b0, 0x7f7f1190) .................................
... = 0
sigprocmask(SIG_SETMASK, 0x7f7f1190, NULL) .....................................
... = 0
Is there a way to check and update "maxdsiz", "maxdsiz_64", "maxssiz" settings, IF THEY ARE THE CAUSE OF THE PROBLEM? (How to envisage that?) .
Current settings are the following:
/etc/conf/master.d/core-hpux:
*range maxdsiz<=0xfffff000
*range maxdsiz>=256*1024
*range maxdsiz_64bit<(4*1024*1024*1024*1024 - 1024*1024*1024)
*range maxdsiz_64bit>=256*1024
maxdsiz MAXDSIZ 0x10000000
maxdsiz_64bit MAXDSIZ_64BIT 0x0000000040000000
Appreciate if you can please let me know your inputs. Thanks!!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО01-10-2005 03:36 AM
тАО01-10-2005 03:36 AM
Re: Issue with ENOMEM - what could be causing it ??
Also the current kernel is /stand/system and not /usr/conf/....
The preocess is receving the signal 11, which is a segmentation violation. It cuold be maxtsiz, maxdsiz, maxssiz and shmmax.
If prgram is 64 bit program, it could be maxssiz_64bit etc. also how do you start the program. If from shell, look at the ulimit settings.
ulimit -Sa
ulimit -Ha
Anil
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО01-10-2005 05:43 AM
тАО01-10-2005 05:43 AM
Re: Issue with ENOMEM - what could be causing it ??
ulimit -Ha:
core file size (blocks, -c) unlimited
data seg size (kbytes, -d) 1048576
file size (blocks, -f) unlimited
max memory size (kbytes, -m) unlimited
open files (-n) 2048
pipe size (512 bytes, -p) 16
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 76
virtual memory (kbytes, -v) unlimited
ulimit -Sa:
core file size (blocks, -c) 2097151
data seg size (kbytes, -d) 1048576
file size (blocks, -f) unlimited
max memory size (kbytes, -m) unlimited
open files (-n) 2048
pipe size (512 bytes, -p) 16
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 76
virtual memory (kbytes, -v) unlimited
Also, here is the extract from /stand/system
* Tunable parameters
STRMSGSZ 65535
dnlc_hash_locks 512
max_thread_proc 3000
maxdsiz 2063835136
maxdsiz_64bit 0X40000000
maxfiles 2048
maxfiles_lim 2048
maxssiz 0X800000
maxssiz_64bit 0X800000
maxswapchunks 2048
maxtsiz 0X4000000
maxtsiz_64bit 0X40000000
maxusers 512
ncallout 6000
nfile 22565
nkthread 6000
nproc 2048
nstrpty 60
shmmax 0X4000000
Any suggestion ??
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО01-10-2005 05:57 AM
тАО01-10-2005 05:57 AM
Re: Issue with ENOMEM - what could be causing it ??
swpinfo -mat
glance -m, check for free memory
Is program 32/64 bit?? Do
file "prgram_name"
Anil
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО01-10-2005 06:11 AM
тАО01-10-2005 06:11 AM
Re: Issue with ENOMEM - what could be causing it ??
Now the signal 11 (SEGV) is likely due to the program not checking the return code from mmap and trying to use memory that was never assigned, a common programming error.
The mmap call seems to be referencing shared memory and similar limitations exist for 32bit programs using shared memory. The documentation for the programs should have indicated the size requirements for shared memory. But in case they left those out, change the shared memory parameters, specifically shmmax which is only 64megs. Most likely this is the problem. Unfortunately, the program did not provide a useful error message when mmap tried to report that it could not obtain the needed memory. Bump the kernel parameter shmmax up to 200-400 megs to allow the program to get what it needs.
Bill Hassell, sysadmin
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО01-10-2005 06:17 AM
тАО01-10-2005 06:17 AM
Re: Issue with ENOMEM - what could be causing it ??
$ file "prgram_name"
prgram_name: cannot open
$ getconf KERNEL_BITS
64
$ uname -srvm
HP-UX B.11.11 U 9000/800
Please suggest...
Thanks
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО01-10-2005 06:56 AM
тАО01-10-2005 06:56 AM
Re: Issue with ENOMEM - what could be causing it ??
Bill Hassell, sysadmin
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО01-10-2005 07:11 AM
тАО01-10-2005 07:11 AM
Re: Issue with ENOMEM - what could be causing it ??
shmmax=0X19000000
in /stand/system, rebooted the machine, and tried to start the process. The same error persits.
Here is the extract from /usr/sbin/swapinfo:
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 10485760 0 10485760 0% 0 - 1 /dev/vg00/lvol9
reserve - 82888 -82888
memory 3160672 9056 3151616 0%
..
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО01-10-2005 07:16 AM
тАО01-10-2005 07:16 AM
Re: Issue with ENOMEM - what could be causing it ??
* Tunable parameters
STRMSGSZ 65535
dnlc_hash_locks 512
max_thread_proc 3000
maxdsiz 2063835136
maxdsiz_64bit 4000000000
maxfiles 2048
maxfiles_lim 2048
maxssiz 0X800000
maxssiz_64bit 0X800000
maxswapchunks 16384
maxtsiz 0X4000000
maxtsiz_64bit 0X40000000
maxusers 512
ncallout 6000
nfile 4097
nkthread 6000
nproc 2048
nstrpty 60
shmmax 0X19000000
Any thoughts?
Thanks.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО01-10-2005 07:05 PM
тАО01-10-2005 07:05 PM
Re: Issue with ENOMEM - what could be causing it ??
maxdsiz_64bit to 4000000000 - its not really helping. Would I need to change certain other settings as well? Please suggest...
Also, I am able to bring up this product on certain other HP-UX machines that had similar settings (the original default settings). But the difference was, there weren't certain other products installed on them.
However as you can see from above, there is enough free memory, enough to start my product even if those other products were on the server.
I am wondering why it fails on certain machines and not failing on certain others - all machines mostly have similar settings.
I also ran gdb on the core file and it has to say the following:
#0 0xc1d29e3c in MemAllocPtr (pool=0x7b04e06a, size=2139039032,
flags=3243667608) at heap.c:991
Please suggest. Appreciate your suggestions. Thanks.