Kobject: convert drivers/base/core.c to use kobject_init/add_ng()
[safe/jmp/linux-2.6] / drivers / base / dmapool.c
index 9406259..b5034dc 100644 (file)
@@ -2,12 +2,12 @@
 #include <linux/device.h>
 #include <linux/mm.h>
 #include <asm/io.h>            /* Needed for i386 to build */
-#include <asm/scatterlist.h>   /* Needed for i386 to build */
 #include <linux/dma-mapping.h>
 #include <linux/dmapool.h>
 #include <linux/slab.h>
 #include <linux/module.h>
 #include <linux/poison.h>
+#include <linux/sched.h>
 
 /*
  * Pool allocator ... wraps the dma_alloc_coherent page allocator, so
@@ -126,7 +126,7 @@ dma_pool_create (const char *name, struct device *dev,
        } else if (allocation < size)
                return NULL;
 
-       if (!(retval = kmalloc (sizeof *retval, GFP_KERNEL)))
+       if (!(retval = kmalloc_node (sizeof *retval, GFP_KERNEL, dev_to_node(dev))))
                return retval;
 
        strlcpy (retval->name, name, sizeof retval->name);
@@ -301,7 +301,7 @@ restart:
                if (mem_flags & __GFP_WAIT) {
                        DECLARE_WAITQUEUE (wait, current);
 
-                       current->state = TASK_INTERRUPTIBLE;
+                       __set_current_state(TASK_INTERRUPTIBLE);
                        add_wait_queue (&pool->waitq, &wait);
                        spin_unlock_irqrestore (&pool->lock, flags);
 
@@ -365,7 +365,7 @@ dma_pool_free (struct dma_pool *pool, void *vaddr, dma_addr_t dma)
        unsigned long           flags;
        int                     map, block;
 
-       if ((page = pool_find_page (pool, dma)) == 0) {
+       if ((page = pool_find_page(pool, dma)) == NULL) {
                if (pool->dev)
                        dev_err(pool->dev, "dma_pool_free %s, %p/%lx (bad dma)\n",
                                pool->name, vaddr, (unsigned long) dma);