Bug 46213
Summary: | Installer hangs when specify | ||
---|---|---|---|
Product: | [Retired] Red Hat Linux | Reporter: | Shinya Narahara <naraha_s> |
Component: | kernel | Assignee: | Arjan van de Ven <arjanv> |
Status: | CLOSED RAWHIDE | QA Contact: | Brock Organ <borgan> |
Severity: | high | Docs Contact: | |
Priority: | high | ||
Version: | 7.1 | CC: | bhuang, ynakai |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | ia64 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2001-07-24 06:12:10 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Shinya Narahara
2001-06-27 12:41:24 UTC
On my investigation, the cause is that: (1) When 'mem=xxx' is used, it is possible that the page corresponds to the memory used by initrd is not made because initrd is loaded into high address region by bootloader. (2) free_initrd_mem() frees the memory used by initrd even if its corresponding page was not exist. The following is the patch I sent this to linux kernel ML. I saw the kernel applied this patch boots normally with 'mem=512m' on Bigsur with 1GB memory. --- ./arch/ia64/mm/init.c Thu Jun 28 10:16:45 2001 +++ ./arch/ia64/mm/init.c.new Thu Jun 28 09:57:58 2001 @@ -141,10 +141,12 @@ printk ("Freeing initrd memory: %ldkB freed\n", (end - start) >> 10); for (; start < end; start += PAGE_SIZE) { - clear_bit(PG_reserved, &virt_to_page(start)->flags); - set_page_count(virt_to_page(start), 1); - free_page(start); - ++totalram_pages; + if (VALID_PAGE(virt_to_page(start))) { + clear_bit(PG_reserved, &virt_to_page(start)->flags); + set_page_count(virt_to_page(start), 1); + free_page(start); + ++totalram_pages; + } } } This issue has been fixed already, kernel-2.4.9 or above. |