From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from gate001.proxmox.com (gate001.proxmox.com [IPv6:2a0f:8001:1:32::40]) by lore.proxmox.com (Postfix) with ESMTPS id C87361FF09C for ; Mon, 05 Oct 2026 02:27:35 +0200 (CEST) Received: from gate001.proxmox.com (localhost.localdomain [127.0.0.1]) by gate001.proxmox.com (Proxmox) with ESMTP id 993DE21699; Mon, 05 Oct 2026 02:27:33 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=neatech-ar.20251104.gappssmtp.com; s=20251104; t=1791160042; x=1791764842; darn=lists.proxmox.com; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=hhKIvWMk3g2CGVK33iBMlQy+0JSV2FQ/phiGxTvFbK8=; b=mB48bwspGam0kl6WHEpnILzwKLxhu9XFxiOT8IKAfbnJSXlDQpy0su+IB3ICcL8acR 5l9eKKCAZGvMOu8xz0gnEesmlPQ7JX3e5SI+kabW++JB3odnFY3DqXLvMomnKNQBx/we wpVmsTdHPcO20yqxfScawkv6dgzWbvWIczfigPg8Q9G8x7uyLYL3w5b0w+AUTowvi3NB 53dMrKm9/M3rOW1m5AQsgpgW6R5mQxTRVOlsj2XKRPNP6RU913ATh9QfzHEov1H1PaPz oIYYNYagyOf8dEcEphEi80MTQ366M7ZB+9JqnH/KBVTBn47pROC/6yQaS1hzH6WwVvHx OI0A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1791160042; x=1791764842; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=hhKIvWMk3g2CGVK33iBMlQy+0JSV2FQ/phiGxTvFbK8=; b=dwlRcd4uclT2WSFrO6cHW86lbJTIaAmgmANRc0W99aUbPDEjAv/PfOOIIMChktgBQI HPl6iFRmEBJJdTA4eRZ8jdfTh0SD+qkVUUDTR9LIp2Zjzr/OKHkT2YsLUqOEw5dJ/0a8 sBHHx7yg7yljH9HwS2UnZXOF7xjcidnDsqyUEOX1OqXKIx2mJs5tHb35s/fF6JLRWCH+ KQYJgwWORGTOwdlPlyzoGQ3o3Dl7hhwyRx20DxhPgNNLbE9eqJdYuljY8epKJNYFmIFn qnkk9PwXEl9de1Ir2qPyabiK8m/fGCGtG3wtZSzoIWmnZ+FvpxkGyTlI9X5UK1RJ22iy CsPg== X-Gm-Message-State: AFq9FYL9hl+pY8b7u+l1KmmPyPqFJIv8jhw5NmoniTjOw6uKVtPlqZA8 oETucZhq+9Ucni8kib5cvJ3cv6r7D+bFrMwIL4zwUnJkf7mRK5qm9z7ESN85qLni+uqqinWDmAX sihQ4L94= X-Gm-Gg: AYBFou3LVDI/uJzUF8MGoRU70OR7Pe7gL1Vr1LQ7z9+iBXjNqKFMfDuFRW9auP77VCZ LRBqKULVT+ovQvXqj9Eugz65LDX2iwfeyFK8Re6hDaoXb5L2Q/7UDoN4zPPY81q/zevwbcF2Xm/ OP3+ygF1TZhxgby+l3GTPkQnOnRoInFEkEFstOlKV2I2NjNb7b2pJyGzruv1jOnjrYeXrhnxwzA ez/CH3Wd16PbPRh9+zMKZn9IzgSiuZMXBVrvKo4OA6nQWPU02C0chYIZH6oJDAOdjn2EIppxEGO J5P8bwC065RCJ1bg+j1JZp5+T3ARv9WvXgX7sivp0y3pK5ntLZ2nNZK7d00TRnS30DPeLOg/faZ DregmTh9rswx8sl6nFtKcC5JGT8e0E+60clcC+dg8PrdI2NqRqLh26cDShV2skductojmUxk3yF UClE81L+thBwuufqlF5EZp2GlAk4rpubYzC7e2gCAmRFEDWV3vYmc+9qh0bWLVQZyrMBVRImOZl TmINH0ZHntj562O79c+zvQtsWDXehnUETQZPrfnRlYfZQzFz/nV0R8ccmXYCMPIwEH7MteW0oUP X-Received: by 2002:a05:6102:291f:b0:7c3:99a3:314e with SMTP id ada2fe7eead31-7c399a336cfmr449068137.0.1791160041810; Sun, 04 Oct 2026 17:27:21 -0700 (PDT) From: Joaquin Varela To: m.carrara@proxmox.com Subject: Re: [PATCH storage v2 0/7] add native ZFS over NVMe/TCP backend Date: Sun, 4 Oct 2026 21:27:19 -0300 Message-ID: <20261005002719.1600-1-joaquinvarela@neatech.ar> X-Mailer: git-send-email 2.54.0.windows.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SPAM-LEVEL: Spam detection results: 0 AWL 0.408 Adjusted score from AWL reputation of From: address DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DMARC_PASS -0.1 DMARC pass policy RCVD_IN_DNSWL_NONE -0.0001 Sender listed at https://www.dnswl.org/, no trust SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Message-ID-Hash: KQSQZSRH4SROUHTULMY7FG6JKCDKFGFX X-Message-ID-Hash: KQSQZSRH4SROUHTULMY7FG6JKCDKFGFX X-MailFrom: joaquinvarela@neatech.ar X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: pve-devel@lists.proxmox.com X-Mailman-Version: 3.3.10 Precedence: list List-Id: Proxmox VE development discussion List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Hi Max, thank you very much for the detailed review, and sorry that it took a few days. I have just sent v3 ("[PATCH storage v3 0/4] add ZFS over NVMe/TCP storage plugin"), together with the docs and manager patches. It addresses all three points and the helper suggestions: the plugin inherits from PVE::Storage::Plugin, LunCmd::NVMET is gone, ZFS/configfs parsing and operation planning are local. In patch 1/4 the target runs quoted simple commands, sometimes joined with '&&', plus one pipe that writes the key, and the PVE helpers replace the builtins. Instead of dir_glob_regex, which returns only the first match, the sysfs walks nest dir_glob_foreach. Two parts are questions for you, explained in the cover letter: an optional patch that guards transaction commands on the target against a delayed command of an abandoned operation, which adds target-side validation and a small sh guard with the only shell control flow on the target, and a longer default wait for the shared storage lock. Both are separate patches, so either can be dropped without touching the other storage patches (dropping the guard also drops one sentence and one paragraph of the docs patch). If the size of the series gets in the way, I can split the backend patch and split or trim the tests. The contribution is limited to the storage backend and its integration with PVE. It does not implement target high availability, pool takeover or target fencing. The optional guard protects control-plane operations on a single target too; it is not host or guest-I/O fencing. Multi-head target compatibility remains conditional and has not been qualified. The v3 cover Message-ID is: <20261005002609.571-1-joaquinvarela@neatech.ar> v3 also refuses storages that share an NVMe/TCP listener on the target, because after a target restart they could lose their controllers. The cover letter has the details. Kind regards, Joaquin Varela