From patchwork Thu Jul 24 08:42:43 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Dryomov X-Patchwork-Id: 4615021 Return-Path: X-Original-To: patchwork-ceph-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork2.web.kernel.org (Postfix) with ESMTP id CB764C0514 for ; Thu, 24 Jul 2014 08:43:05 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id EF96620160 for ; Thu, 24 Jul 2014 08:43:04 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 1AE7D201BB for ; Thu, 24 Jul 2014 08:43:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934451AbaGXInA (ORCPT ); Thu, 24 Jul 2014 04:43:00 -0400 Received: from mail-lb0-f175.google.com ([209.85.217.175]:43031 "EHLO mail-lb0-f175.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S934448AbaGXIm7 (ORCPT ); Thu, 24 Jul 2014 04:42:59 -0400 Received: by mail-lb0-f175.google.com with SMTP id 10so1976460lbg.20 for ; Thu, 24 Jul 2014 01:42:58 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references; bh=EtqrEjjvI6eJRty6P4BG/NK2fbmQeYTftQmWuiB7rfs=; b=YSKZJ558b0XuFef0akhok84k9dnVYaJjwDtpUjg9wKtDqcJjwxQk8o8As32sg/L5yx x8J7vCFkhiM0IugJpqWRm3REhIZwR120WYUNXPJCCFaIsByOMVFQxWX9Klxni9Gg/4W8 YjSei4zTcPVW+kvZzzTB7rbrF0lgMit/KZoGoQXF5Qptu25hchZi4QBhXb5BiQVFlqzc yNEMYiccFB4McpJIG2YoXACzy6pXX5NM9cj6ShL+WbiFbOI5BQlcmmNDzONI8kJ7YZV2 ejZFdDmrjckw0J8N06RJypJQ/1N0QwtwXSPZI8ONWMBCQ8Nvkm6EqDp3me83X/osdOFx BuOA== X-Gm-Message-State: ALoCoQnXGiAWVIW7g9DBtQCtHWBSETR3KuE82awX9BDbcE0R08CqNFVZghRVyXqqxDPc/ISrhLqy X-Received: by 10.112.202.106 with SMTP id kh10mr7494560lbc.66.1406191378041; Thu, 24 Jul 2014 01:42:58 -0700 (PDT) Received: from localhost ([109.110.66.237]) by mx.google.com with ESMTPSA id tv3sm9593277lbb.49.2014.07.24.01.42.56 for (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Thu, 24 Jul 2014 01:42:57 -0700 (PDT) From: Ilya Dryomov To: ceph-devel@vger.kernel.org Subject: [PATCH 2/8] rbd: introduce rbd_dev_header_info() Date: Thu, 24 Jul 2014 12:42:43 +0400 Message-Id: <1406191369-6746-3-git-send-email-ilya.dryomov@inktank.com> X-Mailer: git-send-email 1.7.10.4 In-Reply-To: <1406191369-6746-1-git-send-email-ilya.dryomov@inktank.com> References: <1406191369-6746-1-git-send-email-ilya.dryomov@inktank.com> Sender: ceph-devel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: ceph-devel@vger.kernel.org X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP A wrapper around rbd_dev_v{1,2}_header_info() to reduce duplication. Signed-off-by: Ilya Dryomov Reviewed-by: Alex Elder --- drivers/block/rbd.c | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c index 7847fbb949ff..0d3be608f16f 100644 --- a/drivers/block/rbd.c +++ b/drivers/block/rbd.c @@ -514,7 +514,7 @@ static void rbd_dev_remove_parent(struct rbd_device *rbd_dev); static int rbd_dev_refresh(struct rbd_device *rbd_dev); static int rbd_dev_v2_header_onetime(struct rbd_device *rbd_dev); -static int rbd_dev_v2_header_info(struct rbd_device *rbd_dev); +static int rbd_dev_header_info(struct rbd_device *rbd_dev); static const char *rbd_dev_v2_snap_name(struct rbd_device *rbd_dev, u64 snap_id); static int _rbd_dev_v2_snap_size(struct rbd_device *rbd_dev, u64 snap_id, @@ -3506,13 +3506,10 @@ static int rbd_dev_refresh(struct rbd_device *rbd_dev) u64 mapping_size; int ret; - rbd_assert(rbd_image_format_valid(rbd_dev->image_format)); down_write(&rbd_dev->header_rwsem); mapping_size = rbd_dev->mapping.size; - if (rbd_dev->image_format == 1) - ret = rbd_dev_v1_header_info(rbd_dev); - else - ret = rbd_dev_v2_header_info(rbd_dev); + + ret = rbd_dev_header_info(rbd_dev); /* If it's a mapped snapshot, validate its EXISTS flag */ @@ -4501,6 +4498,16 @@ static int rbd_dev_v2_header_info(struct rbd_device *rbd_dev) return ret; } +static int rbd_dev_header_info(struct rbd_device *rbd_dev) +{ + rbd_assert(rbd_image_format_valid(rbd_dev->image_format)); + + if (rbd_dev->image_format == 1) + return rbd_dev_v1_header_info(rbd_dev); + + return rbd_dev_v2_header_info(rbd_dev); +} + static int rbd_bus_add_dev(struct rbd_device *rbd_dev) { struct device *dev; @@ -5149,10 +5156,7 @@ static int rbd_dev_image_probe(struct rbd_device *rbd_dev, bool mapping) goto out_header_name; } - if (rbd_dev->image_format == 1) - ret = rbd_dev_v1_header_info(rbd_dev); - else - ret = rbd_dev_v2_header_info(rbd_dev); + ret = rbd_dev_header_info(rbd_dev); if (ret) goto err_out_watch;