Re: [PATCHSET] block: fixes for long standing issues

From: Jens Axboe
Date: Fri Apr 20 2012 - 04:10:53 EST


On Thu, Apr 19 2012, Tejun Heo wrote:
> Hello,
>
> This patchset fixes two long standing issues and one relatively new
> css ref leak.
>
> a. elvpriv alloc failure, including ioc and icq failures, fails
> request allocation. As those aren't mempool backed and may fail
> indefinitely, this can lead to deadlock under memory pressure.
>
> b. blkgs don't have proper indexing. With enough number of
> request_queues and blk-throttle enabled, block layer can spend
> considerable amount of cpu cycles walking the same list over and
> over again.
>
> c. __blkg_lookup_create() was leaking a css ref on failure path.
>
> This patchset contains the following four patches.
>
> 0001-block-collapse-blk_alloc_request-into-get_request.patch
> 0002-block-fix-elvpriv-allocation-failure-handling.patch
> 0003-blkcg-fix-blkcg-css-ref-leak-in-__blkg_lookup_create.patch
> 0004-blkcg-use-radix-tree-to-index-blkgs-from-blkcg.patch
>
> 0001-0002 fix #a. 0003 fixes #c. 0004 fixes #b.
>
> This patchset is on top of
>
> block/for-3.5/core 5bc4afb1ec "blkcg: drop BLKCG_STAT_{PRIV|POL|OFF} macros"
> + [1] [PATCHSET] block: per-queue policy activation, take#2
> + [2] [PATCHSET] block: cosmetic updates to blkcg API

Applied, thanks Tejun.

--
Jens Axboe

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/