Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752932AbbDQI3i (ORCPT ); Fri, 17 Apr 2015 04:29:38 -0400 Received: from mailhub.sw.ru ([195.214.232.25]:23496 "EHLO relay.sw.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751130AbbDQI3d (ORCPT ); Fri, 17 Apr 2015 04:29:33 -0400 From: Dmitry Monakhov To: linux-kernel@vger.kernel.org Cc: linux-fsdevel@vger.kernel.org, axboe@kernel.dk, viro@zeniv.linux.org.uk, dm-devel@redhat.com Subject: [PATCH 0/7] fs: add blkdev name format specifier v2 Date: Fri, 17 Apr 2015 12:29:12 +0400 Message-Id: <1429259359-13480-1-git-send-email-dmonakhov@openvz.org> X-Mailer: git-send-email 1.9.3 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1367 Lines: 30 Currently in order to print block_device name one should use blkdev() helper which requires temproral buffer of size BDEVNAME_SIZE (32bytes). This is very ineffective because result in stack usage bloating for deep IO call traces where stack usage is close to maximum values. It is reasonable to introduce dedicated format specifier for block_device name, unfortunately "%pb", "%pB", "%pd" and "%pD" are already reserved for other data types I've pick "%pg" ala geometry. If some one want to offer sane spacifier name please let me know. Changes from from v2 - fix use after free in dm/raid10 (Spotted by Jan Kara) Changes from from v1 - bdevname() now works via "%pg" format specifier (in responce to Joe's comments) TOC: ## Add format helpers and simple cleanup lib: vsprintf add pg format specifier fs: use gendisk disk_name where possible ## migrate subsystems to format helpers block: use block_device name vsprintf helper fs: use block_device name vsprintf helper md: use block_device name vsprintf helper v2 block/partitions use block_device name vsprintf help v2 drivers: use block_device name vsprintf helper -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/