2015-06-18 13:02:41

by Marcin Chojnacki

[permalink] [raw]
Subject: [PATCH] fbdev: remove unnecessary memset in vfb

In vfb_probe memory is allocated using rvmalloc which automatically
sets the allocated memory to zero. This patch removes the second
unnecessary memset in vfb_probe.

Signed-off-by: Marcin Chojnacki <[email protected]>
---
drivers/video/fbdev/vfb.c | 8 --------
1 file changed, 8 deletions(-)

diff --git a/drivers/video/fbdev/vfb.c b/drivers/video/fbdev/vfb.c
index 70a897b..b2d38b7 100644
--- a/drivers/video/fbdev/vfb.c
+++ b/drivers/video/fbdev/vfb.c
@@ -490,14 +490,6 @@ static int vfb_probe(struct platform_device *dev)
if (!(videomemory = rvmalloc(videomemorysize)))
return retval;

- /*
- * VFB must clear memory to prevent kernel info
- * leakage into userspace
- * VGA-based drivers MUST NOT clear memory if
- * they want to be able to take over vgacon
- */
- memset(videomemory, 0, videomemorysize);
-
info = framebuffer_alloc(sizeof(u32) * 256, &dev->dev);
if (!info)
goto err;
--
2.1.4


2015-08-20 07:56:34

by Tomi Valkeinen

[permalink] [raw]
Subject: Re: [PATCH] fbdev: remove unnecessary memset in vfb



On 18/06/15 16:01, Marcin Chojnacki wrote:
> In vfb_probe memory is allocated using rvmalloc which automatically
> sets the allocated memory to zero. This patch removes the second
> unnecessary memset in vfb_probe.
>
> Signed-off-by: Marcin Chojnacki <[email protected]>
> ---
> drivers/video/fbdev/vfb.c | 8 --------
> 1 file changed, 8 deletions(-)

Thanks, queued for 4.3.

Tomi


Attachments:
signature.asc (819.00 B)
OpenPGP digital signature

2015-08-20 08:21:08

by Geert Uytterhoeven

[permalink] [raw]
Subject: Re: [PATCH] fbdev: remove unnecessary memset in vfb

On Thu, Jun 18, 2015 at 3:01 PM, Marcin Chojnacki <[email protected]> wrote:
> In vfb_probe memory is allocated using rvmalloc which automatically
> sets the allocated memory to zero. This patch removes the second
> unnecessary memset in vfb_probe.
>
> Signed-off-by: Marcin Chojnacki <[email protected]>
> ---
> drivers/video/fbdev/vfb.c | 8 --------
> 1 file changed, 8 deletions(-)
>
> diff --git a/drivers/video/fbdev/vfb.c b/drivers/video/fbdev/vfb.c
> index 70a897b..b2d38b7 100644
> --- a/drivers/video/fbdev/vfb.c
> +++ b/drivers/video/fbdev/vfb.c
> @@ -490,14 +490,6 @@ static int vfb_probe(struct platform_device *dev)
> if (!(videomemory = rvmalloc(videomemorysize)))
> return retval;
>
> - /*
> - * VFB must clear memory to prevent kernel info
> - * leakage into userspace
> - * VGA-based drivers MUST NOT clear memory if
> - * they want to be able to take over vgacon
> - */
> - memset(videomemory, 0, videomemorysize);
> -

As vfb also serves as a sample driver, I think it would be worthwhile to move
the comment to rvmalloc().

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected]

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds

2015-08-20 09:05:34

by Tomi Valkeinen

[permalink] [raw]
Subject: Re: [PATCH] fbdev: remove unnecessary memset in vfb


On 20/08/15 11:21, Geert Uytterhoeven wrote:
> On Thu, Jun 18, 2015 at 3:01 PM, Marcin Chojnacki <[email protected]> wrote:
>> In vfb_probe memory is allocated using rvmalloc which automatically
>> sets the allocated memory to zero. This patch removes the second
>> unnecessary memset in vfb_probe.
>>
>> Signed-off-by: Marcin Chojnacki <[email protected]>
>> ---
>> drivers/video/fbdev/vfb.c | 8 --------
>> 1 file changed, 8 deletions(-)
>>
>> diff --git a/drivers/video/fbdev/vfb.c b/drivers/video/fbdev/vfb.c
>> index 70a897b..b2d38b7 100644
>> --- a/drivers/video/fbdev/vfb.c
>> +++ b/drivers/video/fbdev/vfb.c
>> @@ -490,14 +490,6 @@ static int vfb_probe(struct platform_device *dev)
>> if (!(videomemory = rvmalloc(videomemorysize)))
>> return retval;
>>
>> - /*
>> - * VFB must clear memory to prevent kernel info
>> - * leakage into userspace
>> - * VGA-based drivers MUST NOT clear memory if
>> - * they want to be able to take over vgacon
>> - */
>> - memset(videomemory, 0, videomemorysize);
>> -
>
> As vfb also serves as a sample driver, I think it would be worthwhile to move
> the comment to rvmalloc().

I changed the patch as follows:


commit c0a3229313d6931a77e0c1e1c22e398c0312bf6f
Author: Marcin Chojnacki <[email protected]>
Date: Thu Jun 18 15:01:52 2015 +0200

fbdev: remove unnecessary memset in vfb

In vfb_probe memory is allocated using rvmalloc which automatically
sets the allocated memory to zero. This patch removes the second
unnecessary memset in vfb_probe.

Signed-off-by: Marcin Chojnacki <[email protected]>
Signed-off-by: Tomi Valkeinen <[email protected]>

diff --git a/drivers/video/fbdev/vfb.c b/drivers/video/fbdev/vfb.c
index 70a897b1e458..b9c2f81fb6b9 100644
--- a/drivers/video/fbdev/vfb.c
+++ b/drivers/video/fbdev/vfb.c
@@ -51,7 +51,14 @@ static void *rvmalloc(unsigned long size)
if (!mem)
return NULL;

- memset(mem, 0, size); /* Clear the ram out, no junk to the user */
+ /*
+ * VFB must clear memory to prevent kernel info
+ * leakage into userspace
+ * VGA-based drivers MUST NOT clear memory if
+ * they want to be able to take over vgacon
+ */
+
+ memset(mem, 0, size);
adr = (unsigned long) mem;
while (size > 0) {
SetPageReserved(vmalloc_to_page((void *)adr));
@@ -490,14 +497,6 @@ static int vfb_probe(struct platform_device *dev)
if (!(videomemory = rvmalloc(videomemorysize)))
return retval;

- /*
- * VFB must clear memory to prevent kernel info
- * leakage into userspace
- * VGA-based drivers MUST NOT clear memory if
- * they want to be able to take over vgacon
- */
- memset(videomemory, 0, videomemorysize);
-
info = framebuffer_alloc(sizeof(u32) * 256, &dev->dev);
if (!info)
goto err;


Attachments:
signature.asc (819.00 B)
OpenPGP digital signature