# Sound Issues & Low Memory Corruption w/ Kernel 3.10.7

## Unknown-Creation

LAST EDIT: The issue is just a buggy BIOS corrupting memory it shouldn't touch. If you have a similar problem, try excluding the memory with the memmap kernel parameter.

</LAST EDIT>

EDIT: Output of dmesg using kernel 3.10.7:

http://bpaste.net/show/126003

</END EDIT>

I have just updated my kernel from gentoo-sources-3.8.13 to gentoo-sources-3.10.7 a while ago, and am having two issues.

My sound devices are:

```
 # lspci | grep Audio

00:1b.0 Audio device: Intel Corporation 5 Series/3400 Series Chipset High Definition Audio (rev 05)

01:00.1 Audio device: Advanced Micro Devices [AMD] nee ATI Cedar HDMI Audio [Radeon HD 5400/6300 Series]
```

I don't use the HDMI audio, so I have no idea whether or not that works. But the Intel device gets renamed. In KDE, when I'm using the new kernel, my sound devices get detected as:

```
Capture: HDA Intel MID, 92HD81B1X5 Analog (Default Audio Device)

Output: HDA Intel MID, 92HD81B1X5 Analog (Default Audio Device)
```

Sound doesn't work whatsoever. Playing an MP3 or WAV file produces no sound.

Under kernel 3.8.13, the Intel card is detected under KDE as:

```
HDA Intel MID, STAC92xx Analog (Default Audio Device)
```

Sound works just fine when using the old kernel.

The other issue I have is the low memory corruption that takes place every time I boot the new kernel, with this message consistently showing in /var/log/messages:

```
 # cat /var/log/messages

------ SNIP ------

Aug 24 21:13:23 Epimeliad kernel: [   61.041399] Corrupted low memory at ffff880000006598 (6598 phys) = 100000000000

Aug 24 21:13:23 Epimeliad kernel: [   61.041413] ------------[ cut here ]------------

Aug 24 21:13:23 Epimeliad kernel: [   61.041422] WARNING: at arch/x86/kernel/check.c:140 check_for_bios_corruption+0xca/0xdd()

Aug 24 21:13:23 Epimeliad kernel: [   61.041424] Memory corruption detected in low memory

Aug 24 21:13:23 Epimeliad kernel: [   61.041426] Modules linked in: vhba(O) vboxnetadp(O) vboxnetflt(O) vboxdrv(O) iwldvm led_class i915 radeon cfbfillrect cfbimgblt cfbcopyarea drm_kms_helper ttm iwlwifi video backlight

Aug 24 21:13:23 Epimeliad kernel: [   61.041449] CPU: 2 PID: 604 Comm: kworker/2:1 Tainted: G           O 3.10.7-gentoo #3

Aug 24 21:13:23 Epimeliad kernel: [   61.041452] Hardware name: Hewlett-Packard HP Pavilion dv7 Notebook PC/144B, BIOS F.13 09/14/2010

Aug 24 21:13:23 Epimeliad kernel: [   61.041456] Workqueue: events check_corruption

Aug 24 21:13:23 Epimeliad kernel: [   61.041459]  ffffffff817980b7 ffff8801d3cdfd28 ffffffff815c22c8 ffff8801d3cdfd68

Aug 24 21:13:23 Epimeliad kernel: [   61.041463]  ffffffff8105d439 0000000000000000 ffff8801d3cdfd78 ffff880000010000

Aug 24 21:13:23 Epimeliad kernel: [   61.041467]  0000000000000010 0000000000000001 0000000000000000 ffff8801d3cdfdc8

Aug 24 21:13:23 Epimeliad kernel: [   61.041471] Call Trace:

Aug 24 21:13:23 Epimeliad kernel: [   61.041480]  [<ffffffff815c22c8>] dump_stack+0x19/0x1b

Aug 24 21:13:23 Epimeliad kernel: [   61.041487]  [<ffffffff8105d439>] warn_slowpath_common+0x62/0x7b

Aug 24 21:13:23 Epimeliad kernel: [   61.041491]  [<ffffffff8105d4e6>] warn_slowpath_fmt+0x41/0x43

Aug 24 21:13:23 Epimeliad kernel: [   61.041495]  [<ffffffff81052d32>] check_for_bios_corruption+0xca/0xdd

Aug 24 21:13:23 Epimeliad kernel: [   61.041500]  [<ffffffff81052d4e>] check_corruption+0x9/0x37

Aug 24 21:13:23 Epimeliad kernel: [   61.041506]  [<ffffffff810749ea>] process_one_work+0x198/0x2a5

Aug 24 21:13:23 Epimeliad kernel: [   61.041511]  [<ffffffff81074ec7>] worker_thread+0x159/0x1ee

Aug 24 21:13:23 Epimeliad kernel: [   61.041515]  [<ffffffff81074d6e>] ? rescuer_thread+0x24d/0x24d

Aug 24 21:13:23 Epimeliad kernel: [   61.041519]  [<ffffffff81074d6e>] ? rescuer_thread+0x24d/0x24d

Aug 24 21:13:23 Epimeliad kernel: [   61.041523]  [<ffffffff81079cd0>] kthread+0x88/0x90

Aug 24 21:13:23 Epimeliad kernel: [   61.041530]  [<ffffffff81030000>] ? vmx_handle_exit+0x3ba/0x73a

Aug 24 21:13:23 Epimeliad kernel: [   61.041534]  [<ffffffff81079c48>] ? kthread_freezable_should_stop+0x3e/0x3e

Aug 24 21:13:23 Epimeliad kernel: [   61.041541]  [<ffffffff815cd86c>] ret_from_fork+0x7c/0xb0

Aug 24 21:13:23 Epimeliad kernel: [   61.041545]  [<ffffffff81079c48>] ? kthread_freezable_should_stop+0x3e/0x3e

Aug 24 21:13:23 Epimeliad kernel: [   61.041548] ---[ end trace d6d97f17bc436cd3 ]---

------ SNIP ------
```

Under other kernels, I never had this issue until now. Both my 3.8 kernel and the 3.10 kernel are allocating 64 kb of low memory, so I am not sure what the issue is. Both kernels have similar configs, and were configured manually (no genkernel, no make --oldconfig). The config file for 3.8.13 is below:

http://bpaste.net/show/125993/

And for 3.10.7:

http://bpaste.net/show/125994/

Output of dmesg while using kernel 3.8.13:

http://bpaste.net/show/125996/

Output of emerge --info:

http://bpaste.net/show/125997/

I will post a dmesg of the 3.10 kernel when I boot up with it again. I'm using 3.8 right now so I can use this machine without issues. I will also try running memtest on my machine to rule out any issues with RAM sticks when I have the chance.

If anymore information is needed, please let me know. I'll post whatever information I can.Last edited by Unknown-Creation on Wed May 28, 2014 6:32 pm; edited 1 time in total

----------

## Hu

Is the corruption reproducible on an untainted kernel?  Do you get the same warning if you boot with init=/bin/bash and let the system sit until the check runs?  This latter test will determine whether some user space action is triggering the BIOS to cause the corruption or if it happens purely in reaction to kernel activity.  Does the problem appear in 3.9?

----------

## Unknown-Creation

Hello, Hu.

Removing out-of-tree modules (vbox modules and vhba) from auto-loading with 3.10 didn't change anything in regards to corruption. Here's the dmesg output:

http://bpaste.net/show/126147

On 3.8, I can't reproduce the corruption on an untainted kernel.

On the other hand, booting kernel 3.10 with init=/bin/bash didn't reproduce the corruption.

I haven't used a 3.9 kernel on this system. I will merge one and see if I have the same problem with it.

Also, I ran memtest86+ v4.20 on my system last night. After 8 passes, there were no errors, so my RAM sticks are fine.

----------

## Hu

That suggests some part of the init system triggers the BIOS to cause the corruption.  You may be able to narrow it down by increasing the frequency of corruption checks and stepping through userspace initialization in phases.

----------

## Unknown-Creation

I have found out what is causing the corruption issue. The i915 driver is causing the corruption. If I blacklist the module, the corruption never occurs. The consequence of this is that I lose the display on this system if I blacklist the module, although the system is responsive otherwise (I can SSH into it, and log into the system blindly). I'll try grabbing git-sources and see if the issue is still present. If it is, I'll try doing a bisect and submit a bug report upstream. I know that the issue is present using vanilla-sources-3.10.10.

I'll have to move from kernel 3.8.13 at some point, since there's a nice security vulnerability. I might shoot for an LTS kernel if I have no other option, or I can wait until 3.11 is stabilized.

EDIT (Sep 8, 2013): Bug submitted upstream.

https://bugzilla.kernel.org/show_bug.cgi?id=61041

</END EDIT>

----------

