Bug 1253238

Summary: ALSA: Sound input stop working after connecting/disconnecting external mic
Product: [Fedora] Fedora Reporter: Paulo Fidalgo <paulo.fidalgo.pt>
Component: kernelAssignee: Kernel Maintainer List <kernel-maint>
Status: CLOSED EOL QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 22CC: gansalmon, itamar, jonathan, kernel-maint, madhu.chinakonda, mchehab
Target Milestone: ---Keywords: Triaged
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
Whiteboard: first=4.1 latest=4.1.4
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-07-19 17:30:09 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
alsa-info
none
dmesg output for 4.0.8
none
dmesg output for 4.1.4
none
hda analyzer for 4.0.8 kernel
none
hda analyzer for 4.1.4 kernel none

Description Paulo Fidalgo 2015-08-13 09:37:22 UTC
Created attachment 1062422 [details]
alsa-info

Description of problem:

I have an HP Elitbook 840 G1 laptop and if I plug an external headset I won't be able to use the mic anymore (both internal and external).

In pavucontrol I get the plug and unplug events, and the playback is OK, but in the "recording" I don't have any sound.

With the 4.0.8 kernel everything as worked alrigh, but start failing with 4.1

I have already checked if the kernel parameters have changed but they are the same:

#### kernel-4.0.8-300.fc22.x86_64 ####

Module: snd_hda_intel
Parameter: align_buffer_size --> -1
Parameter: bdl_pos_adj --> 32,1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
Parameter: beep_mode --> N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N
Parameter: enable --> Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y
Parameter: enable_msi --> -1
Parameter: id --> (null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null)
Parameter: index --> -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
Parameter: jackpoll_ms --> 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Parameter: model --> (null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null)
Parameter: patch --> (null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null)
Parameter: position_fix --> -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
Parameter: power_save --> 0
Parameter: power_save_controller --> Y
Parameter: probe_mask --> -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
Parameter: probe_only --> 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Parameter: single_cmd --> N
Parameter: snoop --> -1

#### kernel-4.1.4-200.fc22.x86_64 ####
Module: snd_hda_intel
Parameter: align_buffer_size --> -1
Parameter: bdl_pos_adj --> 32,1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
Parameter: beep_mode --> N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N
Parameter: enable --> Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y
Parameter: enable_msi --> -1
Parameter: id --> (null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null)
Parameter: index --> -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
Parameter: jackpoll_ms --> 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Parameter: model --> (null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null)
Parameter: patch --> (null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null)
Parameter: position_fix --> -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
Parameter: power_save --> 0
Parameter: power_save_controller --> Y
Parameter: probe_mask --> -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
Parameter: probe_only --> 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Parameter: single_cmd --> N
Parameter: snoop --> -1

Loaded sound modules:

[fidalgo@hp ~]$ lsmod | grep snd
snd_hda_codec_hdmi     53248  1
snd_hda_codec_idt      61440  1
snd_hda_codec_generic    73728  1 snd_hda_codec_idt
snd_hda_intel          32768  7
snd_hda_controller     32768  1 snd_hda_intel
snd_hda_codec         110592  5 snd_hda_codec_hdmi,snd_hda_codec_idt,snd_hda_codec_generic,snd_hda_intel,snd_hda_controller
snd_hda_core           32768  5 snd_hda_codec_hdmi,snd_hda_codec_idt,snd_hda_codec_generic,snd_hda_codec,snd_hda_controller
snd_hwdep              16384  1 snd_hda_codec
snd_seq                69632  0
snd_seq_device         16384  1 snd_seq
snd_pcm               118784  4 snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel,snd_hda_controller
snd_timer              32768  2 snd_pcm,snd_seq
snd                    77824  24 snd_hwdep,snd_timer,snd_hda_codec_hdmi,snd_hda_codec_idt,snd_pcm,snd_seq,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel,snd_seq_device
soundcore              16384  1 snd


If there's anything I can do to help debugging this please let me know.

Comment 1 Jason Tibbitts 2015-08-13 19:17:48 UTC
(Broken functionality, worked in 4.0.8, broken in 4.1, latet tested 4.1.4)

It might be worth attaching dmesg output, and noting anything that changes between the working abd broken kernels.

I know it's not directly on point, but https://wiki.archlinux.org/index.php/HP_EliteBook_840_G1#Audio has some information about kernel parameters which you might try (though it looks like they just prevent hangs).

Comment 2 Paulo Fidalgo 2015-08-14 09:23:31 UTC
Created attachment 1062938 [details]
dmesg output for 4.0.8

Comment 3 Paulo Fidalgo 2015-08-14 09:23:58 UTC
Created attachment 1062939 [details]
dmesg output for 4.1.4

Comment 4 Paulo Fidalgo 2015-08-14 13:28:17 UTC
I have also followed this: http://www.alsa-project.org/main/index.php/HDA_Analyzer

and will upload the results. I've started with the external mic on and then disconnected and connected again. In the 4.1.4 The mic stoped worked.

Comment 5 Paulo Fidalgo 2015-08-14 13:29:24 UTC
Created attachment 1063033 [details]
hda analyzer for 4.0.8 kernel

Comment 6 Paulo Fidalgo 2015-08-14 13:29:48 UTC
Created attachment 1063034 [details]
hda analyzer for 4.1.4 kernel

Comment 7 Paulo Fidalgo 2015-08-14 15:18:26 UTC
Just a quick update: I've been playing with model options and with enable=1,1,0
but got no luck. 

Any other hints where I should look? (Code diffs???)

Comment 8 Sergio Basto 2015-08-18 13:17:30 UTC
I revert back to kernel 4.0.8 kernel but nothing change to me . 

BTW: this could be related with bug #1226480 , something seems to changed on Intel sound cards, recently.

Comment 9 Paulo Fidalgo 2015-08-18 13:21:34 UTC
@Sergio I don't know if is related or not, because when I plug or unplug the headphones the pavucontrol detects correctly my changes.

Worth to mention that I use my laptop connected with an external monitor via DisplayPort. I will repeat the test without the external display connected.

Comment 10 Sergio Basto 2015-08-18 13:55:35 UTC
OK not related.
BTW : can you put back micro working, by software ?  [1]  

[1] (pt) Consegues voltar a pôr o micro a funcionar ?

Comment 11 Paulo Fidalgo 2015-08-18 13:57:19 UTC
@Sergio, no it gives me silence only or sometimes a noise.

Comment 12 Paulo Fidalgo 2015-08-18 17:29:31 UTC
Using the laptop without the external monitor doesn't change the behaviour.

Comment 13 Fedora End Of Life 2016-07-19 17:30:09 UTC
Fedora 22 changed to end-of-life (EOL) status on 2016-07-19. Fedora 22 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.