All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: Michael Buesch <mb@bu3sch.de>,
	pm list <linux-pm@lists.linux-foundation.org>,
	Alan Stern <stern@rowland.harvard.edu>,
	Len Brown <lenb@kernel.org>, LKML <linux-kernel@vger.kernel.org>,
	Pavel Machek <pavel@ucw.cz>,
	bcm43xx-dev@lists.berlios.de,
	Alessandro Rubini <rubini@vision.unipv.it>,
	Richard Purdie <rpurdie@rpsys.net>
Subject: [PATCH -mm 3/5] HWRNG: Add possibility to remove hwrng devices during suspend/resume
Date: Fri, 25 Jan 2008 01:35:24 +0100	[thread overview]
Message-ID: <200801250135.26009.rjw@sisk.pl> (raw)
In-Reply-To: <200801250127.21966.rjw@sisk.pl>

From: Rafael J. Wysocki <rjw@sisk.pl>

Make it possible to unregister a Hardware Random Number Generator
device object in a safe way during a suspend/resume cycle.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Michael Buesch <mb@bu3sch.de>
---
 drivers/char/hw_random/core.c |   10 +++++-----
 include/linux/hw_random.h     |   10 +++++++++-
 2 files changed, 14 insertions(+), 6 deletions(-)

Index: linux-2.6.24-rc8-mm1/drivers/char/hw_random/core.c
===================================================================
--- linux-2.6.24-rc8-mm1.orig/drivers/char/hw_random/core.c
+++ linux-2.6.24-rc8-mm1/drivers/char/hw_random/core.c
@@ -234,11 +234,11 @@ static DEVICE_ATTR(rng_available, S_IRUG
 		   NULL);
 
 
-static void unregister_miscdev(void)
+static void unregister_miscdev(bool suspended)
 {
 	device_remove_file(rng_miscdev.this_device, &dev_attr_rng_available);
 	device_remove_file(rng_miscdev.this_device, &dev_attr_rng_current);
-	misc_deregister(&rng_miscdev);
+	__misc_deregister(&rng_miscdev, suspended);
 }
 
 static int register_miscdev(void)
@@ -313,7 +313,7 @@ out:
 }
 EXPORT_SYMBOL_GPL(hwrng_register);
 
-void hwrng_unregister(struct hwrng *rng)
+void __hwrng_unregister(struct hwrng *rng, bool suspended)
 {
 	int err;
 
@@ -332,11 +332,11 @@ void hwrng_unregister(struct hwrng *rng)
 		}
 	}
 	if (list_empty(&rng_list))
-		unregister_miscdev();
+		unregister_miscdev(suspended);
 
 	mutex_unlock(&rng_mutex);
 }
-EXPORT_SYMBOL_GPL(hwrng_unregister);
+EXPORT_SYMBOL_GPL(__hwrng_unregister);
 
 
 MODULE_DESCRIPTION("H/W Random Number Generator (RNG) driver");
Index: linux-2.6.24-rc8-mm1/include/linux/hw_random.h
===================================================================
--- linux-2.6.24-rc8-mm1.orig/include/linux/hw_random.h
+++ linux-2.6.24-rc8-mm1/include/linux/hw_random.h
@@ -44,7 +44,15 @@ struct hwrng {
 /** Register a new Hardware Random Number Generator driver. */
 extern int hwrng_register(struct hwrng *rng);
 /** Unregister a Hardware Random Number Generator driver. */
-extern void hwrng_unregister(struct hwrng *rng);
+extern void __hwrng_unregister(struct hwrng *rng, bool suspended);
+static inline void hwrng_unregister(struct hwrng *rng)
+{
+	__hwrng_unregister(rng, false);
+}
+static inline void hwrng_unregister_suspended(struct hwrng *rng)
+{
+	__hwrng_unregister(rng, true);
+}
 
 #endif /* __KERNEL__ */
 #endif /* LINUX_HWRANDOM_H_ */


  parent reply	other threads:[~2008-01-25  0:49 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-01-25  0:27 [PATCH -mm 0/5] b43: Fix suspend/resume deadlock Rafael J. Wysocki
2008-01-25  0:27 ` Rafael J. Wysocki
2008-01-25  0:30 ` [PATCH -mm 1/5] PM: Export device_pm_schedule_removal Rafael J. Wysocki
2008-01-25  0:30   ` Rafael J. Wysocki
2008-01-25  7:44   ` Pavel Machek
2008-01-25  7:44     ` Pavel Machek
2008-01-28 17:59   ` patch pm-export-device_pm_schedule_removal.patch added to gregkh-2.6 tree gregkh
2008-01-28 17:59     ` gregkh
2008-01-25  0:31 ` [PATCH -mm 2/5] Misc: Add possibility to remove misc devices during suspend/resume Rafael J. Wysocki
2008-01-25  0:31   ` Rafael J. Wysocki
2008-01-25  0:35 ` Rafael J. Wysocki [this message]
2008-01-25  0:35 ` [PATCH -mm 3/5] HWRNG: Add possibility to remove hwrng " Rafael J. Wysocki
2008-01-25  0:36 ` [PATCH -mm 4/5] Leds: Add possibility to remove leds classdevs " Rafael J. Wysocki
2008-01-25  0:36   ` Rafael J. Wysocki
2008-01-25  0:37 ` [PATCH -mm 5/5] b43: Avoid unregistering device objects during suspend Rafael J. Wysocki
2008-01-25  0:37   ` Rafael J. Wysocki
2008-01-25  7:47   ` Pavel Machek
2008-01-25  7:47     ` Pavel Machek
2008-01-25 10:13     ` Michael Buesch
2008-01-25 11:45       ` Rafael J. Wysocki
2008-01-25 11:45       ` Rafael J. Wysocki
2008-01-25 10:13     ` Michael Buesch
2008-01-25 14:58     ` Alan Stern
2008-01-25 14:58     ` Alan Stern
2008-01-25 21:16       ` Pavel Machek
2008-01-25 21:16       ` Pavel Machek

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=200801250135.26009.rjw@sisk.pl \
    --to=rjw@sisk.pl \
    --cc=akpm@linux-foundation.org \
    --cc=bcm43xx-dev@lists.berlios.de \
    --cc=lenb@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@lists.linux-foundation.org \
    --cc=mb@bu3sch.de \
    --cc=pavel@ucw.cz \
    --cc=rpurdie@rpsys.net \
    --cc=rubini@vision.unipv.it \
    --cc=stern@rowland.harvard.edu \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.