Received: by 2002:a05:6a10:d5a5:0:0:0:0 with SMTP id gn37csp4909673pxb; Tue, 5 Oct 2021 13:05:56 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxf+psya0ZpwxQzOKBtfANrFdVoEjrYH14VFQEdyLxrCOFSzZM06vGONszVaLn6d7wElAWH X-Received: by 2002:a17:906:4f13:: with SMTP id t19mr14291353eju.53.1633464356599; Tue, 05 Oct 2021 13:05:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1633464356; cv=none; d=google.com; s=arc-20160816; b=DY1JPo+4Y/Wl7mEEiX9sun0Kjg6up9EgxF5PRcYC8a1VR0t7zKrrVWkb0F/EGdnSmb CXodTHFYbW6L3CA63mGR5utr7DDmQvzE3/SQ7scXaS+hoiyNnFX9ch7Emz5d2NhpOpAf OLxdacS0lYkUWgfImqUt+aPwM1R5qqlADrLisX6Y+AMpKHB1ZXLvIhJCSCVel/ZLRC1s 2UnWejMWYHlHrVjFMiDKjabIs3zsdb2JPjopy2k0yzf2o4tuzjFG85on+v4QmkP0Oq3f psWk79DwiYu2nBBAAnGQPhOx766kDRbJZm9g1LV72wZnEAr+7itUyTueJr5md9VJyWQA GpMg== 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=liEdsKQVIZKC383SgBxJSKXBnrw6pndk0uJ9Gtp20yY=; b=zS/716ub9yA1eLhwYg5RuIOs0yfqSSOpE6g0VLvzNnAqJX5+v5zpHD/GdDa0H7AEdu zl2VeFRb3feFVOHXp+oj+SA66nuWvLaXFUmhGSI3KThVtEeJGstnJBzp2R08GIrrR6bY 2y9Bjchu+9hl28QePcFjn6whouWCeVH6O+FHPBhxhAIpkIJfp6YFLk1U3fzfMEGc0DqZ T2YCVsaYvdjiI6x3mgAknRCTnr+dHuFTVBlpJDRNwXFzA4zIC2LBMxNUVmiD6KqrXYXl idWa8gD/ap1bCtG5Ct3+7u7SN08CQKkzG8JJo7q4DxmlW8yTnBhnj95CpZ7kmV+Lw1CK Yq9w== 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 i24si15745942eds.331.2021.10.05.13.05.07; Tue, 05 Oct 2021 13:05:56 -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 S235994AbhJEUBZ (ORCPT + 99 others); Tue, 5 Oct 2021 16:01:25 -0400 Received: from netrider.rowland.org ([192.131.102.5]:39781 "HELO netrider.rowland.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S235134AbhJEUBV (ORCPT ); Tue, 5 Oct 2021 16:01:21 -0400 Received: (qmail 635423 invoked by uid 1000); 5 Oct 2021 15:59:29 -0400 Date: Tue, 5 Oct 2021 15:59:29 -0400 From: Alan Stern To: Dmitry Torokhov Cc: Rajat Jain , Greg Kroah-Hartman , Thinh Nguyen , Mathias Nyman , Andrew Lunn , Chris Chiu , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, levinale@google.com, bleung@google.com, rajatxjain@gmail.com, jsbarnes@google.com, pmalani@google.com Subject: Re: [PATCH 2/2] usb: hub: Mark devices downstream a removable hub, as removable Message-ID: <20211005195929.GA634685@rowland.harvard.edu> References: <20210929224823.556943-1-rajatja@google.com> <20210929224823.556943-2-rajatja@google.com> <20211005145655.GJ621017@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 Tue, Oct 05, 2021 at 09:51:02AM -0700, Dmitry Torokhov wrote: > Hi Alan, > > On Tue, Oct 5, 2021 at 7:56 AM Alan Stern wrote: > > > > As I understand it, the "removable" property refers specifically to > > the device's upstream link, not to whether _any_ of the links leading > > from the device to the computer could be removed. > > No, that is not what it means. I'll cite our sysfs ABI: > > What: /sys/devices/.../removable > Date: May 2021 > Contact: Rajat Jain > Description: > Information about whether a given device can be removed from the > platform by the user. This is determined by its subsystem in a > bus / platform-specific way. This attribute is only present for > devices that can support determining such information: > > "removable": device can be removed from the platform by the user > "fixed": device is fixed to the platform / cannot be removed > by the user. > "unknown": The information is unavailable / cannot be deduced. > > Currently this is only supported by USB (which infers the > information from a combination of hub descriptor bits and > platform-specific data such as ACPI) and PCI (which gets this > from ACPI / device tree). > > It specifically talks about _platform_, not about properties of some > peripheral attached to a system. Note that the wording is very similar > to what we had for USB devices that originally implemented "removable" > attribute: In that case, shouldn't Rajat's patch change go into the driver core rather than the hub driver? _Every_ device downstream from a removable link should count as removable, yes? Not just the USB devices. And to say that the attribute is supported only by USB and PCI is misleading, since it applies to every device downstream from a removable link. > > This is probably what Oliver meant when he complained about losing > > information. With the knowledge of whether each individual link is > > removable, you can easily tell whether there's some way to remove a > > device from the system. But if you only know whether the device is > > removable from the system overall, you generally can't tell whether > > the link to the device's parent is removable. > > If we need this data then we need to establish some new attribute to > convey this info. I don't know if we need it, but such an attribute seems like a good idea. Alan Stern