diff --git a/drivers/staging/vme/devices/vme_pio2_gpio.c b/drivers/staging/vme/devices/vme_pio2_gpio.c index c64776f71809..da34d5529f51 100644 --- a/drivers/staging/vme/devices/vme_pio2_gpio.c +++ b/drivers/staging/vme/devices/vme_pio2_gpio.c @@ -191,11 +191,11 @@ int pio2_gpio_init(struct pio2_card *card) int retval = 0; char *label; - label = kmalloc(PIO2_NUM_CHANNELS, GFP_KERNEL); + label = kasprintf(GFP_KERNEL, + "%s@%s", driver_name, dev_name(&card->vdev->dev)); if (label == NULL) return -ENOMEM; - sprintf(label, "%s@%s", driver_name, dev_name(&card->vdev->dev)); card->gc.label = label; card->gc.ngpio = PIO2_NUM_CHANNELS;