From: "Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>
To: Kurt Borja <kuurtb@gmail.com>
Cc: Dell.Client.Kernel@dell.com, Hans de Goede <hdegoede@redhat.com>,
LKML <linux-kernel@vger.kernel.org>,
mario.limonciello@amd.com, platform-driver-x86@vger.kernel.org,
w_armin@gmx.de
Subject: Re: [RFC PATCH 05/21] alienware-wmi: Refactor rgb-zones sysfs group creation
Date: Thu, 5 Dec 2024 15:18:20 +0200 (EET) [thread overview]
Message-ID: <b051f580-a6e0-bd32-a6ad-2d172de3aecc@linux.intel.com> (raw)
In-Reply-To: <fme54i5psnvamh6u7u7o7wlnyzpstiuus6jk73tkjfkoulg2m6@kxicd7efw2rx>
[-- Attachment #1: Type: text/plain, Size: 1919 bytes --]
On Thu, 5 Dec 2024, Kurt Borja wrote:
> On Thu, Dec 05, 2024 at 12:17:01PM +0200, Ilpo Järvinen wrote:
> > On Wed, 4 Dec 2024, Kurt Borja wrote:
> >
> > > Define zone_attrs statically with the use of helper macros and
> > > initialize the zone_attribute_group with driver's .dev_groups.
> > >
> > > This makes match_zone() no longer needed, so drop it.
> > >
> > > Signed-off-by: Kurt Borja <kuurtb@gmail.com>
> > > zone_data =
> > > kcalloc(quirks->num_zones, sizeof(struct platform_zone),
> > > GFP_KERNEL);
You kcalloc() zone_data here for quirks->num_zones entries....
> > > - for (zone = 0; zone < quirks->num_zones; zone++) {
> > > - name = kasprintf(GFP_KERNEL, "zone%02hhX", zone);
> > > - if (name == NULL)
> > > - return 1;
> > > - sysfs_attr_init(&zone_dev_attrs[zone].attr);
> > > - zone_dev_attrs[zone].attr.name = name;
> > > - zone_dev_attrs[zone].attr.mode = 0644;
> > > - zone_dev_attrs[zone].show = zone_show;
> > > - zone_dev_attrs[zone].store = zone_set;
> > > + for (zone = 0; zone < 4; zone++)
> > > zone_data[zone].location = zone;
> >
> > You allocate quirks->num_zones entries to zone_data above but use a
> > literal here?
>
> I did this because quirks->num_zones controlls only visibility now.
This kind of information would be useful to put into the commit message!
It does not control only visibility, see the kcalloc() code above. Did you
mean to alter the alloc too but forgot?
> I didn't feel comfortable leaving an out of bounds access on zone_show()
> and zone_set() when they do `zone_data[location]`.
>
> Still those out of bounds accesses are hidden from user-space (right?) and
> alienware_wmi_init() is getting dropped anyway so I should just leave it
> as zone < quirks->num_zones.
The assignment within this loop will write out of bounds if
quirks->num_zones is less than 4.
--
i.
next prev parent reply other threads:[~2024-12-05 13:18 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-12-05 0:27 [RFC PATCH 00/21] alienware-wmi driver rework Kurt Borja
2024-12-05 0:38 ` [RFC PATCH 01/21] alienware-wmi: Modify parse_rgb() signature Kurt Borja
2024-12-05 0:38 ` [RFC PATCH 02/21] alienware-wmi: Move Lighting Control State Kurt Borja
2024-12-05 0:39 ` [RFC PATCH 03/21] alienware-wmi: Remove unnecessary check at module exit Kurt Borja
2024-12-05 0:39 ` [RFC PATCH 04/21] alienware-wmi: Improve sysfs groups creation Kurt Borja
2024-12-05 0:40 ` [RFC PATCH 05/21] alienware-wmi: Refactor rgb-zones sysfs group creation Kurt Borja
2024-12-05 10:17 ` Ilpo Järvinen
2024-12-05 12:48 ` Kurt Borja
2024-12-05 13:18 ` Ilpo Järvinen [this message]
2024-12-05 13:34 ` Kurt Borja
2024-12-05 0:40 ` [RFC PATCH 06/21] alienware-wmi: Add state container and alienfx_probe() Kurt Borja
2024-12-05 0:40 ` [RFC PATCH 07/21] alienware-wmi: Migrate to state container pattern Kurt Borja
2024-12-05 0:41 ` [RFC PATCH 08/21] alienware-wmi: Add WMI Drivers Kurt Borja
2024-12-05 0:41 ` [RFC PATCH 09/21] alienware-wmi: Initialize WMI drivers Kurt Borja
2024-12-05 0:42 ` [RFC PATCH 10/21] alienware-wmi: Add alienfx OPs to platdata Kurt Borja
2024-12-05 11:05 ` Ilpo Järvinen
2024-12-05 12:50 ` Kurt Borja
2024-12-05 0:43 ` [RFC PATCH 11/21] alienware-wmi: Refactor LED control methods Kurt Borja
2024-12-05 0:43 ` [RFC PATCH 12/21] alienware-wmi: Refactor hdmi, amplifier, deepslp Kurt Borja
2024-12-05 0:44 ` [RFC PATCH 13/21] alienware-wmi: Add a state container for AWCC Kurt Borja
2024-12-05 0:44 ` [RFC PATCH 14/21] alienware-wmi: Migrate thermal methods to wmidev Kurt Borja
2024-12-05 0:44 ` [RFC PATCH 15/21] alienware-wmi: Refactor sysfs visibility methods Kurt Borja
2024-12-05 0:45 ` [RFC PATCH 16/21] alienware-wmi: Make running control state part of platdata Kurt Borja
2024-12-05 11:32 ` Ilpo Järvinen
2024-12-05 13:10 ` Kurt Borja
2024-12-05 14:06 ` Ilpo Järvinen
2024-12-07 2:10 ` Kurt Borja
2024-12-05 0:46 ` [RFC PATCH 17/21] alienware-wmi: Drop thermal methods dependency on quirks Kurt Borja
2024-12-05 11:14 ` Ilpo Järvinen
2024-12-05 12:56 ` Kurt Borja
2024-12-05 0:46 ` [RFC PATCH 18/21] platform-x86: Add header file for alienware-wmi Kurt Borja
2024-12-05 0:47 ` [RFC PATCH 19/21] platform-x86: Rename alienare-wmi Kurt Borja
2024-12-05 11:16 ` Ilpo Järvinen
2024-12-05 12:57 ` Kurt Borja
2024-12-05 0:47 ` [RFC PATCH 20/21] platform-x86: Split the alienware-wmi module Kurt Borja
2024-12-05 0:48 ` [RFC PATCH 21/21] platform-x86: Add config entries to alienware-wmi Kurt Borja
2024-12-06 23:26 ` [RFC PATCH 00/21] alienware-wmi driver rework Armin Wolf
2024-12-07 1:59 ` Kurt Borja
2024-12-07 3:20 ` Armin Wolf
2024-12-07 3:47 ` Kurt Borja
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=b051f580-a6e0-bd32-a6ad-2d172de3aecc@linux.intel.com \
--to=ilpo.jarvinen@linux.intel.com \
--cc=Dell.Client.Kernel@dell.com \
--cc=hdegoede@redhat.com \
--cc=kuurtb@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mario.limonciello@amd.com \
--cc=platform-driver-x86@vger.kernel.org \
--cc=w_armin@gmx.de \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox