Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp6164032yba; Tue, 14 May 2019 02:53:27 -0700 (PDT) X-Google-Smtp-Source: APXvYqwhbWCLyUpUiNY+qZcUCs6x3cp3URPVfJZc4D2OSwjGnPkChsxLHXRFFEOr9jTLKXuJ4ojs X-Received: by 2002:a17:902:70c6:: with SMTP id l6mr18907801plt.84.1557827607214; Tue, 14 May 2019 02:53:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557827607; cv=none; d=google.com; s=arc-20160816; b=fRZcaYKByy/UxE91aNKEWArfN0jKHac1mkzeDTn/JeeiBesyZxhuur+o0Hu1vWGgbo hRgMahzMnHBrY5sFA1tSCDX8wdgJODZYm6nCbZjcs3PvXRJDWS2XuqeaiW2aY0vb3h8c Q6Uonk+oDOZKBOK/zoco9HdyV5O0MzXLMTPu/SbFQyMOYiwVusdtXjVkEvsQF+lXTNQA 62Vxa+CshtL6tOElXICuFbkHfZ6gohoRgxSuK7lEgliaUcMoofqBYcalwlWUFikhtGHG YYqAOpo2V1dDNsfLniUpxmgUuU+0CTK8mBSbSF8gn+MSqyMb4+Jl/41xYJOEgisKoZL2 Yh4g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :organization:references:in-reply-to:message-id:subject:cc:to:from :date; bh=oTN8/6CgI0ZvaseYvALaqwlcKJmRdekYzBCBRPSzgZY=; b=ovAlN5CPv8Di+ULHovpQf+SMXQPu3pmInZhoNKv/D8vZp8lyFU0Uv+D9FdH7iH6TbS JIuPW36h8Qfq7AZQrFpDSxFrQj3i1JAVivs8FKcc5HMQ/EZrdS0p2SCWDt6CCc/2R99o nGx0SM0yQXJWFWqP20gC96j/SY3EdZIbgI6vy13iF1+EtEQtLfSouFQFpqA30DOCH/Gy TEOL0NKCOYs/gCx8GWZrdua4QhPfMcXSzfJUyMjESXTISN56D0UscUlFuTsD3+8/uw17 1sXI5hcIGI2wcpY/x8+KUh/BBaMNceAYIpQURGFZMn+RCRR0IBOkZVUoAnwkobEW51BM gNVQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id u7si14935445pgi.339.2019.05.14.02.53.12; Tue, 14 May 2019 02:53:27 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726279AbfENJwE (ORCPT + 99 others); Tue, 14 May 2019 05:52:04 -0400 Received: from mx1.redhat.com ([209.132.183.28]:57574 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725916AbfENJwD (ORCPT ); Tue, 14 May 2019 05:52:03 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 94115308620F; Tue, 14 May 2019 09:52:02 +0000 (UTC) Received: from gondolin (dhcp-192-222.str.redhat.com [10.33.192.222]) by smtp.corp.redhat.com (Postfix) with ESMTP id 042155C207; Tue, 14 May 2019 09:51:37 +0000 (UTC) Date: Tue, 14 May 2019 11:51:35 +0200 From: Cornelia Huck To: Yan Zhao Cc: Erik Skultety , "cjia@nvidia.com" , "kvm@vger.kernel.org" , "aik@ozlabs.ru" , "Zhengxiao.zx@alibaba-inc.com" , "shuangtai.tst@alibaba-inc.com" , "qemu-devel@nongnu.org" , "kwankhede@nvidia.com" , "eauger@redhat.com" , "Liu, Yi L" , "Yang, Ziye" , "mlevitsk@redhat.com" , "pasic@linux.ibm.com" , "libvir-list@redhat.com" , "arei.gonglei@huawei.com" , "felipe@nutanix.com" , "Ken.Xue@amd.com" , "Tian, Kevin" , "Dr. David Alan Gilbert" , "zhenyuw@linux.intel.com" , "dinechin@redhat.com" , Alex Williamson , "intel-gvt-dev@lists.freedesktop.org" , "Liu, Changpeng" , "berrange@redhat.com" , "linux-kernel@vger.kernel.org" , "Wang, Zhi A" , "jonathan.davies@nutanix.com" , "He, Shaopeng" Subject: Re: [PATCH v2 1/2] vfio/mdev: add version attribute for mdev device Message-ID: <20190514115135.078bbaf7.cohuck@redhat.com> In-Reply-To: <20190514074736.GE20407@joy-OptiPlex-7040> References: <20190509175404.512ae7aa.cohuck@redhat.com> <20190509164825.GG2868@work-vm> <20190510110838.2df4c4d0.cohuck@redhat.com> <20190510093608.GD2854@work-vm> <20190510114838.7e16c3d6.cohuck@redhat.com> <20190513132804.GD11139@beluga.usersys.redhat.com> <20190514061235.GC20407@joy-OptiPlex-7040> <20190514072039.GA2089@beluga.usersys.redhat.com> <20190514073219.GD20407@joy-OptiPlex-7040> <20190514074344.GB2089@beluga.usersys.redhat.com> <20190514074736.GE20407@joy-OptiPlex-7040> Organization: Red Hat GmbH MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.42]); Tue, 14 May 2019 09:52:03 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, 14 May 2019 03:47:36 -0400 Yan Zhao wrote: > On Tue, May 14, 2019 at 03:43:44PM +0800, Erik Skultety wrote: > > On Tue, May 14, 2019 at 03:32:19AM -0400, Yan Zhao wrote: > > > On Tue, May 14, 2019 at 03:20:40PM +0800, Erik Skultety wrote: > > > > That said, from libvirt POV as a consumer, I'd expect there to be truly only 2 > > > > errors (I believe Alex has mentioned something similar in one of his responses > > > > in one of the threads): > > > > a) read error indicating that an mdev type doesn't support migration > > > > - I assume if one type doesn't support migration, none of the other > > > > types exposed on the parent device do, is that a fair assumption? Probably; but there might be cases where the migratability depends not on the device type, but how the partitioning has been done... or is that too contrived? > > > > b) write error indicating that the mdev types are incompatible for > > > > migration > > > > > > > > Regards, > > > > Erik > > > Thanks for this explanation. > > > so, can we arrive at below agreements? > > > > > > 1. "not to define the specific errno returned for a specific situation, > > > let the vendor driver decide, userspace simply needs to know that an errno on > > > read indicates the device does not support migration version comparison and > > > that an errno on write indicates the devices are incompatible or the target > > > doesn't support migration versions. " > > > 2. vendor driver should log detailed error reasons in kernel log. > > > > That would be my take on this, yes, but I open to hear any other suggestions and > > ideas I couldn't think of as well. So, read to find out whether migration is supported at all, write to find out whether it is supported for that concrete pairing is reasonable for libvirt? > > > > Erik > got it. thanks a lot! > > hi Cornelia and Dave, > do you also agree on: > 1. "not to define the specific errno returned for a specific situation, > let the vendor driver decide, userspace simply needs to know that an errno on > read indicates the device does not support migration version comparison and > that an errno on write indicates the devices are incompatible or the target > doesn't support migration versions. " > 2. vendor driver should log detailed error reasons in kernel log. Two questions: - How reasonable is it to refer to the system log in order to find out what exactly went wrong? - If detailed error reporting is basically done to the syslog, do different error codes still provide useful information? Or should the vendor driver decide what it wants to do?