--- /dev/null
+From stable-bounces@linux.kernel.org Mon Mar 24 23:06:39 2008
+Message-ID: <47E56506.8070807@infradead.org>
+Date: Sat, 22 Mar 2008 15:59:02 -0400
+From: Michael Krufky <mkrufky@infradead.org>
+To: stable@kernel.org
+Cc: hverkuil@xs4all.nl, v4l-dvb maintainer list <v4l-dvb-maintainer@linuxtv.org>, ian@iarmst.demon.co.uk, linux-kernel@vger.kernel.org, mchehab@infradead.org
+Subject: V4L: ivtv: Add missing sg_init_table()
+
+From: Ian Armstrong <ian@iarmst.demon.co.uk>
+
+upstream commit: 165e1213e13b49761f8b3fd9314701f83cf3db3a
+
+If a dma transfer is attempted for either yuv or framebuffer output, a
+missing sg_init_table() call causes a kernel BUG in scatterlist.h if
+CONFIG_DEBUG_SG is set.
+
+Signed-off-by: Ian Armstrong <ian@iarmst.demon.co.uk>
+Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
+Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
+Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
+Signed-off-by: Chris Wright <chrisw@sous-sol.org>
+---
+ drivers/media/video/ivtv/ivtv-driver.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+--- a/drivers/media/video/ivtv/ivtv-driver.c
++++ b/drivers/media/video/ivtv/ivtv-driver.c
+@@ -687,6 +687,9 @@ static int __devinit ivtv_init_struct1(s
+ itv->vbi.in.type = V4L2_BUF_TYPE_SLICED_VBI_CAPTURE;
+ itv->vbi.sliced_in = &itv->vbi.in.fmt.sliced;
+
++ /* Init the sg table for osd/yuv output */
++ sg_init_table(itv->udma.SGlist, IVTV_DMA_SG_OSD_ENT);
++
+ /* OSD */
+ itv->osd_global_alpha_state = 1;
+ itv->osd_global_alpha = 255;