linux-acpi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Toshi Kani <toshi.kani@hp.com>
To: linux-acpi@vger.kernel.org, lenb@kernel.org
Cc: linux-kernel@vger.kernel.org, bhelgaas@google.com,
	liuj97@gmail.com, isimatu.yasuaki@jp.fujitsu.com,
	Toshi Kani <toshi.kani@hp.com>
Subject: [PATCH v2 0/4] ACPI: Refactor system notify handling
Date: Thu,  6 Sep 2012 17:40:24 -0600	[thread overview]
Message-ID: <1346974828-12500-1-git-send-email-toshi.kani@hp.com> (raw)

This patchset updates the ACPI system-level (ex. hotplug)
notify handling with a new .sys_notify interface.  It provides
the following changes:

- Allow ACPI drivers to register their system-level (hotplug)
  notify handlers to a new .sys_notify interface through their
  acpi_driver table.  This removes redundant ACPI namespace
  walks from ACPI drivers for faster booting.  The global notify
  handler acpi_bus_notify() is called for all system-level ACPI
  device notifications, which then calls an appropriate driver's
  handler if any.  ACPI drivers no longer need to register or
  unregister driver's handlers to each device object in ACPI
  namespace.
 
- Support dynamic ACPI namespace with LoadTable & Unload opcode
  without any changes in ACPI drivers.  There is no need to 
  register / unregister handlers to ACPI device objects that are
  being loaded to / unloaded from ACPI namespace.

- Allow ACPI drivers to use a common hotplug handler when it is
  implemented.  It removes functional conflict between driver's
  notify handler and the global notify handler acpi_bus_notify().
  acpi_bus_notify() only calls an appropriate notify handler if
  any.

Note that the changes maintain backward compatibility for ACPI
drivers.  Any drivers registered their hotplug handlers through
the existing interfaces, such as acpi_install_notify_handler()
and register_acpi_bus_notifier(), will continue to work as before.

v2:
 - Protected unbound driver from unloading when calling .sys_notify.
 - Changed acpi_bus_notify() to call acpi_bus_notify_list first for
   maintaining the original order.

---
Toshi Kani (4):
 ACPI: Support system notify handler via .sys_notify
 ACPI: Update processor_driver to use .sys_notify
 ACPI: Update acpi_memhotplug to use .sys_notify
 ACPI: Update container to use .sys_notify

---
 drivers/acpi/acpi_memhotplug.c  |   93 +-------------------------------------
 drivers/acpi/bus.c              |   64 ++++++++++++++++++++-------
 drivers/acpi/container.c        |   66 +--------------------------
 drivers/acpi/processor_driver.c |   82 +++-------------------------------
 drivers/acpi/scan.c             |   83 ++++++++++++++++++++++++++++++++++
 include/acpi/acpi_bus.h         |    6 +++
 6 files changed, 150 insertions(+), 244 deletions(-)

             reply	other threads:[~2012-09-06 23:40 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-06 23:40 Toshi Kani [this message]
2012-09-06 23:40 ` [PATCH v2 1/4] ACPI: Support system notify handler via .sys_notify Toshi Kani
2012-09-06 23:40 ` [PATCH v2 2/4] ACPI: Update processor_driver to use .sys_notify Toshi Kani
2012-09-06 23:40 ` [PATCH v2 3/4] ACPI: Update acpi_memhotplug " Toshi Kani
2012-09-06 23:40 ` [PATCH v2 4/4] ACPI: Update container " Toshi Kani
2012-10-09 13:55 ` [PATCH v2 0/4] ACPI: Refactor system notify handling Toshi Kani
2012-10-11 15:36   ` Toshi Kani

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=1346974828-12500-1-git-send-email-toshi.kani@hp.com \
    --to=toshi.kani@hp.com \
    --cc=bhelgaas@google.com \
    --cc=isimatu.yasuaki@jp.fujitsu.com \
    --cc=lenb@kernel.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=liuj97@gmail.com \
    /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).