LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* [PATCH 1/7] UML - IRQ handler tidying
@ 2007-02-07 19:47 Jeff Dike
  0 siblings, 0 replies; only message in thread
From: Jeff Dike @ 2007-02-07 19:47 UTC (permalink / raw)
  To: akpm; +Cc: linux-kernel, user-mode-linux-devel

Tidying the irq code -
	make a variable static
	activate_fd can call kmalloc directly since it's now kernel code
	added a no-locking comment
	fixed a style violation

Signed-off-by: Jeff Dike <jdike@addtoit.com>
--
 arch/um/kernel/irq.c   |    7 +++----
 arch/um/os-Linux/irq.c |    6 +++++-
 2 files changed, 8 insertions(+), 5 deletions(-)

Index: linux-2.6.18-mm/arch/um/kernel/irq.c
===================================================================
--- linux-2.6.18-mm.orig/arch/um/kernel/irq.c	2007-01-09 17:08:58.000000000 -0500
+++ linux-2.6.18-mm/arch/um/kernel/irq.c	2007-01-10 15:30:35.000000000 -0500
@@ -79,7 +79,7 @@ skip:
 	return 0;
 }
 
-struct irq_fd *active_fds = NULL;
+static struct irq_fd *active_fds = NULL;
 static struct irq_fd **last_irq_ptr = &active_fds;
 
 extern void free_irqs(void);
@@ -124,8 +124,8 @@ int activate_fd(int irq, int fd, int typ
 	if (err < 0)
 		goto out;
 
-	new_fd = um_kmalloc(sizeof(*new_fd));
 	err = -ENOMEM;
+	new_fd = kmalloc(sizeof(struct irq_fd), GFP_KERNEL);
 	if (new_fd == NULL)
 		goto out;
 
@@ -176,9 +176,8 @@ int activate_fd(int irq, int fd, int typ
 		 */
 		spin_unlock_irqrestore(&irq_lock, flags);
 		kfree(tmp_pfd);
-		tmp_pfd = NULL;
 
-		tmp_pfd = um_kmalloc(n);
+		tmp_pfd = kmalloc(n, GFP_KERNEL);
 		if (tmp_pfd == NULL)
 			goto out_kfree;
 
Index: linux-2.6.18-mm/arch/um/os-Linux/irq.c
===================================================================
--- linux-2.6.18-mm.orig/arch/um/os-Linux/irq.c	2007-01-10 15:08:33.000000000 -0500
+++ linux-2.6.18-mm/arch/um/os-Linux/irq.c	2007-01-10 15:34:43.000000000 -0500
@@ -20,6 +20,10 @@
 #include "os.h"
 #include "um_malloc.h"
 
+/*
+ * Locked by irq_lock in arch/um/kernel/irq.c.  Changed by os_create_pollfd
+ * and os_free_irq_by_cb, which are called under irq_lock.
+ */
 static struct pollfd *pollfds = NULL;
 static int pollfds_num = 0;
 static int pollfds_size = 0;
@@ -58,7 +62,7 @@ int os_create_pollfd(int fd, int events,
 	if (pollfds_num == pollfds_size) {
 		if (size_tmpfds <= pollfds_size * sizeof(pollfds[0])) {
 			/* return min size needed for new pollfds area */
-			return((pollfds_size + 1) * sizeof(pollfds[0]));
+			return (pollfds_size + 1) * sizeof(pollfds[0]);
 		}
 
 		if (pollfds != NULL) {


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2007-02-07 19:54 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-02-07 19:47 [PATCH 1/7] UML - IRQ handler tidying Jeff Dike

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).