×
INTELLIGENT WORK FORUMS
FOR COMPUTER PROFESSIONALS

Log In

Come Join Us!

Are you a
Computer / IT professional?
Join Tek-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!
  • Students Click Here

*Tek-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Students Click Here

Jobs

Process Table Flood?

Process Table Flood?

Process Table Flood?

(OP)
What happened is, a user was writing a script and was trying to debug a problem with it. The script had a "sleep 1" in it, but the user wanted to increase the sleep time without altering the script. The user created another script called "sleep" in their home directory with one line in it, "sleep 30". They then made their home directory the first directory in their PATH so it would find their version of "sleep" instead of the system version. They then ran their main script.

If the one line in the "sleep" script had been "/usr/bin/sleep 30", then everything would have been fine. As it was written, with no path, it was just rerunning itself recursively. This cause the machine to lock up tighter than a drum. A few things kept running very slowly, but many things just froze and many things crashed. It was impossible to log in.

So, my question is, how is this possible? I was under the impression that process table flooding was a thing of the past due to limiting the number of processes per user or process tree or some other factor.

Also, how can this be prevented? Is there a system tuning parameter that can limit this kind of thing? This was a simple one line script run my a non-privileged user. This shouldn't be possible.

Just for background, this is a Solaris 10 system, fully patched and up-to-date.

RE: Process Table Flood?

I think maybe the v.v_maxup parameter in /etc/system is what you're looking for?

On my "untuned" Solaris 10 x86 VM these are the values shown by sysdef:

CODE -->

*
* Tunable Parameters
*
21295104        maximum memory allowed in buffer cache (bufhwm)
   16250        maximum number of processes (v.v_proc)
      99        maximum global priority in sys class (MAXCLSYSPRI)
   16245        maximum processes per user id (v.v_maxup) 

So out of the box it doesn't give much headroom between global processes and those of an individual user.

Annihilannic
tgmlify - code syntax highlighting for your tek-tips posts

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Tek-Tips Forums free from inappropriate posts.
The Tek-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Tek-Tips forums is a member-only feature.

Click Here to join Tek-Tips and talk with other members! Already a Member? Login

Close Box

Join Tek-Tips® Today!

Join your peers on the Internet's largest technical computer professional community.
It's easy to join and it's free.

Here's Why Members Love Tek-Tips Forums:

Register now while it's still free!

Already a member? Close this window and log in.

Join Us             Close