Re: [PATCH v4 09/10] xen/blkfront: make persistent grants per-queue

Konrad Rzeszutek Wilk
2015-11-05T02:39:49Z

On Mon, Nov 02, 2015 at 12:21:45PM +0800, Bob Liu wrote:
> Make persistent grants per-queue/ring instead of per-device, so that we can
> drop the 'dev_lock' and get better scalability.

And what is the performance value for this? How much better
scalability do you get with this?
.. snip..
> @@ -1010,6 +1002,23 @@ static void blkif_free_ring(struct blkfront_ring_info *rinfo)
> }
> }
>
> + /* Remove all persistent grants */

Missing full stop.
> + if (!list_empty(&rinfo->grants)) {
> + list_for_each_entry_safe(persistent_gnt, n,
> + &rinfo->grants, node) {
> + list_del(&persistent_gnt->node);
> + if (persistent_gnt->gref != GRANT_INVALID_REF) {
> + gnttab_end_foreign_access(persistent_gnt->gref,
> + 0, 0UL);
> + rinfo->persistent_gnts_c--;
> + }
> + if (info->feature_persistent)
> + __free_page(pfn_to_page(persistent_gnt->pfn));
> + kfree(persistent_gnt);
> + }
> + }
> + BUG_ON(rinfo->persistent_gnts_c != 0);
> +