From patchwork Fri Sep 5 14:36:26 2008 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: ehea: Fix DLPAR memory handling From: Hannes Hering X-Patchwork-Id: 186 Message-Id: <200809051636.26545.hannes.hering@gmx.de> To: jeff@garzik.org Cc: themann@de.ibm.com, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, raisch@de.ibm.com, ossrosch@linux.vnet.ibm.com, linuxppc-dev@ozlabs.org, ossthema@de.ibm.com, osstklei@de.ibm.com Date: Fri, 5 Sep 2008 16:36:26 +0200 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 diff -Nurp -X dontdiff linux-2.6.27-rc5/drivers/net/ehea/ehea_qmr.c patched_kernel/drivers/net/ehea/ehea_qmr.c --- linux-2.6.27-rc5/drivers/net/ehea/ehea_qmr.c 2008-08-29 00:52:02.000000000 +0200 +++ patched_kernel/drivers/net/ehea/ehea_qmr.c 2008-09-05 15:31:30.000000000 +0200 @@ -595,7 +595,8 @@ static int ehea_create_busmap_callback(u 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;