- 论坛徽章:
- 0
|
请教MAXEXECARGS问题!
This warning message indicates that the kernel table used for holding the program's arguments, environment (and so on) when an exec(S) system call is made, is not large enough to store all of this necessary data.
By default, this 'exec data' table is set to 100KB, in other words, 25 pages of 4KB. This table can be increased by locating and modifying this line:
unsigned int maxexecargs = 100*1024;
in the file /etc/conf/pack.d/kernel/space.c
This line is included in this portion of the file:
#else
int minProcSlots = 4;
unsigned min_free_callouts = 50;
unsigned int maxexecargs = 100*1024;
long kmdinterval = 15;
int bio_buf_min = 24;
int bio_mpbuf_min = 12;
#endif
Consider increasing this kernel parameter to a reasonably large value, for example, 150*1024.
After making these changes the kernel will need to be relinked and rebooted for the changes to take effect.
NOTE: You may also see the following lines in kernel/space.c:
#ifdef BULLSEYE
... (a few lines of code)
unsigned int maxexecargs = 4*1024;
...
Unless you have a SCO POS (Point-of-Sale) System, ignore this particular assignment of the value 4096 to maxexecargs. |
|