<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-stable.git/sound, branch v4.6.6</title>
<subtitle>Linux kernel stable tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/'/>
<entry>
<title>ALSA: timer: Fix leak in events via snd_timer_user_tinterrupt</title>
<updated>2016-08-10T10:54:44+00:00</updated>
<author>
<name>Kangjie Lu</name>
<email>kangjielu@gmail.com</email>
</author>
<published>2016-05-03T20:44:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=1fae440a4f2276050264c6f7029ac5740fa6f932'/>
<id>1fae440a4f2276050264c6f7029ac5740fa6f932</id>
<content type='text'>
commit e4ec8cc8039a7063e24204299b462bd1383184a5 upstream.

The stack object “r1” has a total size of 32 bytes. Its field
“event” and “val” both contain 4 bytes padding. These 8 bytes
padding bytes are sent to user without being initialized.

Signed-off-by: Kangjie Lu &lt;kjlu@gatech.edu&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit e4ec8cc8039a7063e24204299b462bd1383184a5 upstream.

The stack object “r1” has a total size of 32 bytes. Its field
“event” and “val” both contain 4 bytes padding. These 8 bytes
padding bytes are sent to user without being initialized.

Signed-off-by: Kangjie Lu &lt;kjlu@gatech.edu&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>ALSA: timer: Fix leak in events via snd_timer_user_ccallback</title>
<updated>2016-08-10T10:54:44+00:00</updated>
<author>
<name>Kangjie Lu</name>
<email>kangjielu@gmail.com</email>
</author>
<published>2016-05-03T20:44:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=5b6fc00bb4ae7e917519b4fb49c9d3befa3897e5'/>
<id>5b6fc00bb4ae7e917519b4fb49c9d3befa3897e5</id>
<content type='text'>
commit 9a47e9cff994f37f7f0dbd9ae23740d0f64f9fe6 upstream.

The stack object “r1” has a total size of 32 bytes. Its field
“event” and “val” both contain 4 bytes padding. These 8 bytes
padding bytes are sent to user without being initialized.

Signed-off-by: Kangjie Lu &lt;kjlu@gatech.edu&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 9a47e9cff994f37f7f0dbd9ae23740d0f64f9fe6 upstream.

The stack object “r1” has a total size of 32 bytes. Its field
“event” and “val” both contain 4 bytes padding. These 8 bytes
padding bytes are sent to user without being initialized.

Signed-off-by: Kangjie Lu &lt;kjlu@gatech.edu&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>ALSA: timer: Fix leak in SNDRV_TIMER_IOCTL_PARAMS</title>
<updated>2016-08-10T10:54:44+00:00</updated>
<author>
<name>Kangjie Lu</name>
<email>kangjielu@gmail.com</email>
</author>
<published>2016-05-03T20:44:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=82a638a293d7f0a699d88fe669a43829e65b0911'/>
<id>82a638a293d7f0a699d88fe669a43829e65b0911</id>
<content type='text'>
commit cec8f96e49d9be372fdb0c3836dcf31ec71e457e upstream.

The stack object “tread” has a total size of 32 bytes. Its field
“event” and “val” both contain 4 bytes padding. These 8 bytes
padding bytes are sent to user without being initialized.

Signed-off-by: Kangjie Lu &lt;kjlu@gatech.edu&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit cec8f96e49d9be372fdb0c3836dcf31ec71e457e upstream.

The stack object “tread” has a total size of 32 bytes. Its field
“event” and “val” both contain 4 bytes padding. These 8 bytes
padding bytes are sent to user without being initialized.

Signed-off-by: Kangjie Lu &lt;kjlu@gatech.edu&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>ALSA: hda: add AMD Stoney PCI ID with proper driver caps</title>
<updated>2016-07-27T15:42:23+00:00</updated>
<author>
<name>Awais Belal</name>
<email>awais_belal@mentor.com</email>
</author>
<published>2016-07-12T10:21:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=5387cd434a12b453803a06e1f7fa502ec3c93aa6'/>
<id>5387cd434a12b453803a06e1f7fa502ec3c93aa6</id>
<content type='text'>
commit d716fb03f76411fc7e138692e33b749cada5c094 upstream.

This allows the device to correctly show up as ATI HDMI
rather than a generic one and allows the driver to use
the available caps.

Signed-off-by: Awais Belal &lt;awais_belal@mentor.com&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit d716fb03f76411fc7e138692e33b749cada5c094 upstream.

This allows the device to correctly show up as ATI HDMI
rather than a generic one and allows the driver to use
the available caps.

Signed-off-by: Awais Belal &lt;awais_belal@mentor.com&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>ALSA: hda - fix use-after-free after module unload</title>
<updated>2016-07-27T15:42:23+00:00</updated>
<author>
<name>Peter Wu</name>
<email>peter@lekensteyn.nl</email>
</author>
<published>2016-07-11T17:51:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=4c9e14a2c1990e6ab55fbe11d800094ed57e886e'/>
<id>4c9e14a2c1990e6ab55fbe11d800094ed57e886e</id>
<content type='text'>
commit ab58d8cc870ef3f0771c197700441936898d1f1d upstream.

register_vga_switcheroo() sets the PM ops from the hda structure which
is freed later in azx_free. Make sure that these ops are cleared.

Caught by KASAN, initially noticed due to a general protection fault.

Fixes: 246efa4a072f ("snd/hda: add runtime suspend/resume on optimus support (v4)")
Signed-off-by: Peter Wu &lt;peter@lekensteyn.nl&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit ab58d8cc870ef3f0771c197700441936898d1f1d upstream.

register_vga_switcheroo() sets the PM ops from the hda structure which
is freed later in azx_free. Make sure that these ops are cleared.

Caught by KASAN, initially noticed due to a general protection fault.

Fixes: 246efa4a072f ("snd/hda: add runtime suspend/resume on optimus support (v4)")
Signed-off-by: Peter Wu &lt;peter@lekensteyn.nl&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>ALSA: ctl: Stop notification after disconnection</title>
<updated>2016-07-27T15:42:23+00:00</updated>
<author>
<name>Takashi Iwai</name>
<email>tiwai@suse.de</email>
</author>
<published>2016-07-08T06:05:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=179f54fee5728e7f33587ffcde329ab5c6e56c3f'/>
<id>179f54fee5728e7f33587ffcde329ab5c6e56c3f</id>
<content type='text'>
commit f388cdcdd160687c6650833f286b9c89c50960ff upstream.

snd_ctl_remove() has a notification for the removal event.  It's
superfluous when done during the device got disconnected.  Although
the notification itself is mostly harmless, it may potentially be
harmful, and should be suppressed.  Actually some components PCM may
free ctl elements during the disconnect or free callbacks, thus it's
no theoretical issue.

This patch adds the check of card-&gt;shutdown flag for avoiding
unnecessary notifications after (or during) the disconnect.

Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit f388cdcdd160687c6650833f286b9c89c50960ff upstream.

snd_ctl_remove() has a notification for the removal event.  It's
superfluous when done during the device got disconnected.  Although
the notification itself is mostly harmless, it may potentially be
harmful, and should be suppressed.  Actually some components PCM may
free ctl elements during the disconnect or free callbacks, thus it's
no theoretical issue.

This patch adds the check of card-&gt;shutdown flag for avoiding
unnecessary notifications after (or during) the disconnect.

Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>ALSA: pcm: Free chmap at PCM free callback, too</title>
<updated>2016-07-27T15:42:23+00:00</updated>
<author>
<name>Takashi Iwai</name>
<email>tiwai@suse.de</email>
</author>
<published>2016-07-08T06:23:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=c88e9adfdb62bf9728dd853c5144d7a7bc0d81a9'/>
<id>c88e9adfdb62bf9728dd853c5144d7a7bc0d81a9</id>
<content type='text'>
commit a8ff48cb70835f48de5703052760312019afea55 upstream.

The chmap ctls assigned to PCM streams are freed in the PCM disconnect
callback.  However, since the disconnect callback isn't called when
the card gets freed before registering, the chmap ctls may still be
left assigned.  They are eventually freed together with other ctls,
but it may cause an Oops at pcm_chmap_ctl_private_free(), as the
function refers to the assigned PCM stream, while the PCM objects have
been already freed beforehand.

The fix is to free the chmap ctls also at PCM free callback, not only
at PCM disconnect.

Reported-by: Laxminath Kasam &lt;b_lkasam@codeaurora.org&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit a8ff48cb70835f48de5703052760312019afea55 upstream.

The chmap ctls assigned to PCM streams are freed in the PCM disconnect
callback.  However, since the disconnect callback isn't called when
the card gets freed before registering, the chmap ctls may still be
left assigned.  They are eventually freed together with other ctls,
but it may cause an Oops at pcm_chmap_ctl_private_free(), as the
function refers to the assigned PCM stream, while the PCM objects have
been already freed beforehand.

The fix is to free the chmap ctls also at PCM free callback, not only
at PCM disconnect.

Reported-by: Laxminath Kasam &lt;b_lkasam@codeaurora.org&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>ALSA: hda/realtek - add new pin definition in alc225 pin quirk table</title>
<updated>2016-07-27T15:42:23+00:00</updated>
<author>
<name>Hui Wang</name>
<email>hui.wang@canonical.com</email>
</author>
<published>2016-07-08T06:26:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=0e8e33aa7f5dc52382f2bc958254f547c9719a60'/>
<id>0e8e33aa7f5dc52382f2bc958254f547c9719a60</id>
<content type='text'>
commit 8a132099f080d7384bb6ab4cc168f76cb4b47d08 upstream.

We have some Dell laptops which can't detect headset mic, the machines
use the codec ALC225, they have some new pin configuration values,
after adding them in the alc225 pin quirk table, they work well.

Signed-off-by: Hui Wang &lt;hui.wang@canonical.com&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 8a132099f080d7384bb6ab4cc168f76cb4b47d08 upstream.

We have some Dell laptops which can't detect headset mic, the machines
use the codec ALC225, they have some new pin configuration values,
after adding them in the alc225 pin quirk table, they work well.

Signed-off-by: Hui Wang &lt;hui.wang@canonical.com&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>ALSA: usb-audio: Fix quirks code is not called</title>
<updated>2016-07-27T15:42:22+00:00</updated>
<author>
<name>Kazuki Oikawa</name>
<email>k@oikw.org</email>
</author>
<published>2016-07-17T16:16:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=3f5f500b1b660ee60558112c55f2464f341201e0'/>
<id>3f5f500b1b660ee60558112c55f2464f341201e0</id>
<content type='text'>
commit 76df52969711ae3725a98f26fbbc6a349803dcbf upstream.

snd_usb_{set_interface,ctl_msg}_quirk checks chip-&gt;usb_id to need
calling a quirks code. But existed code path that not calling
dev_set_drvdata in usb_audio_probe.

Fixes: 79289e24194a ("ALSA: usb-audio: Refer to chip-&gt;usb_id for quirks and MIDI creation")
Signed-off-by: Kazuki Oikawa &lt;k@oikw.org&gt;
Reviewed-by: Takashi Sakamoto &lt;o-takashi@sakamocchi.jp&gt;
Tested-by: Takashi Sakamoto &lt;o-takashi@sakamocchi.jp&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 76df52969711ae3725a98f26fbbc6a349803dcbf upstream.

snd_usb_{set_interface,ctl_msg}_quirk checks chip-&gt;usb_id to need
calling a quirks code. But existed code path that not calling
dev_set_drvdata in usb_audio_probe.

Fixes: 79289e24194a ("ALSA: usb-audio: Refer to chip-&gt;usb_id for quirks and MIDI creation")
Signed-off-by: Kazuki Oikawa &lt;k@oikw.org&gt;
Reviewed-by: Takashi Sakamoto &lt;o-takashi@sakamocchi.jp&gt;
Tested-by: Takashi Sakamoto &lt;o-takashi@sakamocchi.jp&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>ALSA: hda - fix read before array start</title>
<updated>2016-07-27T15:42:22+00:00</updated>
<author>
<name>Bob Copeland</name>
<email>me@bobcopeland.com</email>
</author>
<published>2016-06-25T11:58:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=85d9c85417b55bd3ded0a45463374d2e52762b0d'/>
<id>85d9c85417b55bd3ded0a45463374d2e52762b0d</id>
<content type='text'>
commit 81e43960dce1c8e58e682fb3ec26c1d8f83a9afc upstream.

UBSAN reports the following warning from accessing path-&gt;path[-1]
in set_path_power():

[   16.078040] ================================================================================
[   16.078124] UBSAN: Undefined behaviour in sound/pci/hda/hda_generic.c:3981:17
[   16.078198] index -1 is out of range for type 'hda_nid_t [10]'
[   16.078270] CPU: 2 PID: 1738 Comm: modprobe Not tainted 4.7.0-rc1-wt+ #47
[   16.078274] Hardware name: LENOVO 3443CTO/3443CTO, BIOS G6ET23WW (1.02 ) 08/14/2012
[   16.078278]  ffff8800cb246000 ffff8800cb3638b8 ffffffff815c4fe3 0000000000000032
[   16.078286]  ffff8800cb3638e0 ffffffffffffffff ffff8800cb3638d0 ffffffff8162443d
[   16.078294]  ffffffffa0894200 ffff8800cb363920 ffffffff81624af7 0000000000000292
[   16.078302] Call Trace:
[   16.078311]  [&lt;ffffffff815c4fe3&gt;] dump_stack+0x86/0xd3
[   16.078317]  [&lt;ffffffff8162443d&gt;] ubsan_epilogue+0xd/0x40
[   16.078324]  [&lt;ffffffff81624af7&gt;] __ubsan_handle_out_of_bounds+0x67/0x70
[   16.078335]  [&lt;ffffffffa087665f&gt;] set_path_power+0x1bf/0x230 [snd_hda_codec_generic]
[   16.078344]  [&lt;ffffffffa087880d&gt;] add_pin_power_ctls+0x8d/0xc0 [snd_hda_codec_generic]
[   16.078352]  [&lt;ffffffffa087f190&gt;] ? pin_power_down_callback+0x20/0x20 [snd_hda_codec_generic]
[   16.078360]  [&lt;ffffffffa0878947&gt;] add_all_pin_power_ctls+0x107/0x150 [snd_hda_codec_generic]
[   16.078370]  [&lt;ffffffffa08842b3&gt;] snd_hda_gen_parse_auto_config+0x2d73/0x49e0 [snd_hda_codec_generic]
[   16.078376]  [&lt;ffffffff81173360&gt;] ? trace_hardirqs_on_caller+0x1b0/0x2c0
[   16.078390]  [&lt;ffffffffa089df27&gt;] alc_parse_auto_config+0x147/0x310 [snd_hda_codec_realtek]
[   16.078402]  [&lt;ffffffffa08a332a&gt;] patch_alc269+0x23a/0x560 [snd_hda_codec_realtek]
[   16.078417]  [&lt;ffffffffa0838644&gt;] hda_codec_driver_probe+0xa4/0x1a0 [snd_hda_codec]
[   16.078424]  [&lt;ffffffff817bbac1&gt;] driver_probe_device+0x101/0x380
[   16.078430]  [&lt;ffffffff817bbdf9&gt;] __driver_attach+0xb9/0x100
[   16.078438]  [&lt;ffffffff817bbd40&gt;] ? driver_probe_device+0x380/0x380
[   16.078444]  [&lt;ffffffff817b8d20&gt;] bus_for_each_dev+0x70/0xc0
[   16.078449]  [&lt;ffffffff817bb087&gt;] driver_attach+0x27/0x50
[   16.078454]  [&lt;ffffffff817ba956&gt;] bus_add_driver+0x166/0x2c0
[   16.078460]  [&lt;ffffffffa0369000&gt;] ? 0xffffffffa0369000
[   16.078465]  [&lt;ffffffff817bd13d&gt;] driver_register+0x7d/0x130
[   16.078477]  [&lt;ffffffffa083816f&gt;] __hda_codec_driver_register+0x6f/0x90 [snd_hda_codec]
[   16.078488]  [&lt;ffffffffa036901e&gt;] realtek_driver_init+0x1e/0x1000 [snd_hda_codec_realtek]
[   16.078493]  [&lt;ffffffff8100215e&gt;] do_one_initcall+0x4e/0x1d0
[   16.078499]  [&lt;ffffffff8119f54d&gt;] ? rcu_read_lock_sched_held+0x6d/0x80
[   16.078504]  [&lt;ffffffff813701b1&gt;] ? kmem_cache_alloc_trace+0x391/0x560
[   16.078510]  [&lt;ffffffff812bb314&gt;] ? do_init_module+0x28/0x273
[   16.078515]  [&lt;ffffffff812bb387&gt;] do_init_module+0x9b/0x273
[   16.078522]  [&lt;ffffffff811e3782&gt;] load_module+0x20b2/0x3410
[   16.078527]  [&lt;ffffffff811df140&gt;] ? m_show+0x210/0x210
[   16.078533]  [&lt;ffffffff813b2b26&gt;] ? kernel_read+0x66/0xe0
[   16.078541]  [&lt;ffffffff811e4cfa&gt;] SYSC_finit_module+0xba/0xc0
[   16.078547]  [&lt;ffffffff811e4d1e&gt;] SyS_finit_module+0xe/0x10
[   16.078552]  [&lt;ffffffff81a860fc&gt;] entry_SYSCALL_64_fastpath+0x1f/0xbd
[   16.078556] ================================================================================

Fix by checking path-&gt;depth before use.

Signed-off-by: Bob Copeland &lt;me@bobcopeland.com&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 81e43960dce1c8e58e682fb3ec26c1d8f83a9afc upstream.

UBSAN reports the following warning from accessing path-&gt;path[-1]
in set_path_power():

[   16.078040] ================================================================================
[   16.078124] UBSAN: Undefined behaviour in sound/pci/hda/hda_generic.c:3981:17
[   16.078198] index -1 is out of range for type 'hda_nid_t [10]'
[   16.078270] CPU: 2 PID: 1738 Comm: modprobe Not tainted 4.7.0-rc1-wt+ #47
[   16.078274] Hardware name: LENOVO 3443CTO/3443CTO, BIOS G6ET23WW (1.02 ) 08/14/2012
[   16.078278]  ffff8800cb246000 ffff8800cb3638b8 ffffffff815c4fe3 0000000000000032
[   16.078286]  ffff8800cb3638e0 ffffffffffffffff ffff8800cb3638d0 ffffffff8162443d
[   16.078294]  ffffffffa0894200 ffff8800cb363920 ffffffff81624af7 0000000000000292
[   16.078302] Call Trace:
[   16.078311]  [&lt;ffffffff815c4fe3&gt;] dump_stack+0x86/0xd3
[   16.078317]  [&lt;ffffffff8162443d&gt;] ubsan_epilogue+0xd/0x40
[   16.078324]  [&lt;ffffffff81624af7&gt;] __ubsan_handle_out_of_bounds+0x67/0x70
[   16.078335]  [&lt;ffffffffa087665f&gt;] set_path_power+0x1bf/0x230 [snd_hda_codec_generic]
[   16.078344]  [&lt;ffffffffa087880d&gt;] add_pin_power_ctls+0x8d/0xc0 [snd_hda_codec_generic]
[   16.078352]  [&lt;ffffffffa087f190&gt;] ? pin_power_down_callback+0x20/0x20 [snd_hda_codec_generic]
[   16.078360]  [&lt;ffffffffa0878947&gt;] add_all_pin_power_ctls+0x107/0x150 [snd_hda_codec_generic]
[   16.078370]  [&lt;ffffffffa08842b3&gt;] snd_hda_gen_parse_auto_config+0x2d73/0x49e0 [snd_hda_codec_generic]
[   16.078376]  [&lt;ffffffff81173360&gt;] ? trace_hardirqs_on_caller+0x1b0/0x2c0
[   16.078390]  [&lt;ffffffffa089df27&gt;] alc_parse_auto_config+0x147/0x310 [snd_hda_codec_realtek]
[   16.078402]  [&lt;ffffffffa08a332a&gt;] patch_alc269+0x23a/0x560 [snd_hda_codec_realtek]
[   16.078417]  [&lt;ffffffffa0838644&gt;] hda_codec_driver_probe+0xa4/0x1a0 [snd_hda_codec]
[   16.078424]  [&lt;ffffffff817bbac1&gt;] driver_probe_device+0x101/0x380
[   16.078430]  [&lt;ffffffff817bbdf9&gt;] __driver_attach+0xb9/0x100
[   16.078438]  [&lt;ffffffff817bbd40&gt;] ? driver_probe_device+0x380/0x380
[   16.078444]  [&lt;ffffffff817b8d20&gt;] bus_for_each_dev+0x70/0xc0
[   16.078449]  [&lt;ffffffff817bb087&gt;] driver_attach+0x27/0x50
[   16.078454]  [&lt;ffffffff817ba956&gt;] bus_add_driver+0x166/0x2c0
[   16.078460]  [&lt;ffffffffa0369000&gt;] ? 0xffffffffa0369000
[   16.078465]  [&lt;ffffffff817bd13d&gt;] driver_register+0x7d/0x130
[   16.078477]  [&lt;ffffffffa083816f&gt;] __hda_codec_driver_register+0x6f/0x90 [snd_hda_codec]
[   16.078488]  [&lt;ffffffffa036901e&gt;] realtek_driver_init+0x1e/0x1000 [snd_hda_codec_realtek]
[   16.078493]  [&lt;ffffffff8100215e&gt;] do_one_initcall+0x4e/0x1d0
[   16.078499]  [&lt;ffffffff8119f54d&gt;] ? rcu_read_lock_sched_held+0x6d/0x80
[   16.078504]  [&lt;ffffffff813701b1&gt;] ? kmem_cache_alloc_trace+0x391/0x560
[   16.078510]  [&lt;ffffffff812bb314&gt;] ? do_init_module+0x28/0x273
[   16.078515]  [&lt;ffffffff812bb387&gt;] do_init_module+0x9b/0x273
[   16.078522]  [&lt;ffffffff811e3782&gt;] load_module+0x20b2/0x3410
[   16.078527]  [&lt;ffffffff811df140&gt;] ? m_show+0x210/0x210
[   16.078533]  [&lt;ffffffff813b2b26&gt;] ? kernel_read+0x66/0xe0
[   16.078541]  [&lt;ffffffff811e4cfa&gt;] SYSC_finit_module+0xba/0xc0
[   16.078547]  [&lt;ffffffff811e4d1e&gt;] SyS_finit_module+0xe/0x10
[   16.078552]  [&lt;ffffffff81a860fc&gt;] entry_SYSCALL_64_fastpath+0x1f/0xbd
[   16.078556] ================================================================================

Fix by checking path-&gt;depth before use.

Signed-off-by: Bob Copeland &lt;me@bobcopeland.com&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
</feed>
