Received: by 2002:a05:6a10:d5a5:0:0:0:0 with SMTP id gn37csp1512555pxb; Fri, 1 Oct 2021 12:15:27 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxIAX5wSQAA0IJbAPKL2+yEfbru3yEh6bmJv+ZPj+JHZRk+6HhFvVyVNP1O7Zla2okYPmyS X-Received: by 2002:a17:906:54c3:: with SMTP id c3mr7890211ejp.536.1633115726769; Fri, 01 Oct 2021 12:15:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1633115726; cv=none; d=google.com; s=arc-20160816; b=fvuBi/pFRiHmAfEPcyZ+rS14sBugb5aOCGn2kF9bME3KudszTN1K5vQGfi5B/2c8Il qioOkxmki6PLTbQ0++ZNXBFJpNzrcBvIPzs38TTbFgiQAXTWMu5W6OUJdxtsIZjbiR6M cNQTnZRCKfX4dicWPxN23v+l50mCL+CnWLHOlZFHuUfBcv0rEnC4yCbtHqNY5HfCDPZc BEOwtVFZKeEtb16e+z5T2wlXmFFzQPq45NfT1P3sHmDmhXEPRbUpLXOpbNpNSNb4NE3Y KJRTcZlXoqydyzI8ukQkrLnT9FAW+zO7SMaCt4yF6ZYG+Mo9vx1fn5sEVP1f7cmg5e1C jT1A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date; bh=o7QTpYwNCmPqDhyY46DbzvVUq1D5SOIL+P9jE+s4NVk=; b=SA23tlq1ypnpVmFwbuEawbRdvT12sGM50oQLRWGrQYdhp8ppfgKnCMeUBCTpYdNN5W eM1jwBzAoAjMzKHKXn58w798Gf5PQP4dznmVn0cEyXKhdmxdhiHBYBGQHd6qLjVSGZuy GHZl/9G0aPUYsOP8XGpqhqY/jJpH8XYq2kspWBxEgrF6F4nPX6PFJs5IjFeCpCcuzyAH DHHl1gy4tJz72oB+l7LmS48vqtUpnRTJdneTI03I1yADvgOKmwJ+sV01CVXzi8SuTLZk PNTLl2vclTDRQ8kPsmY0YlzXRKoS+9nK6Nr2CTCfo8idTcT9jFiANcvudyWQrnVnMOJD Jk7w== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id 10si7987046ejt.595.2021.10.01.12.15.00; Fri, 01 Oct 2021 12:15:26 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1355329AbhJATCf (ORCPT + 99 others); Fri, 1 Oct 2021 15:02:35 -0400 Received: from netrider.rowland.org ([192.131.102.5]:34017 "HELO netrider.rowland.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S1355263AbhJATCe (ORCPT ); Fri, 1 Oct 2021 15:02:34 -0400 Received: (qmail 512559 invoked by uid 1000); 1 Oct 2021 15:00:48 -0400 Date: Fri, 1 Oct 2021 15:00:48 -0400 From: Alan Stern To: Dan Williams Cc: Greg Kroah-Hartman , "Kuppuswamy, Sathyanarayanan" , "Michael S. Tsirkin" , Borislav Petkov , X86 ML , Bjorn Helgaas , Thomas Gleixner , Ingo Molnar , Andreas Noever , Michael Jamet , Yehezkel Bernat , "Rafael J . Wysocki" , Mika Westerberg , Jonathan Corbet , Jason Wang , Andi Kleen , Kuppuswamy Sathyanarayanan , Linux Kernel Mailing List , Linux PCI , USB list , virtualization@lists.linux-foundation.org Subject: Re: [PATCH v2 4/6] virtio: Initialize authorized attribute for confidential guest Message-ID: <20211001190048.GA512418@rowland.harvard.edu> References: <20210930010511.3387967-5-sathyanarayanan.kuppuswamy@linux.intel.com> <20210930065953-mutt-send-email-mst@kernel.org> <6d1e2701-5095-d110-3b0a-2697abd0c489@linux.intel.com> <1cfdce51-6bb4-f7af-a86b-5854b6737253@linux.intel.com> <20211001164533.GC505557@rowland.harvard.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.10.1 (2018-07-13) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Oct 01, 2021 at 11:09:52AM -0700, Dan Williams wrote: > On Fri, Oct 1, 2021 at 9:47 AM Alan Stern wrote: > > > > On Fri, Oct 01, 2021 at 09:13:54AM -0700, Dan Williams wrote: > > > Bear with me, and perhaps it's a lack of imagination on my part, but I > > > don't see how to get to a globally generic "authorized" sysfs ABI > > > given that USB and Thunderbolt want to do bus specific actions on > > > authorization toggle events. Certainly a default generic authorized > > > attribute can be defined for all the other buses that don't have > > > legacy here, but Thunderbolt will still require support for '2' as an > > > authorized value, and USB will still want to base probe decisions on > > > the authorization state of both the usb_device and the usb_interface. > > > > The USB part isn't really accurate (I can't speak for Thunderbolt). > > When a usb_device is deauthorized, the device will be unconfigured, > > deleting all its interfaces and removing the need for any probe > > decisions about them. In other words, the probe decision for a > > usb_device or usb_interface depends only on the device's/interface's > > own authorization state. > > > > True, the interface binding code does contain a test of the device's > > authorization setting. That test is redundant and can be removed. > > > > The actions that USB wants to take on authorization toggle events for > > usb_devices are: for authorize, select and install a configuration; > > for deauthorize, unconfigure the device. Each of these could be > > handled simply enough just by binding/unbinding the device. (There > > is some special code for handling wireless USB devices, but wireless > > USB is now defunct.) > > Ah, so are you saying that it would be sufficient for USB if the > generic authorized implementation did something like: > > dev->authorized = 1; > device_attach(dev); > > ...for the authorize case, and: > > dev->authorize = 0; > device_release_driver(dev); > > ...for the deauthorize case? Yes, I think so. But I haven't tried making this change to test and see what really happens. Alan Stern