[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCHv5 12/14] xen-blkback: safely unmap grants in case they are still in use



On 03/09/2015 07:02 PM, David Vrabel wrote:
> On 09/03/15 10:51, Bob Liu wrote:
>>
>> On 03/09/2015 05:30 PM, David Vrabel wrote:
>>> On 09/03/15 09:09, Bob Liu wrote:
>>>> Hi David,
>>>>
>>>> Recently I met an issue which is likely related with this patch. It
>>>> happened when running block benchmark on domU, the backend was an iSCSI
>>>> disk connected to dom0. I got below panic at put_page_testzero() on
>>>> dom0, at that time the ixgbe network card was freeing skb pages in
>>>> __skb_frag_unref() but the page->_count was already 0.
>>>> Do you think is it possiable that page was already freed by blkback?
>>>
>>> It's possible, but in this case I think the blkback device must have
>>> been destroyed for this to have happened,  because blkback doesn't free
>>> the pages until it is destroyed.
>>>
>>
>> Sorry, I didn't get the point here, doesn't bio_complete free pages?
>> E.g.
>> __end_block_io_op() > xen_blkbk_unmap_and_respond() > put_free_pages()
>> Then shrink_free_pagepool() free the page finally.
> 
> Ug. That's all the persistent grant stuff I'm not very familiar with.
> Perhaps Roger can comment?
> 

Well, I think I may figure out this issue but haven't confirmed yet.

In purge_persistent_gnt() > unmap_purged_grants(), we should also change
to use gnttab_unmap_refs_async().

-- 
Regards,
-Bob

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.