ALSA: ymfpci: Use kmalloc for register buffer for PM
authorTakashi Iwai <tiwai@suse.de>
Thu, 22 Nov 2012 15:23:22 +0000 (16:23 +0100)
committerTakashi Iwai <tiwai@suse.de>
Thu, 22 Nov 2012 16:48:05 +0000 (17:48 +0100)
Th buffer to save registers for PM is enough small for kmalloc(), not
necessary to use vmalloc().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/ymfpci/ymfpci_main.c

index 3a6f03f9b02f6bf9645dd3f473396881e3fed1ad..60e8cb24bd4459d36ec000db9edf56d6c04d5c40 100644 (file)
@@ -25,7 +25,6 @@
 #include <linux/pci.h>
 #include <linux/sched.h>
 #include <linux/slab.h>
-#include <linux/vmalloc.h>
 #include <linux/mutex.h>
 #include <linux/module.h>
 
@@ -2261,7 +2260,7 @@ static int snd_ymfpci_free(struct snd_ymfpci *chip)
 #endif
 
 #ifdef CONFIG_PM_SLEEP
-       vfree(chip->saved_regs);
+       kfree(chip->saved_regs);
 #endif
        if (chip->irq >= 0)
                free_irq(chip->irq, chip);
@@ -2471,7 +2470,8 @@ int __devinit snd_ymfpci_create(struct snd_card *card,
        }
 
 #ifdef CONFIG_PM_SLEEP
-       chip->saved_regs = vmalloc(YDSXGR_NUM_SAVED_REGS * sizeof(u32));
+       chip->saved_regs = kmalloc(YDSXGR_NUM_SAVED_REGS * sizeof(u32),
+                                  GFP_KERNEL);
        if (chip->saved_regs == NULL) {
                snd_ymfpci_free(chip);
                return -ENOMEM;