Bug 113357
Summary: | Recompiling kernel with PAGE_SIZE!=16KB, then, kernel can't boot on IA64 machine | ||||||
---|---|---|---|---|---|---|---|
Product: | Red Hat Enterprise Linux 3 | Reporter: | Zhang Yanmin <yanmin.zhang> | ||||
Component: | kernel | Assignee: | Arjan van de Ven <arjanv> | ||||
Status: | CLOSED WONTFIX | QA Contact: | Brian Brock <bbrock> | ||||
Severity: | medium | Docs Contact: | |||||
Priority: | medium | ||||||
Version: | 3.0 | CC: | petrides, riel, tao, yanmin.zhang | ||||
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: | 2004-01-13 13:30:39 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: | |||||||
Attachments: |
|
Description
Zhang Yanmin
2004-01-13 02:08:26 UTC
Created attachment 96921 [details] Fix bug 113357 When PAGE_SIZE!=16KB, EL3 kernel can't boot on IA64 machine, and booting message shows error on page_alloc.c line 112. There is a BUG check at this source line of function destroy_compound_page to make sure parameter order is really the order used by __alloc_pages. When kernel allocates task_struct(16KB), it chooses order 'IA64_TASK_STRUCT_LOG_NUM_PAGES' based on PAGE_SIZE. However, when it releases task_struct, it uses a hardcoded order 1 as its parameter. So the BUG checking in destroy_compound_page will be triggered. I tested the patch on Tiger-2(IA64) machine for many times. All except one run well. When the exception happened, SCSI kept reseting again and again. I used my own config file with all needed modules are compiled into the kernel directly. One question: I checked the base kernels of 2.4 and 2.6. They all do not have such bug. Why did redhat people put a hardcoded 1 there? Just force EL3 to support only 16KB on purpose? One more statement: This error is the only problem that prevents booting with PAGE_SIZE!=16KB. We explicitly don't support recompiled kernels and esp not kernels with a different userspace ABI. |