From: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
To: Roel Kluin <roel.kluin@gmail.com>
Cc: Joseph Chan <JosephChan@via.com.tw>,
Andrew Morton <akpm@linux-foundation.org>,
Scott Fang <ScottFang@viatech.com.cn>,
linux-fbdev-devel@lists.sourceforge.net,
LKML <linux-kernel@vger.kernel.org>
Subject: Re: [Linux-fbdev-devel] [PATCH] viafb: Use sizeof struct rather than pointer
Date: Sun, 22 Nov 2009 00:59:06 +0100 [thread overview]
Message-ID: <4B087ECA.1070109@gmx.de> (raw)
In-Reply-To: <4B083957.3040500@gmail.com>
Hi,
Roel Kluin schrieb:
> diff --git a/drivers/video/via/viafbdev.c b/drivers/video/via/viafbdev.c
> index 56ec696..7b181e7 100644
> --- a/drivers/video/via/viafbdev.c
> +++ b/drivers/video/via/viafbdev.c
> @@ -680,7 +680,7 @@ static int viafb_ioctl(struct fb_info *info, u_int cmd, u_long arg)
> if (!viafb_gamma_table)
> return -ENOMEM;
> if (copy_from_user(viafb_gamma_table, argp,
> - sizeof(viafb_gamma_table))) {
> + sizeof(*viafb_gamma_table))) {
> kfree(viafb_gamma_table);
> return -EFAULT;
> }
> @@ -694,7 +694,7 @@ static int viafb_ioctl(struct fb_info *info, u_int cmd, u_long arg)
> return -ENOMEM;
> viafb_get_gamma_table(viafb_gamma_table);
> if (copy_to_user(argp, viafb_gamma_table,
> - sizeof(viafb_gamma_table))) {
> + sizeof(*viafb_gamma_table))) {
> kfree(viafb_gamma_table);
> return -EFAULT;
> }
I'm sorry but I fear your fix isn't correct. The reason is a few lines
above:
u32 *viafb_gamma_table;
...
viafb_gamma_table = kmalloc(256 * sizeof(u32), GFP_KERNEL);
so probably the right solution would look like this:
copy_from_user(viafb_gamma_table, argp, 256 * sizeof(u32))
copy_to_user(argp, viafb_gamma_table, 256 * sizeof(u32))
However viafb has way too many private ioctls. I would be curious
whether there exists any program that uses any of them so that they
could be tested. As this ioctl didn't work very well I vote to remove it
at least temporarily.
Thanks for highlighting this problem,
Florian Tobias Schandinat
prev parent reply other threads:[~2009-11-21 23:59 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-11-21 19:01 [PATCH] viafb: Use sizeof struct rather than pointer Roel Kluin
2009-11-21 19:01 ` Roel Kluin
2009-11-21 19:02 ` Roel Kluin
2009-11-21 18:53 ` Thiago Farina
2009-11-21 23:59 ` Florian Tobias Schandinat [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4B087ECA.1070109@gmx.de \
--to=florianschandinat@gmx.de \
--cc=JosephChan@via.com.tw \
--cc=ScottFang@viatech.com.cn \
--cc=akpm@linux-foundation.org \
--cc=linux-fbdev-devel@lists.sourceforge.net \
--cc=linux-kernel@vger.kernel.org \
--cc=roel.kluin@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.