Since kthread_create can be failed, it needs to check 
whether error occurred and return error code.

Signed-off-by: Insu Yun <wuni...@gmail.com>
---
 sound/pci/emu10k1/emu10k1_main.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/sound/pci/emu10k1/emu10k1_main.c b/sound/pci/emu10k1/emu10k1_main.c
index 28e2f8b..b9eac15 100644
--- a/sound/pci/emu10k1/emu10k1_main.c
+++ b/sound/pci/emu10k1/emu10k1_main.c
@@ -1141,6 +1141,12 @@ static int snd_emu10k1_emu1010_init(struct snd_emu10k1 
*emu)
                emu->emu1010.firmware_thread =
                        kthread_create(emu1010_firmware_thread, emu,
                                       "emu1010_firmware");
+               if (IS_ERR(emu->emu1010.firmware_thread)) {
+                       dev_info(emu->card->dev,
+                                       "emu1010: Creating thread failed\n");
+                       return PTR_ERR(emu->emu1010.firmware_thread);
+               }
+
                wake_up_process(emu->emu1010.firmware_thread);
        }
 
-- 
1.9.1

Reply via email to