# Kernel upgrade - constant speakers noise [Solved]

## sebaro

Just upgraded the kernel (gentoo-sources-.30-r8 to .32-r7), now when it starts I get an constant noise from my display speakers. What can it be?Last edited by sebaro on Thu Sep 02, 2010 2:15 pm; edited 1 time in total

----------

## mikegpitt

 *sebaro wrote:*   

> Just upgraded the kernel (gentoo-sources-.30-r8 to .32-r7), now when it starts I get an constant noise from my display speakers. What can it be?

 Is your PCM channel set too high in alsamixer?

----------

## sebaro

I turned all off in alsamixer, removed all sound modules, it's still there.[/quote]

Kernels diff:

```
CONFIG_SOUND=y                     CONFIG_SOUND=y

# CONFIG_SOUND_OSS_CORE is not set            # CONFIG_SOUND_OSS_CORE is not set

CONFIG_SND=y                     CONFIG_SND=y

CONFIG_SND_TIMER=m                  CONFIG_SND_TIMER=m

CONFIG_SND_PCM=m                  CONFIG_SND_PCM=m

CONFIG_SND_HWDEP=m                  CONFIG_SND_HWDEP=m

CONFIG_SND_RAWMIDI=m                  CONFIG_SND_RAWMIDI=m

CONFIG_SND_SEQUENCER=m                  CONFIG_SND_SEQUENCER=m

# CONFIG_SND_SEQ_DUMMY is not set            # CONFIG_SND_SEQ_DUMMY is not set

# CONFIG_SND_MIXER_OSS is not set            # CONFIG_SND_MIXER_OSS is not set

# CONFIG_SND_PCM_OSS is not set               # CONFIG_SND_PCM_OSS is not set

# CONFIG_SND_SEQUENCER_OSS is not set            # CONFIG_SND_SEQUENCER_OSS is not set

# CONFIG_SND_DYNAMIC_MINORS is not set            # CONFIG_SND_DYNAMIC_MINORS is not set

# CONFIG_SND_SUPPORT_OLD_API is not set            # CONFIG_SND_SUPPORT_OLD_API is not set

# CONFIG_SND_VERBOSE_PROCFS is not set            # CONFIG_SND_VERBOSE_PROCFS is not set

# CONFIG_SND_VERBOSE_PRINTK is not set            # CONFIG_SND_VERBOSE_PRINTK is not set

# CONFIG_SND_DEBUG is not set               # CONFIG_SND_DEBUG is not set

                           >   CONFIG_SND_DMA_SGBUF=y

                           >   CONFIG_SND_RAWMIDI_SEQ=m

                           >   CONFIG_SND_OPL3_LIB_SEQ=m

                           >   # CONFIG_SND_OPL4_LIB_SEQ is not set

                           >   # CONFIG_SND_SBAWE_SEQ is not set

                           >   # CONFIG_SND_EMU10K1_SEQ is not set

CONFIG_SND_MPU401_UART=m               CONFIG_SND_MPU401_UART=m

CONFIG_SND_OPL3_LIB=m                  CONFIG_SND_OPL3_LIB=m

# CONFIG_SND_DRIVERS is not set               # CONFIG_SND_DRIVERS is not set

CONFIG_SND_PCI=y                  CONFIG_SND_PCI=y

# CONFIG_SND_AD1889 is not set               # CONFIG_SND_AD1889 is not set

# CONFIG_SND_ALS300 is not set               # CONFIG_SND_ALS300 is not set

# CONFIG_SND_ALS4000 is not set               # CONFIG_SND_ALS4000 is not set

# CONFIG_SND_ALI5451 is not set               # CONFIG_SND_ALI5451 is not set

# CONFIG_SND_ATIIXP is not set               # CONFIG_SND_ATIIXP is not set

# CONFIG_SND_ATIIXP_MODEM is not set            # CONFIG_SND_ATIIXP_MODEM is not set

# CONFIG_SND_AU8810 is not set               # CONFIG_SND_AU8810 is not set

# CONFIG_SND_AU8820 is not set               # CONFIG_SND_AU8820 is not set

# CONFIG_SND_AU8830 is not set               # CONFIG_SND_AU8830 is not set

# CONFIG_SND_AW2 is not set               # CONFIG_SND_AW2 is not set

# CONFIG_SND_AZT3328 is not set               # CONFIG_SND_AZT3328 is not set

# CONFIG_SND_BT87X is not set               # CONFIG_SND_BT87X is not set

# CONFIG_SND_CA0106 is not set               # CONFIG_SND_CA0106 is not set

CONFIG_SND_CMIPCI=m                  CONFIG_SND_CMIPCI=m

# CONFIG_SND_OXYGEN is not set               # CONFIG_SND_OXYGEN is not set

# CONFIG_SND_CS4281 is not set               # CONFIG_SND_CS4281 is not set

# CONFIG_SND_CS46XX is not set               # CONFIG_SND_CS46XX is not set

# CONFIG_SND_CS5530 is not set               # CONFIG_SND_CS5530 is not set

# CONFIG_SND_CS5535AUDIO is not set            # CONFIG_SND_CS5535AUDIO is not set

                           >   # CONFIG_SND_CTXFI is not set

# CONFIG_SND_DARLA20 is not set               # CONFIG_SND_DARLA20 is not set

# CONFIG_SND_GINA20 is not set               # CONFIG_SND_GINA20 is not set

# CONFIG_SND_LAYLA20 is not set               # CONFIG_SND_LAYLA20 is not set

# CONFIG_SND_DARLA24 is not set               # CONFIG_SND_DARLA24 is not set

# CONFIG_SND_GINA24 is not set               # CONFIG_SND_GINA24 is not set

# CONFIG_SND_LAYLA24 is not set               # CONFIG_SND_LAYLA24 is not set

# CONFIG_SND_MONA is not set               # CONFIG_SND_MONA is not set

# CONFIG_SND_MIA is not set               # CONFIG_SND_MIA is not set

# CONFIG_SND_ECHO3G is not set               # CONFIG_SND_ECHO3G is not set

# CONFIG_SND_INDIGO is not set               # CONFIG_SND_INDIGO is not set

# CONFIG_SND_INDIGOIO is not set            # CONFIG_SND_INDIGOIO is not set

# CONFIG_SND_INDIGODJ is not set            # CONFIG_SND_INDIGODJ is not set

# CONFIG_SND_INDIGOIOX is not set            # CONFIG_SND_INDIGOIOX is not set

# CONFIG_SND_INDIGODJX is not set            # CONFIG_SND_INDIGODJX is not set

# CONFIG_SND_EMU10K1 is not set               # CONFIG_SND_EMU10K1 is not set

# CONFIG_SND_EMU10K1X is not set            # CONFIG_SND_EMU10K1X is not set

# CONFIG_SND_ENS1370 is not set               # CONFIG_SND_ENS1370 is not set

# CONFIG_SND_ENS1371 is not set               # CONFIG_SND_ENS1371 is not set

# CONFIG_SND_ES1938 is not set               # CONFIG_SND_ES1938 is not set

# CONFIG_SND_ES1968 is not set               # CONFIG_SND_ES1968 is not set

# CONFIG_SND_FM801 is not set               # CONFIG_SND_FM801 is not set

# CONFIG_SND_HDA_INTEL is not set            # CONFIG_SND_HDA_INTEL is not set

# CONFIG_SND_HDSP is not set               # CONFIG_SND_HDSP is not set

# CONFIG_SND_HDSPM is not set               # CONFIG_SND_HDSPM is not set

# CONFIG_SND_HIFIER is not set               # CONFIG_SND_HIFIER is not set

# CONFIG_SND_ICE1712 is not set               # CONFIG_SND_ICE1712 is not set

# CONFIG_SND_ICE1724 is not set               # CONFIG_SND_ICE1724 is not set

# CONFIG_SND_INTEL8X0 is not set            # CONFIG_SND_INTEL8X0 is not set

# CONFIG_SND_INTEL8X0M is not set            # CONFIG_SND_INTEL8X0M is not set

# CONFIG_SND_KORG1212 is not set            # CONFIG_SND_KORG1212 is not set

                           >   # CONFIG_SND_LX6464ES is not set

# CONFIG_SND_MAESTRO3 is not set            # CONFIG_SND_MAESTRO3 is not set

# CONFIG_SND_MIXART is not set               # CONFIG_SND_MIXART is not set

# CONFIG_SND_NM256 is not set               # CONFIG_SND_NM256 is not set

# CONFIG_SND_PCXHR is not set               # CONFIG_SND_PCXHR is not set

# CONFIG_SND_RIPTIDE is not set               # CONFIG_SND_RIPTIDE is not set

# CONFIG_SND_RME32 is not set               # CONFIG_SND_RME32 is not set

# CONFIG_SND_RME96 is not set               # CONFIG_SND_RME96 is not set

# CONFIG_SND_RME9652 is not set               # CONFIG_SND_RME9652 is not set

# CONFIG_SND_SIS7019 is not set               # CONFIG_SND_SIS7019 is not set

# CONFIG_SND_SONICVIBES is not set            # CONFIG_SND_SONICVIBES is not set

# CONFIG_SND_TRIDENT is not set               # CONFIG_SND_TRIDENT is not set

# CONFIG_SND_VIA82XX is not set               # CONFIG_SND_VIA82XX is not set

# CONFIG_SND_VIA82XX_MODEM is not set            # CONFIG_SND_VIA82XX_MODEM is not set

# CONFIG_SND_VIRTUOSO is not set            # CONFIG_SND_VIRTUOSO is not set

# CONFIG_SND_VX222 is not set               # CONFIG_SND_VX222 is not set

# CONFIG_SND_YMFPCI is not set               # CONFIG_SND_YMFPCI is not set

# CONFIG_SND_USB is not set               # CONFIG_SND_USB is not set

# CONFIG_SND_SOC is not set               # CONFIG_SND_SOC is not set

# CONFIG_SOUND_PRIME is not set               # CONFIG_SOUND_PRIME is not set
```

----------

## Rexilion

(Assuming that is the kernel config after you removed the sound modules)

 *Quote:*   

>                            >   CONFIG_SND_DMA_SGBUF=y
> 
>                            >   CONFIG_SND_RAWMIDI_SEQ=m
> 
>                            >   CONFIG_SND_OPL3_LIB_SEQ=m 

 

Did you try disabling/rmmodding those?

----------

## sebaro

Those options are added by the new kernel and are hidden. And I can't find them in kernel sound modules (both kernels have the same sound modules).

----------

## PaulBredbury

 *sebaro wrote:*   

> constant noise

 

Quiet, white noise? Could be the state of power-saving that the CPU is in. Unfortunately, the CPU emits electrical interference. If this is the problem, then the fix is to track down which CPU power-saving states cause noise, and then set up power-saving to avoid those states.

IIRC, IBM/Lenova laptops had this problem a lot, a couple of years ago.

----------

## sebaro

I don't know the color of the noise, all I know that it starts with the .32 kernel INIT. It's very annoying so I have to unplug the speakers or listen to music or use the .30 kernel which I'm doing now.

What's new in .32:

```
> # Linux kernel version: 2.6.32-gentoo-r7

> # Tue Apr 13 11:21:59 2010

> CONFIG_OUTPUT_FORMAT="elf32-i386"

> CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y

> CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y

> CONFIG_CONSTRUCTORS=y

> CONFIG_TREE_RCU=y

> # CONFIG_TREE_PREEMPT_RCU is not set

> # CONFIG_RCU_TRACE is not set

> CONFIG_RCU_FANOUT=32

> # CONFIG_RCU_FANOUT_EXACT is not set

> CONFIG_HAVE_PERF_EVENTS=y

> 

> #

> # Kernel Performance Events And Counters

> #

> # CONFIG_PERF_EVENTS is not set

> # CONFIG_PERF_COUNTERS is not set

> CONFIG_HAVE_DMA_ATTRS=y

> 

> #

> # GCOV-based kernel profiling

> #

> # CONFIG_LBDAF is not set

> CONFIG_X86_SUPPORTS_MEMORY_FAILURE=y

> # CONFIG_MATOM is not set

> # CONFIG_X86_ANCIENT_MCE is not set

> # CONFIG_X86_MCE_INJECT is not set

> # CONFIG_KSM is not set

> CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y

> # CONFIG_MEMORY_FAILURE is not set

> # CONFIG_HZ_300 is not set

> CONFIG_HZ_1000=y

> CONFIG_HZ=1000

> CONFIG_PHYSICAL_START=0x1000000

> # CONFIG_SFI is not set

> # CONFIG_BINFMT_AOUT is not set

> # CONFIG_BINFMT_MISC is not set

> CONFIG_PACKET_MMAP=y

> # CONFIG_RDS is not set

> # CONFIG_IEEE802154 is not set

> # CONFIG_DEVTMPFS is not set

> CONFIG_ATA_VERBOSE_ERROR=y

> # CONFIG_PATA_ATP867X is not set

> # CONFIG_PATA_RDC is not set

> # You can enable one or both FireWire driver stacks.

> #

> 

> #

> # See the help texts for more information.

> # CONFIG_KS8842 is not set

> # CONFIG_KS8851_MLL is not set

> # CONFIG_WLAN is not set

> # CONFIG_VMXNET3 is not set

> # CONFIG_KEYBOARD_OPENCORES is not set

> # CONFIG_KEYBOARD_SUNKBD is not set

> # CONFIG_KEYBOARD_XTKBD is not set

> # CONFIG_MOUSE_PS2_SENTELIC is not set

> CONFIG_HW_RANDOM_TIMERIOMEM=m

> 

> #

> # PPS support

> #

> # CONFIG_PPS is not set

> # CONFIG_MEDIA_SUPPORT is not set

> CONFIG_VGA_ARB=y

> CONFIG_SND_DMA_SGBUF=y

> CONFIG_SND_RAWMIDI_SEQ=m

> CONFIG_SND_OPL3_LIB_SEQ=m

> # CONFIG_SND_OPL4_LIB_SEQ is not set

> # CONFIG_SND_SBAWE_SEQ is not set

> # CONFIG_SND_EMU10K1_SEQ is not set

> # CONFIG_SND_CTXFI is not set

> # CONFIG_SND_LX6464ES is not set

> CONFIG_HID_DRAGONRISE=m

> CONFIG_HID_TWINHAN=m

> CONFIG_HID_GREENASIA=m

> CONFIG_HID_SMARTJOYPLUS=m

> # CONFIG_SMARTJOYPLUS_FF is not set

> CONFIG_HID_THRUSTMASTER=m

> CONFIG_HID_ZEROPLUS=m

> # CONFIG_USB_DEVICEFS is not set

> # CONFIG_USB_XHCI_HCD is not set

> # CONFIG_USB_ISP1362_HCD is not set

> 

> #

> # TI VLYNQ

> #

> # CONFIG_NILFS2_FS is not set

> CONFIG_FSNOTIFY=y

> # CONFIG_INOTIFY is not set

> # CONFIG_ENABLE_WARN_DEPRECATED is not set

> # CONFIG_ENABLE_MUST_CHECK is not set

> # CONFIG_STRIP_ASM_SYMS is not set

> # CONFIG_UNUSED_SYMBOLS is not set

> CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST=y

> CONFIG_HAVE_SYSCALL_TRACEPOINTS=y

> # CONFIG_FTRACE is not set

> CONFIG_HAVE_ARCH_KMEMCHECK=y

> # CONFIG_IOMMU_STRESS is not set

> # CONFIG_CRYPTO_VMAC is not set

> # CONFIG_CRYPTO_GHASH is not set

```

----------

## Jaglover

 *sebaro wrote:*   

> Those options are added by the new kernel and are hidden. And I can't find them in kernel sound modules (both kernels have the same sound modules).

 

Any chance you used an improper method to configure your new kernel, like make oldconfig?

----------

## sebaro

 *Jaglover wrote:*   

> Any chance you used an improper method to configure your new kernel, like make oldconfig?

 

I use make menuconfig or menu gconfig, then I look for new options (kernelnewbies.org), then make/make install/make modules_install.

----------

## mikegpitt

 *Jaglover wrote:*   

> Any chance you used an improper method to configure your new kernel, like make oldconfig?

 How is `make oldconfig` improper?  I always run this first to update my current kernel config to the latest version, before running menuconfig and continuing with the compile.

sebaro, you might actually want to do that to go through each new option in detail before compiling your kernel.

----------

## Jaglover

make oldconfig

It has long history of abuse, it's meant to make easier the transition between patchlevels, but is often used to "cheat" when switching to a new kernel version. Basically, make oldconfig fails when something is moved in config tree. For instance, I remember when SATA stuff was moved Linux forums were full of help requests. In less radical cases you'll have just a little crippled kernel, which you may notice, or may not.

http://www.gentoo.org/doc/en/kernel-upgrade.xml#doc_chap10

----------

## sebaro

I removed sound from kernel, noise still there.

Could it be because of changing the timer frequency from 300 to 1000 or setting FSNOTIFY to yes?

----------

## Jaglover

sebaro,

I think PaulBredbury has a valid point. If I was you I'd dig deeper into CPU power-saving. Also, try removing the analog CD sound cable if you have it connected, it may function as an antenna.

----------

## sebaro

The noise comes from my display's speakers and only with the new kernel (gentoo-sources-2.6.32-r7). Power management is off if that's what you mean by "cpu power-saving". The only sound cable I have is the one from the sound card to my display. If I unplug it the noise is gone.

----------

## sebaro

Same noise in .34.

Edit: I built the new kernel (.35) with the config I built .30 with. Now it's fine.

Edit2: The problem was the "Timer frequency", setting it to 1000 instead of 300.

----------

