Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S936444AbdGTP2d (ORCPT ); Thu, 20 Jul 2017 11:28:33 -0400 Received: from smtp.nue.novell.com ([195.135.221.5]:46136 "EHLO smtp.nue.novell.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S935913AbdGTP2b (ORCPT ); Thu, 20 Jul 2017 11:28:31 -0400 From: Martin Wilck To: Christoph Hellwig , Keith Busch , Sagi Grimberg Cc: Martin Wilck , Johannes Thumshirn , Hannes Reinecke , linux-nvme@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 0/3] Improve readbility of NVME "wwid" attribute Date: Thu, 20 Jul 2017 17:27:42 +0200 Message-Id: <20170720152745.3274-1-mwilck@suse.com> X-Mailer: git-send-email 2.13.2 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1255 Lines: 32 With the current implementation, the default "fallback" WWID generation code (if no nguid, euid etc. are defined) for Linux NVME host and target results in the following WWID format: nvme.0000-3163653363666438366239656630386200-4c696e75780000000000000000000000000000000000000000000000000000000000000000000000-00000002 This is not only hard to read, it poses real problems e.g. for multipath (dm WWIDs are limited to 128 characters). With this patch series, the WWID on a Linux host connected to a Linux target looks like this: nvme.0000-65613435333665653738613464363961-4c696e7578-00000001 Changes wrt v1: * 1/3: new, moved helper to include/linux/string.h (Christoph Hellwig) (you suggested kernel.h, but I think this matches string.h better) * Dropped the last patch from the v1 series that would have changed valid WWIDs for HW NVME controllers. Martin Wilck (3): string.h: add memcpy_and_pad() nvmet: identify controller: improve standard compliance nvme: wwid_show: strip trailing 0-bytes drivers/nvme/host/core.c | 6 ++++-- drivers/nvme/target/admin-cmd.c | 13 ++++++------- include/linux/string.h | 30 ++++++++++++++++++++++++++++++ 3 files changed, 40 insertions(+), 9 deletions(-) -- 2.13.2