[#6575] munmap error while trying to unmap unaligned end addr
Submitted By: Bob Liu
Open Date
2011-05-03 23:14:04 Close Date
2011-10-20 01:10:40
Priority:
Medium Assignee:
Bob Liu
Status:
Closed Fixed In Release:
N/A
Found In Release:
2011R1 Release:
Category:
N/A Board:
N/A
Processor:
ALL Silicon Revision:
Is this bug repeatable?:
Yes Resolution:
Fixed
Uboot version or rev.:
Toolchain version or rev.:
cc version 4.3.5
App binary format:
N/A
Summary: munmap error while trying to unmap unaligned end addr
Details:
There are some issues about munmap error during unmap frame buffer.
See:
http://blackfin.uclinux.org/gf/forummessage/100054
http://blackfin.uclinux.org/gf/forummessage/100375
The problem maybe caused by unaligned end addr.
Follow-ups
--- Bob Liu 2011-05-26 22:38:21
munmap error:
1. the root cause is do_munmap() in mm/nommu.c can't find the exact vma to
free.
2. in bfin-lq035q1-fb frame buffer driver, the get_fb_unmapped_area() will get
the screen_base addr and pass to fb_mmap() in drivers/video/fbmem.c.
But screen_base addr is not page_aligned, so fb_mmap() will align it, and call
io_remap_pfn_range() which is remap_pfn_range() on bfin arch.
3. remap_pfn_range() only change the start_addr of vma, so during munmap()
there is no vma can be matched.
Files
Changes
Commits
Dependencies
Duplicates
Associations
Tags
File Name File Type File Size Posted By
No Files Were Found