tipc: Reduce footprint by un-inlining address routines
Convert address-related inline routines that are more than one line into standard functions, thereby eliminating a significant amount of repeated code. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
c68ca7b720
commit
80e0c33064
2 changed files with 35 additions and 34 deletions
|
@ -92,3 +92,35 @@ int tipc_addr_node_valid(u32 addr)
|
|||
return (tipc_addr_domain_valid(addr) && tipc_node(addr));
|
||||
}
|
||||
|
||||
int tipc_in_scope(u32 domain, u32 addr)
|
||||
{
|
||||
if (!domain || (domain == addr))
|
||||
return 1;
|
||||
if (domain == (addr & 0xfffff000u)) /* domain <Z.C.0> */
|
||||
return 1;
|
||||
if (domain == (addr & 0xff000000u)) /* domain <Z.0.0> */
|
||||
return 1;
|
||||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* tipc_addr_scope - convert message lookup domain to a 2-bit scope value
|
||||
*/
|
||||
|
||||
int tipc_addr_scope(u32 domain)
|
||||
{
|
||||
if (likely(!domain))
|
||||
return TIPC_ZONE_SCOPE;
|
||||
if (tipc_node(domain))
|
||||
return TIPC_NODE_SCOPE;
|
||||
if (tipc_cluster(domain))
|
||||
return TIPC_CLUSTER_SCOPE;
|
||||
return TIPC_ZONE_SCOPE;
|
||||
}
|
||||
|
||||
char *tipc_addr_string_fill(char *string, u32 addr)
|
||||
{
|
||||
snprintf(string, 16, "<%u.%u.%u>",
|
||||
tipc_zone(addr), tipc_cluster(addr), tipc_node(addr));
|
||||
return string;
|
||||
}
|
||||
|
|
|
@ -67,32 +67,6 @@ static inline int may_route(u32 addr)
|
|||
return(addr ^ tipc_own_addr) >> 11;
|
||||
}
|
||||
|
||||
static inline int tipc_in_scope(u32 domain, u32 addr)
|
||||
{
|
||||
if (!domain || (domain == addr))
|
||||
return 1;
|
||||
if (domain == (addr & 0xfffff000u)) /* domain <Z.C.0> */
|
||||
return 1;
|
||||
if (domain == (addr & 0xff000000u)) /* domain <Z.0.0> */
|
||||
return 1;
|
||||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* tipc_addr_scope - convert message lookup domain to a 2-bit scope value
|
||||
*/
|
||||
|
||||
static inline int tipc_addr_scope(u32 domain)
|
||||
{
|
||||
if (likely(!domain))
|
||||
return TIPC_ZONE_SCOPE;
|
||||
if (tipc_node(domain))
|
||||
return TIPC_NODE_SCOPE;
|
||||
if (tipc_cluster(domain))
|
||||
return TIPC_CLUSTER_SCOPE;
|
||||
return TIPC_ZONE_SCOPE;
|
||||
}
|
||||
|
||||
/**
|
||||
* addr_domain - convert 2-bit scope value to equivalent message lookup domain
|
||||
*
|
||||
|
@ -110,14 +84,9 @@ static inline int addr_domain(int sc)
|
|||
return tipc_addr(tipc_zone(tipc_own_addr), 0, 0);
|
||||
}
|
||||
|
||||
static inline char *tipc_addr_string_fill(char *string, u32 addr)
|
||||
{
|
||||
snprintf(string, 16, "<%u.%u.%u>",
|
||||
tipc_zone(addr), tipc_cluster(addr), tipc_node(addr));
|
||||
return string;
|
||||
}
|
||||
|
||||
int tipc_addr_domain_valid(u32);
|
||||
int tipc_addr_node_valid(u32 addr);
|
||||
|
||||
int tipc_in_scope(u32 domain, u32 addr);
|
||||
int tipc_addr_scope(u32 domain);
|
||||
char *tipc_addr_string_fill(char *string, u32 addr);
|
||||
#endif
|
||||
|
|
Loading…
Reference in a new issue