Sasha Khapyorsky wrote:
Hi Yevgeny,

On 18:03 Thu 30 Oct     , Yevgeny Kliteynik wrote:
Sasha,

This patch frees the switch's lft_buf if it matches the
LFT that is currently configured on switch.

Signed-off-by: Yevgeny Kliteynik <[EMAIL PROTECTED]>

I applied this. Thanks. However one question below.

[snip...]

diff --git a/opensm/opensm/osm_ucast_mgr.c b/opensm/opensm/osm_ucast_mgr.c
index adb6688..175817c 100644
--- a/opensm/opensm/osm_ucast_mgr.c
+++ b/opensm/opensm/osm_ucast_mgr.c
@@ -392,6 +392,20 @@ int osm_ucast_mgr_set_fwd_table(IN osm_ucast_mgr_t * const 
p_mgr,
        context.lft_context.node_guid = osm_node_get_node_guid(p_node);
        context.lft_context.set_method = TRUE;

+       if (!p_sw->lft_buf) {
+               /* any routing should provide the lft_buf */
+               CL_ASSERT(p_mgr->p_subn->opt.use_ucast_cache &&
+                         p_mgr->cache_valid && !p_sw->need_update);
+               goto Exit;
+       }
+
+       if (!p_sw->need_update &&
+           !memcmp(p_sw->lft, p_sw->lft_buf, IB_LID_UCAST_END_HO + 1)) {
+               free(p_sw->lft_buf);
+               p_sw->lft_buf = NULL;
+               goto Exit;
+       }
+

So buffers are freed only on next routing iteration (heavy sweep). Isn't
it better to drop it when LFT images from switches are received in
osm_lin_fwd_rcv.c?

Sure, why not. That way the memory would be freed faster.

-- Yevgeny

Sasha


_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to