linux-hotplug.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Prarit Bhargava <prarit@sgi.com>
To: linux-hotplug@vger.kernel.org
Subject: Virtual Console Hotplug Leads to OOM
Date: Wed, 30 Mar 2005 16:30:23 +0000	[thread overview]
Message-ID: <424AD41F.1040309@sgi.com> (raw)

Colleagues,

I've identified the following critical issue where the hotplug subsystem 
can cause OOM-killer to run.  IMO this is a critical issue within 
hotplug -- in the case below, only the virtual console subsystem is 
responsible.

The virtual consoles that are being spawned are responsible for 2 
hotplug events for every console opened -- one on the opening of the 
console, and one on the closing of the console.

If you run the tty2_test which opens and closes ttys (attached to this 
email) you'll see THOUSANDS of hotplug events.  After running for 1 
minute on a 16p ia64 I had well over 4000 hotplug events.

If we're unlucky enough to fall below the low-water memory point at the 
same time tty2_test is spawning, the OOM-killer starts up.  Memory is 
taken up by the hotplug events ... and we're off into the weeds.

The issue with the virtual console code is that it uses the class_simple 
library.  This is a problem as the library pre-defines a global kset 
parent as class_obj (or at least AFAICT).  This parent is used by ALL 
subsystems using the class_simple, not just the virtual console subsystem.

This parent has a pointer to allow hotplug slot operations for all it's 
children (including the virtual consoles).  IMO zero-ing this pointer 
out is not a valid option as this would break hotplug op's for many 
other subystems.

** I did notice that the class struct has it's own hotplug value -- 
can/should this be used to override the parent's hotplug operations? **

P.




-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_ide95&alloc_id\x14396&op=click
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

             reply	other threads:[~2005-03-30 16:30 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-03-30 16:30 Prarit Bhargava [this message]
2005-03-30 16:31 ` Virtual Console Hotplug Leads to OOM Prarit Bhargava
2005-04-01  0:17 ` Greg KH
2005-04-01 13:42 ` Prarit Bhargava

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=424AD41F.1040309@sgi.com \
    --to=prarit@sgi.com \
    --cc=linux-hotplug@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).