From: jamal <hadi@cyberus.ca>
To: balbir@in.ibm.com
Cc: Matt Helsley <matthltc@us.ibm.com>,
Shailabh Nagar <nagar@watson.ibm.com>,
linux-kernel <linux-kernel@vger.kernel.org>,
netdev <netdev@vger.kernel.org>
Subject: Re: [RFC][UPDATED PATCH 2.6.16] [Patch 9/9] Generic netlink interface for delay accounting
Date: Sat, 25 Mar 2006 07:52:13 -0500 [thread overview]
Message-ID: <1143291133.5184.32.camel@jzny2> (raw)
In-Reply-To: <20060325094126.GA9376@in.ibm.com>
On Sat, 2006-25-03 at 15:11 +0530, Balbir Singh wrote:
>
> Thanks for the advice, I will dive into nesting. I could not find any
> in tree users who use nesting, so I have a few questions
>
Hrm - I have to say i am suprised theres nothing; i could have sworn
Thomas had done some conversions already.
> nla_nest_start() accepts two parameters an skb and an attribute type.
> Do I have to create a new attribute type like TASKSTATS_TYPE_AGGR to
> contain the nested attributes
>
> TASKSTATS_TYPE_AGGR
> TASKSTATS_TYPE_PID/TGID
> TASKSTATS_TYPE_STATS
>
>
> but this will lead to
>
> TASKSTATS_TYPE_AGGR
> TASKSTATS_TYPE_PID
> TASKSTATS_TYPE_STATS
> TASKSTATS_TYPE_AGGR
> TASKSTATS_TYPE_TGID
> TASKSTATS_TYPE_STATS
>
> being returned from taskstats_exit_pid().
>
no this is wrong by virtue of having TASKSTATS_TYPE_AGGR twice.
Again invoke the rule i cited earlier.
What you could do instead is a second AGGR; and your nesting would be:
TASKSTATS_TYPE_AGGR1 <--- nest start with this type
TASKSTATS_TYPE_PID <-- NLA_U32_PUT
TASKSTATS_TYPE_STATS <-- NAL_PUT_TYPE
<-- nest end of TASKSTATS_TYPE_AGGR1
TASKSTATS_TYPE_AGGR2 <--- nest start with this type
TASKSTATS_TYPE_TGID <-- NLA_U32_PUT
TASKSTATS_TYPE_STATS <-- NAL_PUT_TYPE
<-- nest end of TASKSTATS_TYPE_AGGR2
> The other option is to nest
>
> TASKSTATS_TYPE_PID/TGID
> TASKSTATS_TYPE_STATS
>
The advantage being you dont introduce another T.
> but the problem with this approach is, nla_len contains the length of
> all attributes including the nested attribute. So it is hard to find
> the offset of TASKSTATS_TYPE_STATS in the buffer.
>
So you would distinguish the two as have something like:
TASKSTATS_TYPE_PID
u32 pid
TASKSTATS_TYPE_STATS
TASKSTATS_TYPE_TGID
u32 tgid
TASKSTATS_TYPE_STATS
or
TASKSTATS_TYPE_PID
u32 pid
TASKSTATS_TYPE_TGID
u32 tgid
both should be fine. The difference between the two is the length in the
second case will be 4 and in the other case will be larger.
But come to think of it, this will introduce unneeded semantics; you
have very few items to do, so forget it. Go with scheme #1 but change
the names to TASKSTATS_TYPE_AGGR_PID and TASKSTATS_TYPE_AGGR_TGID.
cheers,
jamal
next prev parent reply other threads:[~2006-03-25 12:52 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1142296834.5858.3.camel@elinux04.optonline.net>
2006-03-14 0:55 ` [Patch 8/9] generic netlink utility functions Shailabh Nagar
2006-03-26 16:44 ` Balbir Singh
2006-03-26 17:06 ` jamal
2006-03-14 0:56 ` [Patch 9/9] Generic netlink interface for delay accounting Shailabh Nagar
2006-03-14 2:29 ` jamal
2006-03-14 2:33 ` Matt Helsley
2006-03-14 2:48 ` jamal
2006-03-14 4:18 ` Shailabh Nagar
2006-03-22 7:49 ` [RFC][UPDATED PATCH 2.6.16] " Balbir Singh
2006-03-23 14:04 ` jamal
2006-03-23 15:41 ` Balbir Singh
2006-03-24 14:04 ` jamal
2006-03-24 14:54 ` Balbir Singh
2006-03-25 1:19 ` jamal
2006-03-25 9:41 ` Balbir Singh
2006-03-25 12:52 ` jamal [this message]
2006-03-25 15:36 ` Balbir Singh
2006-03-25 17:48 ` jamal
2006-03-25 18:22 ` Balbir Singh
2006-03-26 14:05 ` jamal
2006-03-26 16:40 ` Balbir Singh
2006-03-24 1:32 ` Balbir Singh
2006-03-24 14:11 ` jamal
2006-03-24 14:19 ` jamal
2006-03-24 14:59 ` Balbir Singh
2006-03-14 4:29 ` Shailabh Nagar
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=1143291133.5184.32.camel@jzny2 \
--to=hadi@cyberus.ca \
--cc=balbir@in.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=matthltc@us.ibm.com \
--cc=nagar@watson.ibm.com \
--cc=netdev@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox