Bugzilla – Attachment 174384 Details for
Bug 299891
Crash in early stage install
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Forgot Password
[patch]
Ignore bogus CPU frequency values wrongly exported by ACPI layer early
acpi_powernow_workaround_wrong_data.patch (text/plain), 2.58 KB, created by
Thomas Renninger
on 2007-09-24 15:20:00 UTC
(
hide
)
Description:
Ignore bogus CPU frequency values wrongly exported by ACPI layer early
Filename:
MIME Type:
Creator:
Thomas Renninger
Created:
2007-09-24 15:20:00 UTC
Size:
2.58 KB
patch
obsolete
>From: Thomas Renninger <trenn@suse.de> >Subject: Ignore bogus CPU freq values wrongly exported by acpi to powernow-k8 >Patch-mainline: not yet >References: #299891 and #297119 > >This is in fact an ACPI sublayer bug. The amount of packages is ignored and >invalid (e.g. 0xFFFF/0xFFFFFFFF for frequency/control) info is passed to the >powernow-k8 driver. >This only affects BIOSes which fill up frequency info with these dummy values >so that they do not need to allocate the memory for different processor >frequency info dynamically. >Known BIOSes which show this issue currently are: >Gigabyte GA-K8N (Athlon) (Bug #297119) -> detects the invalid freqs and does > not show bad side effects, with this > patch it's still safer... >MSI K8N Master2FAR (Opteron) (Bug #299891) > -> Opteron and Athlon differ in Freq initialisation, here > here HW is addressed with wrong info and the machine > powers off. > >As this is a general ACPI bug, other non-AMD/powernow-k8 systems may also >be affected, but it's too late for fiddling in ACPI parser and >this is the safest thing to do for 10.3. > >--- > arch/i386/kernel/cpu/cpufreq/powernow-k8.c | 14 ++++++++++++++ > 1 file changed, 14 insertions(+) > >Index: linux-2.6.22/arch/i386/kernel/cpu/cpufreq/powernow-k8.c >=================================================================== >--- linux-2.6.22.orig/arch/i386/kernel/cpu/cpufreq/powernow-k8.c >+++ linux-2.6.22/arch/i386/kernel/cpu/cpufreq/powernow-k8.c >@@ -846,6 +846,13 @@ static int fill_powernow_table_pstate(st > u32 fid; > u32 did; > >+ if (data->acpi_data.states[i].core_frequency == 0xFFFF || >+ data->acpi_data.states[i].control == 0xFFFFFFFF) { >+ printk(KERN_INFO PFX "Dummy frequency entry hit - ignoring\n"); >+ powernow_table[i].frequency = CPUFREQ_ENTRY_INVALID; >+ continue; >+ } >+ > index = data->acpi_data.states[i].control & HW_PSTATE_MASK; > if (index > MAX_HW_PSTATE) { > printk(KERN_ERR PFX "invalid pstate %d - bad value %d.\n", i, index); >@@ -886,6 +893,13 @@ static int fill_powernow_table_fidvid(st > u32 fid; > u32 vid; > >+ if (data->acpi_data.states[i].core_frequency == 0xFFFF || >+ data->acpi_data.states[i].control == 0xFFFFFFFF) { >+ printk(KERN_INFO PFX "Dummy frequency entry hit - ignoring\n"); >+ powernow_table[i].frequency = CPUFREQ_ENTRY_INVALID; >+ continue; >+ } >+ > if (data->exttype) { > fid = data->acpi_data.states[i].status & EXT_FID_MASK; > vid = (data->acpi_data.states[i].status >> VID_SHIFT) & EXT_VID_MASK;
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
Actions:
View
|
Diff
Attachments on
bug 299891
:
157786
|
157787
|
158046
|
164149
|
164150
|
173419
|
173480
|
173544
|
173793
| 174384 |
175114
|
175489