From: Hans de Goede <hdegoede@redhat.com>
To: linux-arm-kernel@lists.infradead.org
Subject: Re: [linux-sunxi] [PATCH 2/4] simplefb: Add support for enumerating simplefb dt nodes in /chosen
Date: Thu, 13 Nov 2014 08:40:35 +0000 [thread overview]
Message-ID: <54646E83.9070704@redhat.com> (raw)
In-Reply-To: <CAMuHMdVSfYyHc52Tdu_wzb6ZYPzeZtOzweUwADHxiJLypuBQNw@mail.gmail.com>
Hi,
On 11/13/2014 09:34 AM, Geert Uytterhoeven wrote:
> Hi Hans,
>
> On Thu, Nov 13, 2014 at 9:27 AM, Hans de Goede <hdegoede@redhat.com> wrote:
>>>> + char name[16];
>>>> + struct device_node *np;
>>>> +
>>>> + ret = platform_driver_register(&simplefb_driver);
>>>> + if (ret)
>>>> + return ret;
>>>> +
>>>> + for (i = 0; ; i++) {
>>>> + snprintf(name, sizeof(name), "framebuffer%d", i);
>>>
>>> This smells like an infinite loop: we can be pretty sure that no
>>> hardware will ever exist with more than 9999 (I think?) framebuffers,
>>> however if that ever happens this'll loop until it runs out of RAM.
>>> Maybe add a suitably high limit to the for loop?
>>
>> The loop will stop as soon as there are no more framebuffer# nodes in chosen,
>> so the loop is only infinite if there are infinite nodes in the devicetree,
>> which would make the devicetree infinitely large, so this will never happen.
>
> If there are 10000 frame buffers, the loop will continue beyond that,
> as the index will be truncated to 4 digits due to the size of name[].
> It will stop when (signed) i becomes negative, though ;-)
>
> One solution is to increase the size of name[],
This is probably never going to happen, but I'll increase the size of name in v2
anyways.
Regards,
Hans
WARNING: multiple messages have this Message-ID (diff)
From: hdegoede@redhat.com (Hans de Goede)
To: linux-arm-kernel@lists.infradead.org
Subject: [linux-sunxi] [PATCH 2/4] simplefb: Add support for enumerating simplefb dt nodes in /chosen
Date: Thu, 13 Nov 2014 09:40:35 +0100 [thread overview]
Message-ID: <54646E83.9070704@redhat.com> (raw)
In-Reply-To: <CAMuHMdVSfYyHc52Tdu_wzb6ZYPzeZtOzweUwADHxiJLypuBQNw@mail.gmail.com>
Hi,
On 11/13/2014 09:34 AM, Geert Uytterhoeven wrote:
> Hi Hans,
>
> On Thu, Nov 13, 2014 at 9:27 AM, Hans de Goede <hdegoede@redhat.com> wrote:
>>>> + char name[16];
>>>> + struct device_node *np;
>>>> +
>>>> + ret = platform_driver_register(&simplefb_driver);
>>>> + if (ret)
>>>> + return ret;
>>>> +
>>>> + for (i = 0; ; i++) {
>>>> + snprintf(name, sizeof(name), "framebuffer%d", i);
>>>
>>> This smells like an infinite loop: we can be pretty sure that no
>>> hardware will ever exist with more than 9999 (I think?) framebuffers,
>>> however if that ever happens this'll loop until it runs out of RAM.
>>> Maybe add a suitably high limit to the for loop?
>>
>> The loop will stop as soon as there are no more framebuffer# nodes in chosen,
>> so the loop is only infinite if there are infinite nodes in the devicetree,
>> which would make the devicetree infinitely large, so this will never happen.
>
> If there are 10000 frame buffers, the loop will continue beyond that,
> as the index will be truncated to 4 digits due to the size of name[].
> It will stop when (signed) i becomes negative, though ;-)
>
> One solution is to increase the size of name[],
This is probably never going to happen, but I'll increase the size of name in v2
anyways.
Regards,
Hans
WARNING: multiple messages have this Message-ID (diff)
From: Hans de Goede <hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: Geert Uytterhoeven <geert-Td1EMuHUCqxL1ZNQvxDV9g@public.gmane.org>
Cc: Julian Calaby
<julian.calaby-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
linux-sunxi <linux-sunxi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>,
Tomi Valkeinen <tomi.valkeinen-l0cyMroinI0@public.gmane.org>,
Stephen Warren <swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>,
Jean-Christophe Plagniol-Villard
<plagnioj-sclMFOaUSTBWk0Htik3J/w@public.gmane.org>,
Grant Likely
<grant.likely-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
Luc Verhaegen <libv-AgBVmzD5pcezQB+pC5nmwQ@public.gmane.org>,
Maxime Ripard
<maxime.ripard-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>,
Mike Turquette
<mturquette-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
David Herrmann
<dh.herrmann-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
Linux Fbdev development list
<linux-fbdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
"Mailing List,
Arm"
<linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>,
devicetree <devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
Subject: Re: [PATCH 2/4] simplefb: Add support for enumerating simplefb dt nodes in /chosen
Date: Thu, 13 Nov 2014 09:40:35 +0100 [thread overview]
Message-ID: <54646E83.9070704@redhat.com> (raw)
In-Reply-To: <CAMuHMdVSfYyHc52Tdu_wzb6ZYPzeZtOzweUwADHxiJLypuBQNw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
Hi,
On 11/13/2014 09:34 AM, Geert Uytterhoeven wrote:
> Hi Hans,
>
> On Thu, Nov 13, 2014 at 9:27 AM, Hans de Goede <hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> wrote:
>>>> + char name[16];
>>>> + struct device_node *np;
>>>> +
>>>> + ret = platform_driver_register(&simplefb_driver);
>>>> + if (ret)
>>>> + return ret;
>>>> +
>>>> + for (i = 0; ; i++) {
>>>> + snprintf(name, sizeof(name), "framebuffer%d", i);
>>>
>>> This smells like an infinite loop: we can be pretty sure that no
>>> hardware will ever exist with more than 9999 (I think?) framebuffers,
>>> however if that ever happens this'll loop until it runs out of RAM.
>>> Maybe add a suitably high limit to the for loop?
>>
>> The loop will stop as soon as there are no more framebuffer# nodes in chosen,
>> so the loop is only infinite if there are infinite nodes in the devicetree,
>> which would make the devicetree infinitely large, so this will never happen.
>
> If there are 10000 frame buffers, the loop will continue beyond that,
> as the index will be truncated to 4 digits due to the size of name[].
> It will stop when (signed) i becomes negative, though ;-)
>
> One solution is to increase the size of name[],
This is probably never going to happen, but I'll increase the size of name in v2
anyways.
Regards,
Hans
next prev parent reply other threads:[~2014-11-13 8:40 UTC|newest]
Thread overview: 90+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-12 22:08 [PATCH 1/4] dt-bindings: simplefb: Specify node location and handoff related properties Hans de Goede
2014-11-12 22:08 ` Hans de Goede
2014-11-12 22:08 ` Hans de Goede
2014-11-12 22:08 ` [PATCH 2/4] simplefb: Add support for enumerating simplefb dt nodes in /chosen Hans de Goede
2014-11-12 22:08 ` Hans de Goede
2014-11-12 22:08 ` Hans de Goede
2014-11-12 23:39 ` [linux-sunxi] " Julian Calaby
2014-11-12 23:39 ` Julian Calaby
2014-11-12 23:39 ` [linux-sunxi] " Julian Calaby
2014-11-13 8:27 ` Hans de Goede
2014-11-13 8:27 ` Hans de Goede
2014-11-13 8:27 ` [linux-sunxi] " Hans de Goede
2014-11-13 8:34 ` Geert Uytterhoeven
2014-11-13 8:34 ` Geert Uytterhoeven
2014-11-13 8:34 ` [linux-sunxi] " Geert Uytterhoeven
2014-11-13 8:40 ` Hans de Goede [this message]
2014-11-13 8:40 ` Hans de Goede
2014-11-13 8:40 ` [linux-sunxi] " Hans de Goede
2014-11-13 8:47 ` Julian Calaby
2014-11-13 8:47 ` Julian Calaby
2014-11-13 8:47 ` [linux-sunxi] " Julian Calaby
2014-11-13 10:24 ` Grant Likely
2014-11-13 10:24 ` Grant Likely
2014-11-13 10:24 ` [linux-sunxi] " Grant Likely
2014-11-13 8:15 ` Geert Uytterhoeven
2014-11-13 8:15 ` Geert Uytterhoeven
2014-11-13 8:15 ` Geert Uytterhoeven
2014-11-13 8:16 ` Geert Uytterhoeven
2014-11-13 8:16 ` Geert Uytterhoeven
2014-11-13 8:16 ` Geert Uytterhoeven
2014-11-13 8:28 ` Hans de Goede
2014-11-13 8:28 ` Hans de Goede
2014-11-13 8:28 ` Hans de Goede
2014-11-12 22:08 ` [PATCH 3/4] simplefb: Change simplefb_init from module_init to fs_initcall Hans de Goede
2014-11-12 22:08 ` Hans de Goede
2014-11-12 22:08 ` Hans de Goede
2014-11-13 8:52 ` Maxime Ripard
2014-11-13 8:52 ` Maxime Ripard
2014-11-13 8:52 ` Maxime Ripard
2014-11-13 8:58 ` Geert Uytterhoeven
2014-11-13 8:58 ` Geert Uytterhoeven
2014-11-13 8:58 ` Geert Uytterhoeven
2014-11-18 10:19 ` Thierry Reding
2014-11-18 10:19 ` Thierry Reding
2014-11-18 10:19 ` Thierry Reding
2014-11-18 11:01 ` Hans de Goede
2014-11-18 11:01 ` Hans de Goede
2014-11-18 11:01 ` Hans de Goede
2014-11-18 11:21 ` Thierry Reding
2014-11-18 11:21 ` Thierry Reding
2014-11-18 11:21 ` Thierry Reding
2014-11-18 11:46 ` Hans de Goede
2014-11-18 11:46 ` Hans de Goede
2014-11-18 11:46 ` Hans de Goede
2014-11-18 12:44 ` Hans de Goede
2014-11-18 12:44 ` Hans de Goede
2014-11-18 12:44 ` Hans de Goede
2014-11-18 15:16 ` Thierry Reding
2014-11-18 15:16 ` Thierry Reding
2014-11-18 15:16 ` Thierry Reding
2014-11-18 15:28 ` Maxime Ripard
2014-11-18 15:28 ` Maxime Ripard
2014-11-18 15:28 ` Maxime Ripard
2014-11-13 9:24 ` Hans de Goede
2014-11-13 9:24 ` Hans de Goede
2014-11-13 9:24 ` Hans de Goede
2014-11-13 10:29 ` Grant Likely
2014-11-13 10:29 ` Grant Likely
2014-11-13 10:29 ` Grant Likely
2014-11-13 10:31 ` Grant Likely
2014-11-13 10:31 ` Grant Likely
2014-11-13 10:31 ` Grant Likely
2014-11-13 12:01 ` Hans de Goede
2014-11-13 12:01 ` Hans de Goede
2014-11-13 12:01 ` Hans de Goede
2014-11-13 10:42 ` Maxime Ripard
2014-11-13 10:42 ` Maxime Ripard
2014-11-13 10:42 ` Maxime Ripard
2014-11-13 16:13 ` Stefan Monnier
2014-11-13 19:04 ` [linux-sunxi] " Hans de Goede
2014-11-13 19:04 ` Hans de Goede
2014-11-12 22:08 ` [PATCH 4/4] fbcon: Change fbcon_init " Hans de Goede
2014-11-12 22:08 ` Hans de Goede
2014-11-12 22:08 ` Hans de Goede
2014-11-13 8:38 ` [PATCH 1/4] dt-bindings: simplefb: Specify node location and handoff related properties Geert Uytterhoeven
2014-11-13 8:38 ` Geert Uytterhoeven
2014-11-13 8:38 ` Geert Uytterhoeven
2014-11-13 8:43 ` Hans de Goede
2014-11-13 8:43 ` Hans de Goede
2014-11-13 8:43 ` Hans de Goede
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=54646E83.9070704@redhat.com \
--to=hdegoede@redhat.com \
--cc=linux-arm-kernel@lists.infradead.org \
/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.