[Mauro Carvalho Chehab - Wed, Jul 18, 2007 at 04:25:38PM -0300]
| Hi Cyrill,
| 
| Em Qua, 2007-07-18 ??s 22:56 +0400, Cyrill Gorcunov escreveu:
| > This patch adds checking of kthread_run return code.
| > 
| > Signed-off-by: Cyrill Gorcunov <[EMAIL PROTECTED]>
| > ---
| > Probably we could just ignore a such situation (we do
| > check for core->kthread value before trying to stop the
| > thread) but we have to leave a footmark in kernel
| > messages anyway I guess. Comments?
| 
| > +           if (IS_ERR(core->kthread)) {
| > +                   err = PTR_ERR(core->kthread);
| > +                   printk(KERN_ERR "Failed to create cx88 audio thread, 
err=%d\n",
| > +                          err);
| > +                   goto fail_unreg;
| 
| I would just remove the goto from your patch. 
| 
| It is safe not starting the kernel thread, but keeping the driver
| initializing.
| 
| The drawback of not having the thread is not changing to stereo on some
| situations and not detecting audio standard changes (some countries may
| have more than one audio standard when you changing from VHF to UHF or
| on Cable TV).
| 
| -- 
| Cheers,
| Mauro
| 

Hi Mauro,
thanks for the answer. Well, here is updated version.

---
From: Cyrill Gorcunov <[EMAIL PROTECTED]>
Subject: [PATCH] Conexant 2388x: check for kthread_run

The patch adds checking of kthread_run return code
and issues a message if it fails.

Signed-off-by: Cyrill Gorcunov <[EMAIL PROTECTED]>
---

 drivers/media/video/cx88/cx88-video.c |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/drivers/media/video/cx88/cx88-video.c 
b/drivers/media/video/cx88/cx88-video.c
index 98fa354..06b233a 100644
--- a/drivers/media/video/cx88/cx88-video.c
+++ b/drivers/media/video/cx88/cx88-video.c
@@ -1881,8 +1881,14 @@ static int __devinit cx8800_initdev(struct pci_dev 
*pci_dev,
        mutex_unlock(&core->lock);
 
        /* start tvaudio thread */
-       if (core->tuner_type != TUNER_ABSENT)
+       if (core->tuner_type != TUNER_ABSENT) {
                core->kthread = kthread_run(cx88_audio_thread, core, "cx88 
tvaudio");
+               if (IS_ERR(core->kthread)) {
+                       err = PTR_ERR(core->kthread);
+                       printk(KERN_ERR "Failed to create cx88 audio thread, 
err=%d\n",
+                              err);
+               }
+       }
        return 0;
 
 fail_unreg:
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to