1826056 Members
4298 Online
109690 Solutions
New Discussion

kthread: table is full

 
mark_238
Advisor

kthread: table is full

vmunix: kthread: table is full
Apr 23 11:07:47 vmunix: kthread: table is full
Apr 23 11:15:17 above message repeats 10 times


it appears for a while in syslog and then did not occur anymore. what should i do?
15 REPLIES 15
Alex Glennie
Honored Contributor

Re: kthread: table is full

This error is associated with the nkthread kernel parameter which specifies the maximum number of threads that all processes combined can run, system-wide, at any given time.

You can increase the nkthread parameter or nproc, depending on how heavily
threads are used by your applications/processes.
Michael Tully
Honored Contributor

Re: kthread: table is full

You have a kernel parameter that is filling up. The one in question is 'nkthread' and if necessary 'nproc'. If your not sure what to set them to (increase) post the output of this:

# kmtune -l -q nkthread

# kmtune -l -q nproc
Anyone for a Mutiny ?
mark_238
Advisor

Re: kthread: table is full

#kmtune -l -q nkthread
Parameter: nkthread
Value: 2048
Default: (((NPROC*7)/4)+16)
Minimum: -
Module: -


#kmtune -l -q nproc
Parameter: nproc
Value: 2052
Default: (20+8*MAXUSERS)
Minimum: -
Module: -


thanks for your advise!
Michael Tully
Honored Contributor

Re: kthread: table is full

Hi Mark,

You could safely double the amount of the 'maxusers' parameter. So as long as 'maxusers' is a set value and not a formula, you should be okay. If it is a formula, place post it.

# kmtune -l -q maxusers

Regards
Michael

Anyone for a Mutiny ?
malay boy
Trusted Contributor

Re: kthread: table is full

It seems that your khtread parameter in kernel are reaching max.You can do this by increasing the maxuser.

good luck

regards
Mb
There are three person in my team-Me ,myself and I.
Radhakrishnan Venkatara
Trusted Contributor

Re: kthread: table is full

hi,

kthread is issuing the read alarm.
u can adjust it using tunnable parameters nproc.

be careful making any changes of this values. it can hurt your system performance.



radhakrishnan
Negative thinking is a highest form of Intelligence
mark_238
Advisor

Re: kthread: table is full

#kmtune -l -q maxusers
Parameter: maxusers
Value: 128
Default: 32
Minimum: -
Module: -
Michael Tully
Honored Contributor

Re: kthread: table is full

Because nkthread and nproc are both formulas, and maxusers is not, it will be safe to increase it (maxusers) to 256.

Here is the method, you can either use sam or from the command line like this:

# cd /stand/build
# /usr/lbin/sysadm/system_prep -s system
# vi system (and add an entry or change maxusers 256) to near where other parameters are stated near the bottom)
save the file

# /usr/sbin/mk_kernel -s system
# /usr/sbin/kmupdate

Take note of the existing kernel name, vmunix.prev

# cd /

Reboot the system when convenient

# shutdown -r -y 0

This should fix it.

Regards
Michael
Anyone for a Mutiny ?
T G Manikandan
Honored Contributor

Re: kthread: table is full

You need to increase the value of nkthread.

this parameter values increases when you increase nproc.
So it is dependent like

nkthread-->nproc-->maxusers

So if you increase maxusers then,automatically nproc and nkthread values get bumped up.

So check this hp DOC to find out the present usage values of nkthread

http://www1.itrc.hp.com/service/cki/docDisplay.do?docLocale=en_US&docId=200000063208147
mark_238
Advisor

Re: kthread: table is full

okay.. now i got 2 options

1) increase the value of nkthread
2) increase the value of maxusers

which one should i go for?
T G Manikandan
Honored Contributor

Re: kthread: table is full

#kmtune -l -q nkthread
Parameter: nkthread
Value: 2048
Default: (((NPROC*7)/4)+16)
Minimum: -
Module: -


#kmtune -l -q nproc
Parameter: nproc
Value: 2052
Default: (20+8*MAXUSERS)
Minimum: -
Module: -

here if you can see

Increasing maxusers will do the changes


Thanks
mark_238
Advisor

Re: kthread: table is full

right, pple, i got this error "fork: too many process"

even a bdf, telnet session also cant work.

what i did is to reboot the server.
Radhakrishnan Venkatara
Trusted Contributor

Re: kthread: table is full

"fork: too many process"


this errors occurs bcoz the configuration of your parameters are high that doesn't suite current system configurations.

normally when u configure parameters maxusers,npty etc..

system resevers some memory which
creates problem.

another thing check the maxuprc value .

bcoz this parameter suggests the maximum number of user process per user.

try have and eye on our configuration and kernel settings.

backup ur kernel everything before doing anything.

have a nice day

radhakrishnan
Negative thinking is a highest form of Intelligence
Klaus Crusius
Trusted Contributor

Re: kthread: table is full


The kernel parameters knthreads and nproc on your system do acutally not use the formulas (which are the default settings), but have been modified to be constants. Apparently the nkthreads is far too low compared to nproc.
I suggest to re-install the defaults for nproc and nkthreads and set maxusers to 256 or higher.
Also follow the advise of radhak. and check maxuprc

klaus
There is a live before death!
mark_238
Advisor

Re: kthread: table is full

just to share... on that day when i have to reboot my system due to the "fork:too many processes"

using sar , with option -uf i got the below
1)usr=301
2)sys=151
3)wio=150
4)idle=104

with option -df i got
1)busy=151.79
2)avque=0.50
3)r+w/s=152
4)blk/s=19
5)avwait=0.00
6)avserv=-0.01

what do u guys think?