Bug 221975 - __initdata declaration causes panic in powernow-k8 driver
__initdata declaration causes panic in powernow-k8 driver
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 4
Classification: Red Hat
Component: kernel (Show other bugs)
4.4
i386 Linux
medium Severity high
: ---
: ---
Assigned To: Prarit Bhargava
Brian Brock
: Regression
Depends On:
Blocks: 223017
  Show dependency treegraph
 
Reported: 2007-01-09 08:52 EST by Prarit Bhargava
Modified: 2007-11-16 20:14 EST (History)
2 users (show)

See Also:
Fixed In Version: RHBA-2007-0304
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2007-05-08 00:37:21 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
Patch to remove __initdata from tscsync variable (540 bytes, patch)
2007-01-09 08:54 EST, Prarit Bhargava
no flags Details | Diff

  None (edit)
Description Prarit Bhargava 2007-01-09 08:52:00 EST
Description of problem:

The tscsync variable is declared as __initdata but is accessed post-init.  This
causes a panic.

Version-Release number of selected component (if applicable): 2.6.9-42.38.EL


How reproducible: Some systems never, other systems 100%.  (HP xw9400 reproduces
this 100% of the time)


Steps to Reproduce:
1. load powernow-k8 module
2. attempt to change the cpu frequency
  
Actual results:

powernow-k8: ph2 null fid transition 0x12
powernow-k8: ph2 null fid transition 0x12
Unable to handle kernel paging request at virtual address f89a02fc
 printing eip:
f8bed14d
*pde = 00000000
Oops: 0000 [#1]
SMP 
Modules linked in: powernow_k8(U) md5(U) ipv6(U) parport_pc(U) lp(U) parport(U))
CPU:    1
EIP:    0060:[<f8bed14d>]    Not tainted VLI
EFLAGS: 00010202   (2.6.9-prep) 
EIP is at write_new_fid+0x41/0x172 [powernow_k8]
eax: 00000000   ebx: c2258580   ecx: 00000012   edx: 00000000
esi: 00010910   edi: 0000000e   ebp: c2258580   esp: f5918e7c
ds: 007b   es: 007b   ss: 0068
Process testpowernow (pid: 4602, threadinfo=f5918000 task=f7a44970)
Stack: 01c65f60 00000000 00000009 00000010 c2258580 00000012 0000000e 0000000e 
       f8bed50c 00000009 c2258580 0000000c 0000000e 0000000c f8bed38c c2258580 
       0000000e 00000020 f8bee007 c2258580 00000001 0027ac40 002191c0 00000000 
Call Trace:
 [<f8bed50c>] core_frequency_transition+0x99/0x104 [powernow_k8]
 [<f8bed38c>] transition_fid_vid+0x22/0x83 [powernow_k8]
 [<f8bee007>] transition_frequency_fidvid+0xf1/0x1ee [powernow_k8]
 [<f8bee400>] powernowk8_target+0x1c3/0x242 [powernow_k8]
 [<c0275886>] __cpufreq_driver_target+0x28/0x2f
 [<c027615d>] cpufreq_set+0x6d/0x85
 [<c02761eb>] store_speed+0x32/0x3a
 [<c02761b9>] store_speed+0x0/0x3a
 [<c02752a9>] store+0x31/0x41
 [<c018ea8f>] flush_write_buffer+0x20/0x25
 [<c018eaeb>] sysfs_write_file+0x57/0x7c
 [<c015b1df>] vfs_write+0xb6/0xe2
 [<c015b2a9>] sys_write+0x3c/0x62
 [<c02d5a3f>] syscall_call+0x7/0xb
Code: 04 00 00 00 00 89 44 24 08 75 05 83 e0 c0 74 0a 68 f2 e5 be f8 e9 2d 01 0 
 <0>Fatal exception: panic in 5 seconds
Kernel panic - not syncing: Fatal exception

Expected results:

No panic should occur.

Additional info:  This doesn't appear to happen on RHEL4.4 even though the
tscsync variable is declared __initdata.  As with all improper declarations of
this type, the memory usage and layout can cause a bug to occur/not occur.

Since this doesn't happen in 4.4, I'm marking this as a regression.
Comment 1 Prarit Bhargava 2007-01-09 08:54:39 EST
Created attachment 145161 [details]
Patch to remove __initdata from tscsync variable
Comment 2 Linda Wang 2007-01-09 10:22:22 EST
patch posted 1/9/07.  
Comment 3 RHEL Product and Program Management 2007-01-09 10:29:03 EST
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux maintenance release.  Product Management has requested
further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed
products.  This request is not yet committed for inclusion in an Update
release.
Comment 4 Jason Baron 2007-01-10 14:20:56 EST
committed in stream U5 build 42.40. A test kernel with this patch is available
from http://people.redhat.com/~jbaron/rhel4/
Comment 5 Jay Turner 2007-01-18 15:42:58 EST
QE ack for RHEL4.5.
Comment 6 Robert Hentosh 2007-01-24 16:03:15 EST
Similar issue in RHEL5 Beta. See BZ#224116.
Comment 8 Mike Gahagan 2007-04-03 18:19:43 EDT
I've confirmed the patch is in the -52 kernel, unfortunately the AMD test system
I have has never reproduced the problem.
Comment 9 Prarit Bhargava 2007-04-03 19:29:49 EDT
(In reply to comment #8)
> I've confirmed the patch is in the -52 kernel, unfortunately the AMD test system
> I have has never reproduced the problem.

Mike, IIRC the HP xw9400 (AMD based system) reproduces this issue 100% of the time.

P. 

Comment 11 Red Hat Bugzilla 2007-05-08 00:37:21 EDT
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHBA-2007-0304.html

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