From patchwork Fri Aug 3 18:52:19 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Masayoshi Mizuma X-Patchwork-Id: 10555431 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 7CF1314E2 for ; Fri, 3 Aug 2018 18:52:45 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 617C52BC26 for ; Fri, 3 Aug 2018 18:52:45 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 529EC2BD2D; Fri, 3 Aug 2018 18:52:45 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.8 required=2.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE, T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from ml01.01.org (ml01.01.org [198.145.21.10]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id F04A82BC26 for ; Fri, 3 Aug 2018 18:52:44 +0000 (UTC) Received: from [127.0.0.1] (localhost [IPv6:::1]) by ml01.01.org (Postfix) with ESMTP id 8F6E321A00AE6; Fri, 3 Aug 2018 11:52:44 -0700 (PDT) X-Original-To: linux-nvdimm@lists.01.org Delivered-To: linux-nvdimm@lists.01.org Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=2607:f8b0:400d:c0d::241; helo=mail-qt0-x241.google.com; envelope-from=msys.mizuma@gmail.com; receiver=linux-nvdimm@lists.01.org Received: from mail-qt0-x241.google.com (mail-qt0-x241.google.com [IPv6:2607:f8b0:400d:c0d::241]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id CB3B921A00AE6 for ; Fri, 3 Aug 2018 11:52:42 -0700 (PDT) Received: by mail-qt0-x241.google.com with SMTP id c15-v6so7302538qtp.0 for ; Fri, 03 Aug 2018 11:52:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=Ja10+kMo5S96uazwcrDjil/7z2oyxX7vjhu9rfpX4hs=; b=sZxIYZ15yPSoTZM8tCgSNaooCZQEDPYJfshZdyQRUWD2VIpxrvR4doFVDSwhGGmyaF PxQj8Gqt3DjwTAtUaawefq7EeQ39sMiQ52X+zqkB6JGdn5gsysC0VMTeV8gEbpMDBH7b Gu2pvALjAwdIj3Q419/ob51Lj8GCljylEtGdVRpnHikPpP1xQ2T0NAJQ4YhG7ON1ix+h Gr01CjU+DKba0qN0Trpd6u1/BQaHfz4aIuGVYrtanOiffjdoovNbNZdeGJzrVbmhR7F4 slijVoXr8zFUtir+PcmBXiXreBTLS9PGCFS4wwUZs2ffdk5AeKf1dOKrUvVeVc9u0vxX Gltg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=Ja10+kMo5S96uazwcrDjil/7z2oyxX7vjhu9rfpX4hs=; b=JABWDSTs4wO9J2QT5bYoRH/Kfpx7pdZoX+nB+ZC32Ibd+FQmnhFrDxlEepvVvRJqxr h/tEW4pg6jM6thwpnNlAkkuHOrlO0QfWdVphc9F/mgBfNrySEkZyvdxqyYy1vzcQ8167 dsEoIw1PB2OmtFN4Ejhu1u/IG75J4siThgal9R8YN6HLgNhlYQkYmuEHkQNWG2ROUpm9 zR/4MoSzTxTs9SpMEWvnNKfYeN7Qtl95PS5pyvhIGlXkWEfKvEdAk1dG7HsKVwGjidyv 4uaVST5n6lSj/GjAYHd1rskI9XNP21kTdSRsr9ONW/1X2JAOuqjKlMNsWeZW7sO3KGh8 NrJA== X-Gm-Message-State: AOUpUlFfqmzwoJMt+6clyn3lc4YDFi0VJzK6Ae2WNKc/L3ejWeGHUOy/ s8gQNgMbHhcgDj7fiD/OlA== X-Google-Smtp-Source: AAOMgpcgqw2Mh7GH/2nNtBHzh1XIQ3ReBaDRBmOA1Me7jKKkCRCAZUIRy7orViXJpYhdLwNo11SvKQ== X-Received: by 2002:a0c:c290:: with SMTP id b16-v6mr4621503qvi.182.1533322361903; Fri, 03 Aug 2018 11:52:41 -0700 (PDT) Received: from gabell.bos.redhat.com (nat-pool-bos-t.redhat.com. [66.187.233.206]) by smtp.gmail.com with ESMTPSA id h36-v6sm4220455qtk.72.2018.08.03.11.52.40 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 03 Aug 2018 11:52:41 -0700 (PDT) From: Masayoshi Mizuma To: vishal.l.verma@intel.com, linux-nvdimm@lists.01.org Subject: [PATCH v2] ndctl, test: add a new unit test for max_available_extent namespace Date: Fri, 3 Aug 2018 14:52:19 -0400 Message-Id: <20180803185219.16242-1-msys.mizuma@gmail.com> X-Mailer: git-send-email 2.17.1 X-BeenThere: linux-nvdimm@lists.01.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: "Linux-nvdimm developer list." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Masayoshi Mizuma MIME-Version: 1.0 Errors-To: linux-nvdimm-bounces@lists.01.org Sender: "Linux-nvdimm" X-Virus-Scanned: ClamAV using ClamSMTP From: Masayoshi Mizuma Add a new unit test to test max_available_extent namespace. This feature is implemented by the following patches. kernel side: https://lists.01.org/pipermail/linux-nvdimm/2018-July/016731.html https://lists.01.org/pipermail/linux-nvdimm/2018-July/016732.html ndctl side: https://lists.01.org/pipermail/linux-nvdimm/2018-July/017176.html Signed-off-by: Masayoshi Mizuma --- test/Makefile.am | 3 ++- test/max_available_extent_ns.sh | 43 +++++++++++++++++++++++++++++++++ 2 files changed, 45 insertions(+), 1 deletion(-) create mode 100755 test/max_available_extent_ns.sh diff --git a/test/Makefile.am b/test/Makefile.am index 8c55056..9af2464 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -22,7 +22,8 @@ TESTS =\ firmware-update.sh \ ack-shutdown-count-set \ rescan-partitions.sh \ - monitor.sh + monitor.sh \ + max_available_extent_ns.sh check_PROGRAMS =\ libndctl \ diff --git a/test/max_available_extent_ns.sh b/test/max_available_extent_ns.sh new file mode 100755 index 0000000..beea3bd --- /dev/null +++ b/test/max_available_extent_ns.sh @@ -0,0 +1,43 @@ +#!/bin/bash -Ex + +# SPDX-License-Identifier: GPL-2.0 +# Copyright(c) 2018, FUJITSU LIMITED. All rights reserved. + +rc=77 + +. ./common + +trap 'err $LINENO' ERR + +check_min_kver "4.19" || do_skip "kernel $KVER may not support max_available_size" + +init() +{ + $NDCTL disable-region -b $NFIT_TEST_BUS0 all + $NDCTL zero-labels -b $NFIT_TEST_BUS0 all + $NDCTL enable-region -b $NFIT_TEST_BUS0 all +} + +do_test() +{ + region=$($NDCTL list -b $NFIT_TEST_BUS0 -R -t pmem | jq -r .[].dev | head -1) + + available_sz=$($NDCTL list -r $region | jq -r .[].available_size) + size=$(( available_sz/4 )) + + NS1=$($NDCTL create-namespace -r $region -t pmem -s $size | jq -r .dev) + NS2=$($NDCTL create-namespace -r $region -t pmem -s $size | jq -r .dev) + NS3=$($NDCTL create-namespace -r $region -t pmem -s $size | jq -r .dev) + + $NDCTL disable-namespace $NS2 + $NDCTL destroy-namespace $NS2 + + $NDCTL create-namespace -r $region -t pmem +} + +modprobe nfit_test +rc=1 +init +do_test +_cleanup +exit 0