On 11/02/2015 09:47, Fam Zheng wrote:
>> > +    rcu_read_lock();
>> > +    block = atomic_rcu_read(&ram_list.mru_block);
>> >      if (block && block->host && host - block->host < block->max_length) {
>> >          goto found;
>> >      }
>> >  
>> > -    QLIST_FOREACH(block, &ram_list.blocks, next) {
>> > +    QLIST_FOREACH_RCU(block, &ram_list.blocks, next) {
>> >          /* This case append when the block is not mapped. */
>> >          if (block->host == NULL) {
>> >              continue;
>            }
>            if (host - block->host < block->max_length) {
>                goto found;
>            }
>        }
> ////
>        return NULL;
> 
> Should we call rcu_read_unlock at "////"?

Yes.

Paolo

Reply via email to