Bug 739343 - RHEL6.2 kernel-2.6.32-182.el6: System hangs while entering hibernation
Summary: RHEL6.2 kernel-2.6.32-182.el6: System hangs while entering hibernation
Status: CLOSED DUPLICATE of bug 731546
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: kernel
Version: 6.3
Hardware: x86_64
OS: Linux
Target Milestone: beta
: ---
Assignee: Red Hat Kernel Manager
QA Contact: Red Hat Kernel QE team
Depends On: 738144
Blocks: 688945
TreeView+ depends on / blocked
Reported: 2011-09-17 21:37 UTC by Kiran Thirumalai
Modified: 2011-09-19 09:31 UTC (History)
8 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of: 738144
Last Closed: 2011-09-19 09:31:06 UTC
Target Upstream Version:

Attachments (Terms of Use)

Description Kiran Thirumalai 2011-09-17 21:37:16 UTC
+++ This bug was initially created as a clone of Bug #738144 +++

Created attachment 523060 [details]

Description of problem:
While trying to enter hibernation (S4), system hangs.

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1. Default install RHEL6.
2. Install kernel rpm kernel-2.6.32-182.el6.x86_64.rpm
3. Boot into the new kernel.
4. Issue the command "pm-hibernate" to enter S4.
Actual results:
System hangs before entering hibernation.

Expected results:
System should be able to enter hibernation and be able to resume back without any issues.

Additional info:
Using the default kernel-2.6.32-71.el6 of RHEL6.0, the system enters and resumes fine from hibernation. The issue only occurs with updated kernel-2.6.32-182.el6.

--- Additional comment from arindam.nath@amd.com on 2011-09-14 02:39:24 EDT ---

Excerpt from the patch --

This patch fixes the issue when the system hangs while entering

The issue occurs when system tries to save NVS memory region(s).
During system boot, acpi_os_map_memory() marks the pages belonging
to the NVS regions as _PAGE_CACHE_WB, but during hibernation, the
pages are checked against _PAGE_CACHE_UC_MINUS, which in turn makes
ioremap() return a NULL pointer. This results in kernel panic when
system accesses this NULL pointer, and the system hangs.

The solution is to make sure we mark the pages correctly during
OS boot. So we use ioremap() instead of ioremap_cache() to set
the memory type field appropriately.

Comment 2 Stanislaw Gruszka 2011-09-19 09:31:06 UTC

*** This bug has been marked as a duplicate of bug 731546 ***

Note You need to log in before you can comment on or make changes to this bug.