[ofa-general] [PATCH 0/6] opensm: Unicast Routing Cache

Yevgeny Kliteynik kliteyn at dev.mellanox.co.il
Thu Oct 9 17:44:09 PDT 2008


Sasha Khapyorsky wrote:
> On 09:22 Tue 07 Oct     , Hal Rosenstock wrote:
>>> Actually, I was thinking about something else:
>>> Currently we have switch LFT implemented as osm_fwd_tbl_t.
>>> I can remove the unnecessary complexity of the osm_fwd_tbl_t by replacing
>>> it with a simple uint8_t array (same as LFT buffer). Then by simple
>>> comparison I will check whether the recently calculated LFT
>>> matches the switch's LFT, and if there is a match, then lft_buf
>>> can be freed. In this case only the switches that have LFT different
>>> from the recently calculated LFT will have both tables, which would be
>>> rare and temporary - on the next heavy sweep the LFTs would match, and
>>> lft_buf would be freed.
>> Can the forwarding tables be removed ? How would paths be
>> calculated/walked end to end on an SA PathRecord/MultiPathRecord query
>> ? Would that then require query of the LFTs in the switches ?
> 
> No. As far as I understand whole idea is to keep LFT images in raw buffer
> (as they really are) similar to lft_buf instead of osm_fwd_tbl_t.

Right, that is what I meant.

-- Yevgeny

> IMO this simplifies the code in general and makes described optimization
> possible.
> 
> Sasha
> 




More information about the general mailing list