Commit 6861800c authored by Mike Isely's avatar Mike Isely Committed by Mauro Carvalho Chehab
Browse files

V4L/DVB: pvrusb2: Avoid using stack allocated buffers when performing USB I/O



Drivers shouldn't assume that the stack is DMA-safe.

[mchehab@redhat.com: fix patch description]
Signed-off-by: default avatarMike Isely <isely@pobox.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent c641a189
Loading
Loading
Loading
Loading
+11 −1
Original line number Diff line number Diff line
@@ -4084,12 +4084,20 @@ void pvr2_hdw_device_reset(struct pvr2_hdw *hdw)

void pvr2_hdw_cpureset_assert(struct pvr2_hdw *hdw,int val)
{
	char da[1];
	char *da;
	unsigned int pipe;
	int ret;

	if (!hdw->usb_dev) return;

	da = kmalloc(16, GFP_KERNEL);

	if (da == NULL) {
		pvr2_trace(PVR2_TRACE_ERROR_LEGS,
			   "Unable to allocate memory to control CPU reset");
		return;
	}

	pvr2_trace(PVR2_TRACE_INIT,"cpureset_assert(%d)",val);

	da[0] = val ? 0x01 : 0x00;
@@ -4103,6 +4111,8 @@ void pvr2_hdw_cpureset_assert(struct pvr2_hdw *hdw,int val)
			   "cpureset_assert(%d) error=%d",val,ret);
		pvr2_hdw_render_useless(hdw);
	}

	kfree(da);
}