Thread (3 messages) 3 messages, 2 authors, 2021-03-24

Re: [PATCH RESEND] PCI: dwc: put struct dw_pcie::{ep,pp} into a union to reduce its size

From: Alexander Lobakin <hidden>
Date: 2021-03-24 11:35:57
Also in: lkml

From: Krzysztof Wilczyński <redacted>
Date: Wed, 24 Mar 2021 02:31:42 +0100
Hi Alexander,
Hi!
Thank you for sending the patch over!
quoted
A single dw_pcie entity can't be a root complex and an endpoint at
the same time.
Nice catch!

A small nitpick: this would be Root Complex and Endpoint, as it's
customary to capitalise these.

Also, if you could capitalise the subject line - it could also perhaps
be simplified to something like, for example:

  Optimize struct dw_pcie to reduce its size

Feel free to ignore both suggestions, as these are just nitpicks.
They are both correct, so I can send a v2 if this one wont't be
picked to the tree, let's say, this week.
quoted
We can use this to reduce the size of dw_pcie by 80, from 280 to 200
bytes (on x32, guess more on x64), by putting the related embedded
structures (struct pcie_port and struct dw_pcie_ep) into a union.
[...]
quoted
-	struct pcie_port	pp;
-	struct dw_pcie_ep	ep;
+	union {
+		struct pcie_port	pp;
+		struct dw_pcie_ep	ep;
+	};
[...]

How did you measure the difference?  Often, people include pahole output
for the "before" and "after", so to speak, to showcase the difference
and/or improvement.  Do you have something like that handy?
I didn't use pahole to measure the difference, just printed sizeofs
for the structures "before" and "after". But I can get pahole's
output and include it in v2 to make commit message more useful.
Krzysztof
Thanks!
Al
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help