From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from smtp-vbr5.xs4all.nl ([194.109.24.25]:3410 "EHLO smtp-vbr5.xs4all.nl" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751753AbaBJIsJ (ORCPT ); Mon, 10 Feb 2014 03:48:09 -0500 From: Hans Verkuil To: linux-media@vger.kernel.org Cc: m.chehab@samsung.com, laurent.pinchart@ideasonboard.com, s.nawrocki@samsung.com, ismael.luceno@corp.bluecherry.net, pete@sensoray.com, Hans Verkuil Subject: [REVIEWv2 PATCH 33/34] solo6x10: fix 'dma from stack' warning. Date: Mon, 10 Feb 2014 09:46:58 +0100 Message-Id: <1392022019-5519-34-git-send-email-hverkuil@xs4all.nl> In-Reply-To: <1392022019-5519-1-git-send-email-hverkuil@xs4all.nl> References: <1392022019-5519-1-git-send-email-hverkuil@xs4all.nl> Sender: linux-media-owner@vger.kernel.org List-ID: From: Hans Verkuil Signed-off-by: Hans Verkuil --- drivers/staging/media/solo6x10/solo6x10-disp.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/drivers/staging/media/solo6x10/solo6x10-disp.c b/drivers/staging/media/solo6x10/solo6x10-disp.c index 44d98b8..b529a96 100644 --- a/drivers/staging/media/solo6x10/solo6x10-disp.c +++ b/drivers/staging/media/solo6x10/solo6x10-disp.c @@ -213,19 +213,21 @@ int solo_set_motion_threshold(struct solo_dev *solo_dev, u8 ch, u16 val) int solo_set_motion_block(struct solo_dev *solo_dev, u8 ch, const u16 *thresholds) { + const unsigned size = sizeof(u16) * 64; u32 off = SOLO_MOT_FLAG_AREA + ch * SOLO_MOT_THRESH_SIZE * 2; - u16 buf[64]; + u16 *buf; int x, y; int ret = 0; - memset(buf, 0, sizeof(buf)); + buf = kzalloc(size, GFP_KERNEL); for (y = 0; y < SOLO_MOTION_SZ; y++) { for (x = 0; x < SOLO_MOTION_SZ; x++) buf[x] = cpu_to_le16(thresholds[y * SOLO_MOTION_SZ + x]); ret |= solo_p2m_dma(solo_dev, 1, buf, - SOLO_MOTION_EXT_ADDR(solo_dev) + off + y * sizeof(buf), - sizeof(buf), 0, 0); + SOLO_MOTION_EXT_ADDR(solo_dev) + off + y * size, + size, 0, 0); } + kfree(buf); return ret; } -- 1.8.5.2