From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.remote-ip=74.125.82.179 ARC-Seal: i=1; d=subspace.kernel.org; s=arc20261015; a=rsa-sha256; cv=none; t=1793910900; b=mZo2338nw7eWxqYFlK3Gr/94HcZSlbV+V38RJoY0ylCcd/9EvB0wpirg9PYKEzHwx+tg +Yjqsa4ht4OAwa5p02GNMHy/U4iO0+WB/5q+r1KemIQFcgj8Ad1o64yAtWyB69seOQRLz P5p5LueVsz/E/Y3DoZke8DkIyrfqO3XjWit76w3dFCG4ra+RtCpH6E78ZjT4v8UVFg2hv rN459YIsvIvzNDTzAYt+4r+aTPHskqp2UZiyrk7mmmtYVnil5gQ8oAGPTBSM4geLPo6EB snHCvA2M46dqVYAHyAlVA6p2a6/oFDDVgd5frr8AuZb9bGCcuAX3df2jl7PCThaypDg== ARC-Message-Signature: i=1; d=subspace.kernel.org; s=arc20261015; a=rsa-sha256; c=relaxed/relaxed; t=1793910900; h=DMARC-Filter:Received:DKIM-Signature:X-Google-DKIM-Signature: X-Forwarded-Encrypted:X-Gm-Message-State:X-Gm-Gg:X-Received:Received: Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; bh=aFjl/l4WKV+VfugNVUlnSUSxj2ZFcfM53muFdv6vcfQ=; b=tRqdjWjBOA6fkU8ZaVEQGzJ5PzGCYASTMZIOCECx3k/4rKbsXXfIYDOip2c3xGUvdF6a KOoGrMBqy520gq6o0U3KkFARvDZicaLFozGHsWqlK4F0uZM6e7XpovsWEwD9KmYeXb5fL zwAJI5n+ocDpN989N4S5km/lZv0Cvd85qhUqgS69hVwFxGsQI49k+Op2yiHWy+7bIwsi7 G+0QVjVTOaLZbvpwH28P/shRDyWq4YalOBMqfpndPnsROPCC1lsqSR1/ZQMKj11JPtbA8 EWjUxUjmFsYg+Oi4q0hvMcVxw4Bsftu4LxNjhUN/2DIfpLAz6/G3N7dV6aGv6tNBdpA== ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20260707 header.b=tfDV8RqH; arc=none smtp.remote-ip=74.125.82.179 Received: from mail-dy1-f179.google.com (mail-dy1-f179.google.com [74.125.82.179]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E654E606A334 for ; Thu, 5 Nov 2026 20:34:59 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.2 smtp.subspace.kernel.org E654E606A334 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key, unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20260707 header.b=tfDV8RqH Received: by mail-dy1-f179.google.com with SMTP id 5a478bee46e88-353804b591eso4388099eec.0 for ; Thu, 05 Nov 2026 12:34:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20260707; t=1793910899; x=1794515699; darn=vger.kernel.org; h=in-reply-to:content-disposition:content-type:mime-version :references:message-id:subject:cc:to:from:date:from:to:cc:subject :date:message-id:reply-to:content-type; bh=aFjl/l4WKV+VfugNVUlnSUSxj2ZFcfM53muFdv6vcfQ=; b=tfDV8RqHdxq2Tir67Fgi3R8YmRMnkFni198pbJyN+2f/wlgyg1u3H/zAskp5NHkOv7 tIdkAuAZ8WUJ1kMmFVB+y6fHOz8B/caj8wD6aThvegmX02BzNu06iJykZNQp0y6aCkds RlikDnWVU951ugzrT3mYdlzvFKlHh7U4jsRYSXIG1h4+jf8Ji6Bx4VcBvQSsJCCbdeY9 mB7Z2NGEfuJN8Celqb7oNC5peWi2IHdFiN3NSUJbZlwldHAE4GnOhIkhY+aC2WxclROa S4gSdge+AsM35XlqkfzkRHJ1/+Vy2cjQlMpoMljhOELSER57fCOwoNKU+WxKYNt0B3OE B7JQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1793910899; x=1794515699; h=in-reply-to:content-disposition:content-type:mime-version :references:message-id:subject:cc:to:from:date:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=aFjl/l4WKV+VfugNVUlnSUSxj2ZFcfM53muFdv6vcfQ=; b=FXSiy/sBSRhvEjDbL5ODfCYT4aRGWsrzFOlz+pjsfugi6h8R6C09tmR1w5CARf94CW /CDlHgdLiaNPaKiLj1+lPxWpw39rIT0NQ1sVOO7WvuX8twqddi/yzxu1fEmeBe10Hbqg eL329enj3kybie+5QVGxVxts2LPqA8MXugHSBd8F0hNsyMYpIZIwsUgFzC+tfvqKUK7n KgOaG+YB1AfAtLzSnhyHVhizTi1Mb0GrekmrNtVdJ4u/s7HZQeenNGhxRPpgOniJj/vo +4XDUQcC//dbZTA33xOzpwMriyJnjlr3Ixqh9TUQK+6G1vMEWXfv1BQTzN2qK7qVB3m6 DwFA== X-Forwarded-Encrypted: i=1; AKwUvBw33YSwwH+BIkU2T44jZCcgwTfIQtBK/1o7FXQCwJNRd5Gib07qnZJqMlo0ZKymRrJBqhGI41UM1xVXe8w=@vger.kernel.org X-Gm-Message-State: APuU4Z/z9go2VxNZ2U0rs7Q8MlSEteaIc5b7LhA8VRwSbiZd344QmNEb 1GjoRgKNUY9PlrVFiVM8UBckUHGfeS12njVBWaUlJ7bSEadOpGoHXuz/ X-Gm-Gg: AYBFou0bmbxv33lMzKrzN9lepFDxBtPli1+f8VEZ6dT3onqkwLEb3XZEkOLBLLvJcsS Z46bgWG5cwVTi0oB2Gx74HbIpDD8kRWA/frF4DOXguHUTrhblXhQqLX3X8yjTsRIZa0CZU9EUOM SI+AVXQldGkWvFanF3vyYAPy+nt4W9l8EWNLSm93XaYQhDiGOlB/M3E3mPVcW+P+NpUJ3qXOdje hYfUeAxeQo4zC2W/MxzNtrIRwiHC/INq+52dNLxXNjqnZei+WkrCE0L4Zssis7uuaOXe16ZxYhx hdBBjIkvguhi7Tfj4PUWlRdEQL8fAlBnQbUrbKsmkPVRJaG1AaNCLfPK4tLO3JgpvAq6O/ObQPu 1OFfjJq21I+8u9ISRvguOI3jZcd3DD2D2IUM/g5R0liC8LI+Qr6rSybf0uJZvou0MZggpBDVMBz rv6f602u4kxYE940PkdwYvRk2ht/tabr6Wk2r2Fjd/Y3jdqWpx6OOl6ex6mTBR26i3AeFE5FCXs hhuH6563iMF+L70tH+B8hPOhWuSOvQROgw4HohXf7phNmS4OnPIvUHKRrpBYXnpq41iHijJxxP9 chWQ+lFOPtVg6Dn6jjfCPOtSErdAWM6QGI4qsUZEOJ5NBXIABsQZB48skPvLbIbV8zORF1Q= X-Received: by 2002:a05:701b:2050:20b0:166:5552:780a with SMTP id a92af1059eb24-1b25d31e5a2mr163714c88.8.1793910898553; Thu, 05 Nov 2026 12:34:58 -0800 (PST) Received: from google.com ([2a00:79e0:2ebe:8:c8f4:b7d9:252f:4483]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-36f722ed274sm649631eec.18.2026.11.05.12.34.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 05 Nov 2026 12:34:57 -0800 (PST) Date: Thu, 5 Nov 2026 12:34:53 -0800 From: Dmitry Torokhov To: Leon Romanovsky Cc: Greg Kroah-Hartman , "Rafael J. Wysocki" , Danilo Krummrich , Andrew Lunn , Heiner Kallweit , Russell King , "David S. Miller" , Jakub Kicinski , Paolo Abeni , Johannes Berg , Jonathan Corbet , Shuah Khan , Randy Dunlap , Bjorn Helgaas , "Joerg Roedel (AMD)" , Suravee Suthikulpanit , Vasant Hegde , Will Deacon , Robin Murphy , David Woodhouse , Lu Baolu , Johan Hovold , Eric Dumazet , Marcel Holtmann , Luiz Augusto von Dentz , Nipun Gupta , Nikhil Agarwal , Pieter Jansen van Vuuren , linux-kernel@vger.kernel.org, driver-core@lists.linux.dev, linux-input@vger.kernel.org, netdev@vger.kernel.org, linux-wireless@vger.kernel.org, linux-usb@vger.kernel.org, linux-bluetooth@vger.kernel.org, linux-acpi@vger.kernel.org, linux-doc@vger.kernel.org, linux-pci@vger.kernel.org, iommu@lists.linux.dev, Jason Gunthorpe Subject: Re: [PATCH 02/17] Input: serio - attach manual drivers through the driver core Message-ID: References: <20261105-device-trust-core-v1-0-1e536825b4eb@nvidia.com> <20261105-device-trust-core-v1-2-1e536825b4eb@nvidia.com> <20261105191940.GI8298@unreal> X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20261105191940.GI8298@unreal> On Thu, Nov 05, 2026 at 09:19:40PM +0200, Leon Romanovsky wrote: > On Thu, Nov 05, 2026 at 09:05:29AM -0800, Dmitry Torokhov wrote: > > On Thu, Nov 05, 2026 at 01:42:15PM +0200, Leon Romanovsky wrote: > > > From: Leon Romanovsky > > > > > > Manual serio binding connects a driver before driver core can admit the > > > device. A rejected binding therefore arrives after functional setup. > > > > > > Keep the port ID check and use device_driver_attach() for the existing bus > > > probe path. Driver core then serializes admission and handles probe failure > > > before publishing the binding. > > > > > > Signed-off-by: Leon Romanovsky > > > --- > > > drivers/input/serio/serio.c | 24 +++--------------------- > > > 1 file changed, 3 insertions(+), 21 deletions(-) > > > > > > diff --git a/drivers/input/serio/serio.c b/drivers/input/serio/serio.c > > > index 54dd26249b027..604440244c1ca 100644 > > > --- a/drivers/input/serio/serio.c > > > +++ b/drivers/input/serio/serio.c > > > @@ -81,28 +81,10 @@ static int serio_match_port(const struct serio_device_id *ids, struct serio *ser > > > > > > static int serio_bind_driver(struct serio *serio, struct serio_driver *drv) > > > { > > > - int error; > > > - > > > - if (serio_match_port(drv->id_table, serio)) { > > > - > > > - serio->dev.driver = &drv->driver; > > > - if (serio_connect_driver(serio, drv)) { > > > - serio->dev.driver = NULL; > > > - return -ENODEV; > > > - } > > > + if (!serio_match_port(drv->id_table, serio)) > > > + return 0; > > > > > > - error = device_bind_driver(&serio->dev); > > > - if (error) { > > > - dev_warn(&serio->dev, > > > - "device_bind_driver() failed for %s (%s) and %s, error: %d\n", > > > - serio->phys, serio->name, > > > - drv->description, error); > > > - serio_disconnect_driver(serio); > > > - serio->dev.driver = NULL; > > > - return error; > > > - } > > > - } > > > - return 0; > > > + return device_driver_attach(&drv->driver, &serio->dev); > > > > I am not sure how safe it is, serio (and gameport) have pretty elaborate > > structure and locking rules because they can recurse into themselves (to > > support case of Synaptics touch-pads with pass-through PS/2 ports). > > > > But this call is for user-initiated probing anyways, I am not sure if it > > even needs "trust" handling. > > This patch does not change the locking; the lock was already held on paths such > as the rescan path. This change makes that explicit. Does this enforce synchronous probing? Anyway, I would like to get rid of this special probing in serio core. Given that the code path is only triggered by explicit user request I do not believe we need to worry about supporting trust notion here, so please drop it from the series. Thanks. -- Dmitry