|
Bug ID
|
6689201
|
|
Synopsis
|
start and end arguments to lgrp_plat_node_memory_update() should be uint64_t's
|
|
State
|
10-Fix Delivered (Fix available in build)
|
|
Category:Subcategory
|
kernel:numa
|
|
Keywords
|
32 | bit | kernel | lgroup | panic | plat_build_mem_nodes | plat_pfn_to_mem_node
|
|
Responsible Engineer
|
Jonathan Chew
|
|
Reported Against
|
snv_88
|
|
Duplicate Of
|
|
|
Introduced In
|
solaris_nevada
|
|
Commit to Fix
|
snv_88
|
|
Fixed In
|
snv_88
|
|
Release Fixed
|
solaris_nevada(snv_88)
,
solaris_10u6(s10u6_02) (Bug ID:2162054)
|
|
Related Bugs
|
6594519
|
|
Submit Date
|
16-April-2008
|
|
Last Update Date
|
23-April-2008
|
|
Description
|
The start and end arguments to lgrp_plat_node_memory_update() should be uint64_t's not uintptr_t's to hold physical addresses. This oversight will cause an assertion failure in plat_pfn_to_mem_node() on debug kernels and a panic in plat_build_mem_nodes() on non-debug kernels when booting a 32-bit kernel on a x86/x64 machine with more than 4 gigabytes of RAM.
|
|
Work Around
|
There are a couple of workarounds:
- Boot a 64-bit kernel instead of 32-bit one
- Set lgrp_plat_srat_enable to 0 in kmdb(1) before booting the kernel or by patching it in the 32-bit unix binary using mdb(1)
|
|
Comments
|
N/A
|