[RFC PATCH 5/5] Make cache manager event handling continue looking if a cache returned NL_SKIP

Roopa Prabhu roopa at cumulusnetworks.com
Mon Nov 5 10:47:14 EST 2012


On 11/5/12 7:27 AM, Thomas Graf wrote:
> On 11/05/12 at 05:37am, roopa at cumulusnetworks.com wrote:
>> From: roopa<roopa at cumulusnetworks.com>
>>
>> Today libnl event_input only looks through the first cache that supports
>> the input msgtype.
>>
>> This patch makes cache manager continue looking through caches if a particular
>> cache returned NL_SKIP. Also changes include_cb to return NL_SKIP if the
>> cache event_filter returns anything other than NL_OK (This is required to
>> support the above)
>>
>> This change is required to support more than one cache handing the
>> same msg type. In the current context it is bridge_link and link caches.
>> link and bridge link cache handle the same msg types but with different
>> families. The link cache cache_include returns NL_SKIP if it receives
>> a msg of family AF_BRIDGE. With this patch cache manager will continue
>> to look through more caches that support the msgtype.
>
> Actually I regard this as a bug. We should be providing the message
> to all caches that have a matching message type registered and not
> depend on the previous cache return NL_SKIP.
>
> Although not the case right now, there may be multiple independant
> cache operations that depend on a single message to receive updates.
>
> Can you update this patch to unconditionally pass the message to all
> caches that match the message type?


ok will do. Thanks.



More information about the libnl mailing list