Re: [Xen-devel] Re: [PATCH 3/4] [Net] Support Xen accelerated network plugin modules

Keir Fraser
2007-05-22T14:07:09Z

On 22/5/07 13:44, "Kieran Mansley" <kmansley@solarflare.com>
wrote:

>> Eagerly zap the function pointers, then wait one RCU period so every
CPU
>> goes through a quiescent point before unloading the module?
>>
>>  -- Keir
>
> Am I right in thinking that if one of the functions that was protected
> by RCU was to block, that would be a bad thing?  Clearly the data path
> hooks can''t/don''t block, but I''m not sure
it''s so obvious for things
> like probing a new device.

Are there still module reference counts? If so, functions which may block
can manipulate their module''s reference count.

Or if not, I guess the accelerator module can have a private reference count
checked by whatever unload function gets called from the RCU subsystem. So
that unload becomes deferred until *both* an RCU phase has passed *and* a
reference count has fallen to zero.

 -- Keir