Thread (24 messages) flat view 24 messages, 6 authors, 2008-03-12

Re: [RFC PATCH 7/8] [SCTP]: uninline sctp_add_cmd_sf

From: Vlad Yasevich <hidden>
Date: 2008-02-21 15:27:47
Also in: lkml

Ilpo Järvinen wrote:
On Wed, 20 Feb 2008, Vlad Yasevich wrote:
quoted
Ilpo Järvinen wrote:
quoted
I added inline to sctp_add_cmd and appropriate comment there to
avoid adding another call into the call chain. This works at least
with "gcc (GCC) 4.1.2 20070626 (Red Hat 4.1.2-13)". Alternatively,
__sctp_add_cmd could be introduced to .h.
My only concern was performance regressions, but it looks like it
doesn't effect anything from the few quick runs I've made.
There was one call made anyway, it's a bit hard to see how it would hurt 
to push that BUG() deeper down (in fact, this is one of the easiest case 
in this respect, many other cases elsewhere that need uninlining don't 
currently make any calls with inlines).
quoted
Since we are putting sctp_add_cmd_sf() on the call stack, we might
as well get rid of sctp_add_cmd() and reduce it a bit more.
IMHO it is definately better solution for archiving the size reduction,
I just didn't know before that the only sctp_add_cmd call could be 
converted.
That one was a really silly one.  The chance of not calling BUG() in
that one case was so small, that it didn't really make any sense from
the code robustness side.
[...snip...]
quoted
diff --git a/net/sctp/command.c b/net/sctp/command.c
index bb97733..3a06513 100644
--- a/net/sctp/command.c
+++ b/net/sctp/command.c
@@ -51,19 +51,16 @@ int sctp_init_cmd_seq(sctp_cmd_seq_t *seq)
 
 /* Add a command to a sctp_cmd_seq_t.
  * Return 0 if the command sequence is full.
+ *
+ * Inline here is not a mistake, this way sctp_add_cmd_sf doesn't need extra
+ * calls, size penalty is of insignificant magnitude here
This won't be a necessary note anymore. :-)

[...snip...]
Yeah.  If you are going to resubmit, feel free to put my Signed-off-by line.

-vlad
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help