From: Jiang Liu <liuj97@gmail.com> To: Andrew Morton <akpm@linux-foundation.org> Cc: Jiang Liu <jiang.liu@huawei.com>, David Rientjes <rientjes@google.com>, Wen Congyang <wency@cn.fujitsu.com>, Mel Gorman <mgorman@suse.de>, Minchan Kim <minchan@kernel.org>, KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>, Michal Hocko <mhocko@suse.cz>, James Bottomley <James.Bottomley@HansenPartnership.com>, Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>, David Howells <dhowells@redhat.com>, Mark Salter <msalter@redhat.com>, Jianguo Wu <wujianguo@huawei.com>, linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org, Florian Tobias Schandinat <FlorianSchandinat@gmx.de>, linux-fbdev@vger.kernel.org Subject: [PATCH v8, part3 06/14] mm, acornfb: use free_reserved_area() to simplify code Date: Sun, 26 May 2013 21:38:34 +0800 [thread overview] Message-ID: <1369575522-26405-7-git-send-email-jiang.liu@huawei.com> (raw) In-Reply-To: <1369575522-26405-1-git-send-email-jiang.liu@huawei.com> Use common help function free_reserved_area() to simplify code. Signed-off-by: Jiang Liu <jiang.liu@huawei.com> Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de> Cc: linux-fbdev@vger.kernel.org Cc: linux-kernel@vger.kernel.org --- drivers/video/acornfb.c | 45 ++++++--------------------------------------- 1 file changed, 6 insertions(+), 39 deletions(-) diff --git a/drivers/video/acornfb.c b/drivers/video/acornfb.c index 6488a73..8f7374f 100644 --- a/drivers/video/acornfb.c +++ b/drivers/video/acornfb.c @@ -1180,42 +1180,6 @@ static int acornfb_detect_monitortype(void) return 4; } -/* - * This enables the unused memory to be freed on older Acorn machines. - * We are freeing memory on behalf of the architecture initialisation - * code here. - */ -static inline void -free_unused_pages(unsigned int virtual_start, unsigned int virtual_end) -{ - int mb_freed = 0; - - /* - * Align addresses - */ - virtual_start = PAGE_ALIGN(virtual_start); - virtual_end = PAGE_ALIGN(virtual_end); - - while (virtual_start < virtual_end) { - struct page *page; - - /* - * Clear page reserved bit, - * set count to 1, and free - * the page. - */ - page = virt_to_page(virtual_start); - ClearPageReserved(page); - init_page_count(page); - free_page(virtual_start); - - virtual_start += PAGE_SIZE; - mb_freed += PAGE_SIZE / 1024; - } - - printk("acornfb: freed %dK memory\n", mb_freed); -} - static int acornfb_probe(struct platform_device *dev) { unsigned long size; @@ -1312,10 +1276,13 @@ static int acornfb_probe(struct platform_device *dev) #endif #if defined(HAS_VIDC) /* - * Archimedes/A5000 machines use a fixed address for their - * framebuffers. Free unused pages + * We are freeing memory on behalf of the architecture initialisation + * code here. Archimedes/A5000 machines use a fixed address for their + * framebuffers. */ - free_unused_pages(PAGE_OFFSET + size, PAGE_OFFSET + MAX_SIZE); + free_reserved_area((void *)(PAGE_OFFSET + size), + (void *)PAGE_ALIGN(PAGE_OFFSET + MAX_SIZE), + -1, "acornfb"); #endif fb_info.fix.smem_len = size; -- 1.8.1.2 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
WARNING: multiple messages have this Message-ID (diff)
From: Jiang Liu <liuj97@gmail.com> To: Andrew Morton <akpm@linux-foundation.org> Cc: Jiang Liu <jiang.liu@huawei.com>, David Rientjes <rientjes@google.com>, Wen Congyang <wency@cn.fujitsu.com>, Mel Gorman <mgorman@suse.de>, Minchan Kim <minchan@kernel.org>, KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>, Michal Hocko <mhocko@suse.cz>, James Bottomley <James.Bottomley@HansenPartnership.com>, Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>, David Howells <dhowells@redhat.com>, Mark Salter <msalter@redhat.com>, Jianguo Wu <wujianguo@huawei.com>, linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org, Florian Tobias Schandinat <FlorianSchandinat@gmx.de>, linux-fbdev@vger.kernel.org Subject: [PATCH v8, part3 06/14] mm, acornfb: use free_reserved_area() to simplify code Date: Sun, 26 May 2013 21:38:34 +0800 [thread overview] Message-ID: <1369575522-26405-7-git-send-email-jiang.liu@huawei.com> (raw) Message-ID: <20130526133834.YwTk3FEiFlq_PBTS_CWjcgmzPPd6oW3qiTDV-ZqlOEI@z> (raw) In-Reply-To: <1369575522-26405-1-git-send-email-jiang.liu@huawei.com> Use common help function free_reserved_area() to simplify code. Signed-off-by: Jiang Liu <jiang.liu@huawei.com> Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de> Cc: linux-fbdev@vger.kernel.org Cc: linux-kernel@vger.kernel.org --- drivers/video/acornfb.c | 45 ++++++--------------------------------------- 1 file changed, 6 insertions(+), 39 deletions(-) diff --git a/drivers/video/acornfb.c b/drivers/video/acornfb.c index 6488a73..8f7374f 100644 --- a/drivers/video/acornfb.c +++ b/drivers/video/acornfb.c @@ -1180,42 +1180,6 @@ static int acornfb_detect_monitortype(void) return 4; } -/* - * This enables the unused memory to be freed on older Acorn machines. - * We are freeing memory on behalf of the architecture initialisation - * code here. - */ -static inline void -free_unused_pages(unsigned int virtual_start, unsigned int virtual_end) -{ - int mb_freed = 0; - - /* - * Align addresses - */ - virtual_start = PAGE_ALIGN(virtual_start); - virtual_end = PAGE_ALIGN(virtual_end); - - while (virtual_start < virtual_end) { - struct page *page; - - /* - * Clear page reserved bit, - * set count to 1, and free - * the page. - */ - page = virt_to_page(virtual_start); - ClearPageReserved(page); - init_page_count(page); - free_page(virtual_start); - - virtual_start += PAGE_SIZE; - mb_freed += PAGE_SIZE / 1024; - } - - printk("acornfb: freed %dK memory\n", mb_freed); -} - static int acornfb_probe(struct platform_device *dev) { unsigned long size; @@ -1312,10 +1276,13 @@ static int acornfb_probe(struct platform_device *dev) #endif #if defined(HAS_VIDC) /* - * Archimedes/A5000 machines use a fixed address for their - * framebuffers. Free unused pages + * We are freeing memory on behalf of the architecture initialisation + * code here. Archimedes/A5000 machines use a fixed address for their + * framebuffers. */ - free_unused_pages(PAGE_OFFSET + size, PAGE_OFFSET + MAX_SIZE); + free_reserved_area((void *)(PAGE_OFFSET + size), + (void *)PAGE_ALIGN(PAGE_OFFSET + MAX_SIZE), + -1, "acornfb"); #endif fb_info.fix.smem_len = size; -- 1.8.1.2
next prev parent reply other threads:[~2013-05-26 13:38 UTC|newest] Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top 2013-05-26 13:38 [PATCH v8, part3 00/14] accurately calculate memory statisitic information Jiang Liu 2013-05-26 13:38 ` [PATCH v8, part3 01/14] mm: change signature of free_reserved_area() to fix building warnings Jiang Liu 2013-05-26 13:38 ` Jiang Liu 2013-05-26 13:38 ` [PATCH v8, part3 02/14] mm: enhance free_reserved_area() to support poisoning memory with zero Jiang Liu 2013-05-26 13:38 ` Jiang Liu 2013-05-29 8:51 ` Vineet Gupta 2013-05-29 8:51 ` Vineet Gupta 2013-05-26 13:38 ` [PATCH v8, part3 03/14] mm/ARM64: kill poison_init_mem() Jiang Liu 2013-05-26 13:38 ` Jiang Liu 2013-05-28 13:43 ` Catalin Marinas 2013-05-28 13:43 ` Catalin Marinas 2013-05-26 13:38 ` [PATCH v8, part3 04/14] mm/x86: use free_reserved_area() to simplify code Jiang Liu 2013-05-26 13:38 ` Jiang Liu 2013-05-26 13:38 ` [PATCH v8, part3 05/14] mm/tile: use common help functions to free reserved pages Jiang Liu 2013-05-26 13:38 ` Jiang Liu 2013-05-26 13:38 ` Jiang Liu [this message] 2013-05-26 13:38 ` [PATCH v8, part3 06/14] mm, acornfb: use free_reserved_area() to simplify code Jiang Liu 2013-05-30 21:58 ` Andrew Morton 2013-05-30 21:58 ` Andrew Morton 2013-05-31 4:31 ` Jiang Liu 2013-05-31 4:31 ` Jiang Liu 2013-05-26 13:38 ` [PATCH v8, part3 07/14] mm: fix some trivial typos in comments Jiang Liu 2013-05-26 13:38 ` Jiang Liu 2013-05-26 13:38 ` [PATCH v8, part3 08/14] mm: use managed_pages to calculate default zonelist order Jiang Liu 2013-05-26 13:38 ` Jiang Liu 2013-05-26 13:38 ` [PATCH v8, part3 09/14] mm: accurately calculate zone->managed_pages for highmem zones Jiang Liu 2013-05-26 13:38 ` Jiang Liu 2013-05-26 13:38 ` [PATCH v8, part3 10/14] mm: use a dedicated lock to protect totalram_pages and zone->managed_pages Jiang Liu 2013-05-26 13:38 ` Jiang Liu 2013-06-11 20:00 ` Andrew Morton 2013-06-11 20:00 ` Andrew Morton 2013-06-12 2:17 ` Jiang Liu 2013-06-12 2:17 ` Jiang Liu 2013-05-26 13:38 ` [PATCH v8, part3 11/14] mm: make __free_pages_bootmem() only available at boot time Jiang Liu 2013-05-26 13:38 ` Jiang Liu 2013-05-26 13:38 ` [PATCH v8, part3 12/14] mm: correctly update zone->mamaged_pages Jiang Liu 2013-05-26 13:38 ` Jiang Liu 2013-05-27 0:52 ` Wanpeng Li 2013-05-27 0:52 ` Wanpeng Li 2013-05-27 0:52 ` Wanpeng Li 2013-05-27 13:57 ` Sergei Shtylyov 2013-05-27 13:57 ` Sergei Shtylyov 2013-05-28 14:20 ` Liu Jiang 2013-05-28 14:20 ` Liu Jiang 2013-05-26 13:38 ` [PATCH v8, part3 13/14] mm: concentrate modification of totalram_pages into the mm core Jiang Liu 2013-05-26 13:38 ` Jiang Liu 2013-05-26 13:38 ` [PATCH v8, part3 14/14] mm: report available pages as "MemTotal" for each NUMA node Jiang Liu 2013-05-26 13:38 ` Jiang Liu
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1369575522-26405-7-git-send-email-jiang.liu@huawei.com \ --to=liuj97@gmail.com \ --cc=FlorianSchandinat@gmx.de \ --cc=James.Bottomley@HansenPartnership.com \ --cc=akpm@linux-foundation.org \ --cc=dhowells@redhat.com \ --cc=jiang.liu@huawei.com \ --cc=kamezawa.hiroyu@jp.fujitsu.com \ --cc=linux-arch@vger.kernel.org \ --cc=linux-fbdev@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mm@kvack.org \ --cc=mgorman@suse.de \ --cc=mhocko@suse.cz \ --cc=minchan@kernel.org \ --cc=msalter@redhat.com \ --cc=rientjes@google.com \ --cc=sergei.shtylyov@cogentembedded.com \ --cc=wency@cn.fujitsu.com \ --cc=wujianguo@huawei.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).