From: Naohiro Aota <Naohiro.Aota@wdc.com> To: "dsterba@suse.cz" <dsterba@suse.cz> Cc: "linux-btrfs@vger.kernel.org" <linux-btrfs@vger.kernel.org>, "David Sterba" <dsterba@suse.com>, "Chris Mason" <clm@fb.com>, "Josef Bacik" <josef@toxicpanda.com>, "Qu Wenruo" <wqu@suse.com>, "Nikolay Borisov" <nborisov@suse.com>, "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>, "Hannes Reinecke" <hare@suse.com>, "linux-fsdevel@vger.kernel.org" <linux-fsdevel@vger.kernel.org>, "Damien Le Moal" <Damien.LeMoal@wdc.com>, "Matias Bjørling" <mb@lightnvm.io>, "Johannes Thumshirn" <jthumshirn@suse.de>, "Bart Van Assche" <bvanassche@acm.org> Subject: Re: [PATCH v2 00/19] btrfs zoned block device support Date: Fri, 14 Jun 2019 02:07:15 +0000 Message-ID: <SN6PR04MB5231FF124F9BF2FCB3EDB8F58CEE0@SN6PR04MB5231.namprd04.prod.outlook.com> (raw) In-Reply-To: <20190613134612.GU3563@suse.cz> On 2019/06/13 22:45, David Sterba wrote:> On Thu, Jun 13, 2019 at 04:59:23AM +0000, Naohiro Aota wrote: >> On 2019/06/13 2:50, David Sterba wrote: >>> On Fri, Jun 07, 2019 at 10:10:06PM +0900, Naohiro Aota wrote: >>> How can I test the zoned devices backed by files (or regular disks)? I >>> searched for some concrete example eg. for qemu or dm-zoned, but closest >>> match was a text description in libzbc README that it's possible to >>> implement. All other howtos expect a real zoned device. >> >> You can use tcmu-runer [1] to create an emulated zoned device backed by >> a regular file. Here is a setup how-to: >> http://zonedstorage.io/projects/tcmu-runner/#compilation-and-installation>> That looks great, thanks. I wonder why there's no way to find that, all > I got were dead links to linux-iscsi.org or tutorials of targetcli that > were years old and not working. Actually, this is quite new site. ;-) > Feeding the textual commands to targetcli is not exactly what I'd > expect for scripting, but at least it seems to work. You can use "targetcli <directory> <command> [<args> ...]" format, so you can call e.g. targetcli /backstores/user:zbc create name=foo size=10G cfgstring=model-HM/zsize-256/conv-1@/mnt/nvme/disk0.raw > I tried to pass an emulated ZBC device on host to KVM guest (as a scsi > device) but lsscsi does not recognize that it as a zonde device (just a > QEMU harddisk). So this seems the emulation must be done inside the VM. Oops, QEMU hide the detail. In this case, you can try exposing the ZBC device via iSCSI. On the host: (after creating the ZBC backstores) # sudo targetcli /iscsi create Created target iqn.2003-01.org.linux-iscsi.naota-devel.x8664:sn.f4f308e4892c. Created TPG 1. Global pref auto_add_default_portal=true Created default portal listening on all IPs (0.0.0.0), port 3260. # TARGET="iqn.2003-01.org.linux-iscsi.naota-devel.x8664:sn.f4f308e4892c" (WARN: Allow any node to connect without any auth) # targetcli /iscsi/${TARGET}/tpg1 set attribute generate_node_acls=1 Parameter generate_node_acls is now '1'. ( or you can explicitly allow an initiator) # TCMU_INITIATOR=iqn.2018-07.... # targecli /iscsi/${TARGET}/tpg1/acls create ${TCMU_INITIATOR} (for each backend) # targetcli /iscsi/${TARGET}/tpg1/luns create /backstores/user:zbc/foo Created LUN 0. Then, you can login to the iSCSI on the KVM guest like: # iscsiadm -m discovery -t st -p $HOST_IP 127.0.0.1:3260,1 iqn.2003-01.org.linux-iscsi.naota-devel.x8664:sn.f4f308e4892c # iscsiadm -m node -l -T ${TARGET} Logging in to [iface: default, target: iqn.2003-01.org.linux-iscsi.naota-devel.x8664:sn.f4f308e4892c, portal: 127.0.0.1,3260] Login to [iface: default, target: iqn.2003-01.org.linux-iscsi.naota-devel.x8664:sn.f4f308e4892c, portal: 127.0.0.1,3260] successful.
next prev parent reply index Thread overview: 79+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-06-07 13:10 Naohiro Aota 2019-06-07 13:10 ` [PATCH 01/19] btrfs: introduce HMZONED feature flag Naohiro Aota 2019-06-07 13:10 ` [PATCH 02/19] btrfs: Get zone information of zoned block devices Naohiro Aota 2019-06-13 13:58 ` Josef Bacik 2019-06-18 6:04 ` Naohiro Aota 2019-06-13 13:58 ` Josef Bacik 2019-06-17 18:57 ` David Sterba 2019-06-18 6:42 ` Naohiro Aota 2019-06-27 15:11 ` David Sterba 2019-06-07 13:10 ` [PATCH 03/19] btrfs: Check and enable HMZONED mode Naohiro Aota 2019-06-13 13:57 ` Josef Bacik 2019-06-18 6:43 ` Naohiro Aota 2019-06-07 13:10 ` [PATCH 04/19] btrfs: disable fallocate in " Naohiro Aota 2019-06-07 13:10 ` [PATCH 05/19] btrfs: disable direct IO " Naohiro Aota 2019-06-13 14:00 ` Josef Bacik 2019-06-18 8:17 ` Naohiro Aota 2019-06-07 13:10 ` [PATCH 06/19] btrfs: align dev extent allocation to zone boundary Naohiro Aota 2019-06-07 13:10 ` [PATCH 07/19] btrfs: do sequential extent allocation in HMZONED mode Naohiro Aota 2019-06-13 14:07 ` Josef Bacik 2019-06-18 8:28 ` Naohiro Aota 2019-06-18 13:37 ` Josef Bacik 2019-06-17 22:30 ` David Sterba 2019-06-18 8:49 ` Naohiro Aota 2019-06-27 15:28 ` David Sterba 2019-06-07 13:10 ` [PATCH 08/19] btrfs: make unmirroed BGs readonly only if we have at least one writable BG Naohiro Aota 2019-06-13 14:09 ` Josef Bacik 2019-06-18 7:42 ` Naohiro Aota 2019-06-18 13:35 ` Josef Bacik 2019-06-07 13:10 ` [PATCH 09/19] btrfs: limit super block locations in HMZONED mode Naohiro Aota 2019-06-13 14:12 ` Josef Bacik 2019-06-18 8:51 ` Naohiro Aota 2019-06-17 22:53 ` David Sterba 2019-06-18 9:01 ` Naohiro Aota 2019-06-27 15:35 ` David Sterba 2019-06-28 3:55 ` Anand Jain 2019-06-28 6:39 ` Naohiro Aota 2019-06-28 6:52 ` Anand Jain 2019-06-07 13:10 ` [PATCH 10/19] btrfs: rename btrfs_map_bio() Naohiro Aota 2019-06-07 13:10 ` [PATCH 11/19] btrfs: introduce submit buffer Naohiro Aota 2019-06-13 14:14 ` Josef Bacik 2019-06-17 3:16 ` Damien Le Moal 2019-06-18 0:00 ` David Sterba 2019-06-18 4:04 ` Damien Le Moal 2019-06-18 13:33 ` Josef Bacik 2019-06-19 10:32 ` Damien Le Moal 2019-06-07 13:10 ` [PATCH 12/19] btrfs: expire submit buffer on timeout Naohiro Aota 2019-06-13 14:15 ` Josef Bacik 2019-06-17 3:19 ` Damien Le Moal 2019-06-07 13:10 ` [PATCH 13/19] btrfs: avoid sync IO prioritization on checksum in HMZONED mode Naohiro Aota 2019-06-13 14:17 ` Josef Bacik 2019-06-07 13:10 ` [PATCH 14/19] btrfs: redirty released extent buffers in sequential BGs Naohiro Aota 2019-06-13 14:24 ` Josef Bacik 2019-06-18 9:09 ` Naohiro Aota 2019-06-07 13:10 ` [PATCH 15/19] btrfs: reset zones of unused block groups Naohiro Aota 2019-06-07 13:10 ` [PATCH 16/19] btrfs: wait existing extents before truncating Naohiro Aota 2019-06-13 14:25 ` Josef Bacik 2019-06-07 13:10 ` [PATCH 17/19] btrfs: shrink delayed allocation size in HMZONED mode Naohiro Aota 2019-06-13 14:27 ` Josef Bacik 2019-06-07 13:10 ` [PATCH 18/19] btrfs: support dev-replace " Naohiro Aota 2019-06-13 14:33 ` Josef Bacik 2019-06-18 9:14 ` Naohiro Aota 2019-06-07 13:10 ` [PATCH 19/19] btrfs: enable to mount HMZONED incompat flag Naohiro Aota 2019-06-07 13:17 ` [PATCH 01/12] btrfs-progs: build: Check zoned block device support Naohiro Aota 2019-06-07 13:17 ` [PATCH 02/12] btrfs-progs: utils: Introduce queue_param Naohiro Aota 2019-06-07 13:17 ` [PATCH 03/12] btrfs-progs: add new HMZONED feature flag Naohiro Aota 2019-06-07 13:17 ` [PATCH 04/12] btrfs-progs: Introduce zone block device helper functions Naohiro Aota 2019-06-07 13:17 ` [PATCH 05/12] btrfs-progs: load and check zone information Naohiro Aota 2019-06-07 13:17 ` [PATCH 06/12] btrfs-progs: avoid writing super block to sequential zones Naohiro Aota 2019-06-07 13:17 ` [PATCH 07/12] btrfs-progs: support discarding zoned device Naohiro Aota 2019-06-07 13:17 ` [PATCH 08/12] btrfs-progs: volume: align chunk allocation to zones Naohiro Aota 2019-06-07 13:17 ` [PATCH 09/12] btrfs-progs: do sequential allocation Naohiro Aota 2019-06-07 13:17 ` [PATCH 10/12] btrfs-progs: mkfs: Zoned block device support Naohiro Aota 2019-06-07 13:17 ` [PATCH 11/12] btrfs-progs: device-add: support HMZONED device Naohiro Aota 2019-06-07 13:17 ` [PATCH 12/12] btrfs-progs: introduce support for dev-place " Naohiro Aota 2019-06-12 17:51 ` [PATCH v2 00/19] btrfs zoned block device support David Sterba 2019-06-13 4:59 ` Naohiro Aota 2019-06-13 13:46 ` David Sterba 2019-06-14 2:07 ` Naohiro Aota [this message] 2019-06-17 2:44 ` Damien Le Moal
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=SN6PR04MB5231FF124F9BF2FCB3EDB8F58CEE0@SN6PR04MB5231.namprd04.prod.outlook.com \ --to=naohiro.aota@wdc.com \ --cc=Damien.LeMoal@wdc.com \ --cc=bvanassche@acm.org \ --cc=clm@fb.com \ --cc=dsterba@suse.com \ --cc=dsterba@suse.cz \ --cc=hare@suse.com \ --cc=josef@toxicpanda.com \ --cc=jthumshirn@suse.de \ --cc=linux-btrfs@vger.kernel.org \ --cc=linux-fsdevel@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=mb@lightnvm.io \ --cc=nborisov@suse.com \ --cc=wqu@suse.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
Linux-BTRFS Archive on lore.kernel.org Archives are clonable: git clone --mirror https://lore.kernel.org/linux-btrfs/0 linux-btrfs/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 linux-btrfs linux-btrfs/ https://lore.kernel.org/linux-btrfs \ linux-btrfs@vger.kernel.org public-inbox-index linux-btrfs Example config snippet for mirrors Newsgroup available over NNTP: nntp://nntp.lore.kernel.org/org.kernel.vger.linux-btrfs AGPL code for this site: git clone https://public-inbox.org/public-inbox.git