瀏覽代碼

[PATCH] prevent dmesg warning in zr36067 driver

Fix the warning "Debug: sleeping function called from invalid context at
include/asm/semaphore.h:102" that the zr36067 driver emits every time an
application using JPEG capture starts up (e.g.  mjpegtools' lavrec).

The warning is harmless, but clogs up the dmesg output.  This was logged as
bugzilla #5403.  (Thanks to Christian Casteyde for helping me in fixing
this long-standing annoyance.)

Signed-off-by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Ronald S. Bultje 19 年之前
父節點
當前提交
8bc3efcfbf
共有 1 個文件被更改,包括 2 次插入2 次删除
  1. 2 2
      drivers/media/video/zoran_driver.c

+ 2 - 2
drivers/media/video/zoran_driver.c

@@ -996,8 +996,6 @@ zoran_jpg_queue_frame (struct file          *file,
 		return -EINVAL;
 	}
 
-	spin_lock_irqsave(&zr->spinlock, flags);
-
 	if (fh->jpg_buffers.active == ZORAN_FREE) {
 		if (zr->jpg_buffers.active == ZORAN_FREE) {
 			zr->jpg_buffers = fh->jpg_buffers;
@@ -1016,6 +1014,8 @@ zoran_jpg_queue_frame (struct file          *file,
 		zr36057_enable_jpg(zr, mode);
 	}
 
+	spin_lock_irqsave(&zr->spinlock, flags);
+
 	if (!res) {
 		switch (zr->jpg_buffers.buffer[num].state) {
 		case BUZ_STATE_DONE: