lkml.org 
[lkml]   [2018]   [Jul]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH v5 1/8] interconnect: Add generic on-chip interconnect API
On Sun, 1 Jul 2018 at 13:09, Georgi Djakov <georgi.djakov@linaro.org> wrote:
>
> Hi Vincent,
>
> On 27.06.18 г. 9:19, Vincent Guittot wrote:
> > Hi Georgi
> >
> > On Wed, 20 Jun 2018 at 14:11, Georgi Djakov <georgi.djakov@linaro.org> wrote:
> >
> > [snip]
> >
> >> +
> >> +static struct icc_path *path_allocate(struct icc_node *dst, ssize_t num_nodes)
> >> +{
> >> + struct icc_node *node = dst;
> >> + struct icc_path *path;
> >> + size_t i;
> >> +
> >> + path = kzalloc(sizeof(*path) + num_nodes * sizeof(*path->reqs),
> >
> > Should be (num_nodes -1) * sizeof(*path->reqs) as there is already 1
> > icc_req in icc_path struct
>
> reqs[] is a flexible array member and it's size is not included in
> sizeof(*path)

ah yes, my eyes saw "struct icc_req reqs[0];" but my brain was
reading "struct icc_req reqs[1]"

Sorry for the noise

>
> Thanks,
> Georgi
>
> >> + GFP_KERNEL);
> >> + if (!path)
> >> + return ERR_PTR(-ENOMEM);
> >> +
> >> + path->num_nodes = num_nodes;
> >> +
> >> + for (i = 0; i < num_nodes; i++) {
> >> + hlist_add_head(&path->reqs[i].req_node, &node->req_list);
> >> +
> >> + path->reqs[i].node = node;
> >> + /* reference to previous node was saved during path traversal */
> >> + node = node->reverse;
> >> + }
> >> +
> >> + return path;
> >> +}
> >> +
> >
> > [snip]
> >
>

\
 
 \ /
  Last update: 2018-07-02 09:24    [W:0.060 / U:0.292 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site