[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20200706.122626.2248567362397969247.davem@davemloft.net>
Date: Mon, 06 Jul 2020 12:26:26 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: horatiu.vultur@...rochip.com
Cc: nikolay@...ulusnetworks.com, roopa@...ulusnetworks.com,
kuba@...nel.org, jiri@...nulli.us, ivecera@...hat.com,
andrew@...n.ch, UNGLinuxDriver@...rochip.com,
netdev@...r.kernel.org, linux-kernel@...r.kernel.org,
bridge@...ts.linux-foundation.org
Subject: Re: [PATCH net-next 01/12] switchdev: mrp: Extend switchdev API
for MRP Interconnect
From: Horatiu Vultur <horatiu.vultur@...rochip.com>
Date: Mon, 6 Jul 2020 11:18:31 +0200
> +/* SWITCHDEV_OBJ_ID_IN_TEST_MRP */
> +struct switchdev_obj_in_test_mrp {
> + struct switchdev_obj obj;
> + /* The value is in us and a value of 0 represents to stop */
> + u32 interval;
> + u8 max_miss;
> + u32 in_id;
> + u32 period;
> +};
...
> +#define SWITCHDEV_OBJ_IN_TEST_MRP(OBJ) \
> + container_of((OBJ), struct switchdev_obj_in_test_mrp, obj)
> +
> +/* SWICHDEV_OBJ_ID_IN_ROLE_MRP */
> +struct switchdev_obj_in_role_mrp {
> + struct switchdev_obj obj;
> + u16 in_id;
> + u32 ring_id;
> + u8 in_role;
> + struct net_device *i_port;
> +};
...
> +#define SWITCHDEV_OBJ_IN_ROLE_MRP(OBJ) \
> + container_of((OBJ), struct switchdev_obj_in_role_mrp, obj)
> +
> +struct switchdev_obj_in_state_mrp {
> + struct switchdev_obj obj;
> + u8 in_state;
> + u32 in_id;
> +};
Please arrange these structure members in a more optimal order so that
the resulting object is denser. For example, in switchdev_obj_in_role_mrp
if you order it such that:
> + u32 ring_id;
> + u16 in_id;
> + u8 in_role;
You'll have less wasted space from padding.
Use 'pahole' or similar tools to guide you.
Powered by blists - more mailing lists