From patchwork Wed May 28 04:07:53 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Amos Kong X-Patchwork-Id: 353224 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id AD5B114008B for ; Wed, 28 May 2014 14:08:10 +1000 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1750878AbaE1EID (ORCPT ); Wed, 28 May 2014 00:08:03 -0400 Received: from mx1.redhat.com ([209.132.183.28]:56759 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750900AbaE1EIB (ORCPT ); Wed, 28 May 2014 00:08:01 -0400 Received: from int-mx10.intmail.prod.int.phx2.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id s4S47v10009644 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 28 May 2014 00:07:57 -0400 Received: from z.redhat.com (vpn1-112-233.nay.redhat.com [10.66.112.233]) by int-mx10.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id s4S47snD005776; Wed, 28 May 2014 00:07:55 -0400 From: Amos Kong To: geert@linux-m68k.org, linux-m68k@vger.kernel.org Cc: netdev@vger.kernel.org, davem@davemloft.net Subject: [PATCH] mvme147: use correct order of ram pages Date: Wed, 28 May 2014 12:07:53 +0800 Message-Id: <1401250073-16603-1-git-send-email-akong@redhat.com> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.23 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org 16K is 2^2 * PAGE_SIZE, so the page order should be 2, not 3. This patch uses get_order() to get correct order, and fixes one typo in comment. Signed-off-by: Amos Kong --- This patch wasn't built. Geert, can you help to test it? I don't know if it needs a head file by using get_order(). --- drivers/net/ethernet/amd/mvme147.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/drivers/net/ethernet/amd/mvme147.c b/drivers/net/ethernet/amd/mvme147.c index 0e8399d..4e98bf8 100644 --- a/drivers/net/ethernet/amd/mvme147.c +++ b/drivers/net/ethernet/amd/mvme147.c @@ -26,10 +26,11 @@ #include #include -/* We have 16834 bytes of RAM for the init block and buffers. This places +/* We have 16384 bytes of RAM for the init block and buffers. This places * an upper limit on the number of buffers we can use. NetBSD uses 8 Rx * buffers and 2 Tx buffers. */ +#define M147LANCE_RAM_SIZE 16384 /* 16K */ #define LANCE_LOG_TX_BUFFERS 1 #define LANCE_LOG_RX_BUFFERS 3 @@ -111,7 +112,7 @@ struct net_device * __init mvme147lance_probe(int unit) dev->dev_addr); lp = netdev_priv(dev); - lp->ram = __get_dma_pages(GFP_ATOMIC, 3); /* 16K */ + lp->ram = __get_dma_pages(GFP_ATOMIC, get_order(M147LANCE_RAM_SIZE)); if (!lp->ram) { printk("%s: No memory for LANCE buffers\n", dev->name); free_netdev(dev); @@ -134,7 +135,7 @@ struct net_device * __init mvme147lance_probe(int unit) err = register_netdev(dev); if (err) { - free_pages(lp->ram, 3); + free_pages(lp->ram, get_order(M147LANCE_RAM_SIZE)); free_netdev(dev); return ERR_PTR(err); } @@ -193,7 +194,7 @@ void __exit cleanup_module(void) { struct m147lance_private *lp = netdev_priv(dev_mvme147_lance); unregister_netdev(dev_mvme147_lance); - free_pages(lp->ram, 3); + free_pages(lp->ram, get_order(M147LANCE_RAM_SIZE)); free_netdev(dev_mvme147_lance); }