Procházet zdrojové kódy

ehea: Fix DLPAR memory handling

The ehea busmap must be allocated only once in the first of many calls of the
ehea_create_busmap_callback.

Signed-off-by: Hannes Hering <hering2@de.ibm.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Hannes Hering před 17 roky
rodič
revize
70666c7195
1 změnil soubory, kde provedl 2 přidání a 1 odebrání
  1. 2 1
      drivers/net/ehea/ehea_qmr.c

+ 2 - 1
drivers/net/ehea/ehea_qmr.c

@@ -595,7 +595,8 @@ static int ehea_create_busmap_callback(unsigned long pfn,
 	end_section = start_section + ((nr_pages * PAGE_SIZE) / EHEA_SECTSIZE);
 	mr_len = *(unsigned long *)arg;
 
-	ehea_bmap = kzalloc(sizeof(struct ehea_bmap), GFP_KERNEL);
+	if (!ehea_bmap)
+		ehea_bmap = kzalloc(sizeof(struct ehea_bmap), GFP_KERNEL);
 	if (!ehea_bmap)
 		return -ENOMEM;