mirror of
https://review.coreboot.org/flashrom.git
synced 2025-04-28 07:23:43 +02:00
DJGPP: Avoid leaking memory on lowmem mapping error
Add a clarifying comment about why low memory is never unmapped. Corresponding to flashrom svn r1195. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by: Rudolf Marek <r.marek@assembler.cz>
This commit is contained in:
parent
1db7a448b3
commit
602de9829c
@ -56,6 +56,8 @@ static void *map_first_meg(unsigned long phys_addr, size_t len)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (__djgpp_map_physical_memory(realmem_map, (1024 * 1024), 0)) {
|
if (__djgpp_map_physical_memory(realmem_map, (1024 * 1024), 0)) {
|
||||||
|
free(realmem_map);
|
||||||
|
realmem_map = NULL;
|
||||||
return ERROR_PTR;
|
return ERROR_PTR;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -95,7 +97,9 @@ void physunmap(void *virt_addr, size_t len)
|
|||||||
{
|
{
|
||||||
__dpmi_meminfo mi;
|
__dpmi_meminfo mi;
|
||||||
|
|
||||||
/* we ignore unmaps for our first 1MB */
|
/* There is no known way to unmap the first 1 MB. The DPMI server will
|
||||||
|
* do this for us on exit.
|
||||||
|
*/
|
||||||
if ((virt_addr >= realmem_map) && ((virt_addr + len) <= (realmem_map + (1024 * 1024)))) {
|
if ((virt_addr >= realmem_map) && ((virt_addr + len) <= (realmem_map + (1024 * 1024)))) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user