From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-10.9 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id ED3C1C48BDF for ; Tue, 15 Jun 2021 05:20:22 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id C46E561410 for ; Tue, 15 Jun 2021 05:20:22 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229992AbhFOFWZ (ORCPT ); Tue, 15 Jun 2021 01:22:25 -0400 Received: from mail.kernel.org ([198.145.29.99]:53386 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229659AbhFOFWZ (ORCPT ); Tue, 15 Jun 2021 01:22:25 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 8BFAD613F5; Tue, 15 Jun 2021 05:20:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1623734421; bh=s6xYPmSy+OD/HC3bvosyPFKtWJM7qQtPwUKU0uQGXWw=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=k/KzRFX98rFyAH32IPZQiP3hWvx62edvCWGk4Fvk3561qwAL6DGXroBsfc+6DOWb9 UkeIASamFm6Ptq87jRBsD6/xlyJdMNZDTku67SBvaFNfSXviqyyK0FbFV5PnXrIwwZ TSk35PubERUvp9O6SHTqLEB9SaND/X/4r0b3bYVc= Date: Tue, 15 Jun 2021 07:20:17 +0200 From: Greg Kroah-Hartman To: Christoph Hellwig Cc: Jason Gunthorpe , Alex Williamson , Kirti Wankhede , David Airlie , Tony Krowiak , Christian Borntraeger , Cornelia Huck , Jonathan Corbet , Daniel Vetter , dri-devel@lists.freedesktop.org, Vasily Gorbik , Heiko Carstens , intel-gfx@lists.freedesktop.org, Jani Nikula , Jason Herne , Joonas Lahtinen , kvm@vger.kernel.org, linux-doc@vger.kernel.org, linux-s390@vger.kernel.org, Halil Pasic , "Rafael J. Wysocki" , Rodrigo Vivi Subject: Re: [PATCH 05/10] driver core: Export device_driver_attach() Message-ID: References: <20210614150846.4111871-1-hch@lst.de> <20210614150846.4111871-6-hch@lst.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20210614150846.4111871-6-hch@lst.de> Precedence: bulk List-ID: X-Mailing-List: linux-doc@vger.kernel.org On Mon, Jun 14, 2021 at 05:08:41PM +0200, Christoph Hellwig wrote: > From: Jason Gunthorpe > > This is intended as a replacement API for device_bind_driver(). It has at > least the following benefits: > > - Internal locking. Few of the users of device_bind_driver() follow the > locking rules > > - Calls device driver probe() internally. Notably this means that devm > support for probe works correctly as probe() error will call > devres_release_all() > > - struct device_driver -> dev_groups is supported > > - Simplified calling convention, no need to manually call probe(). > > The general usage is for situations that already know what driver to bind > and need to ensure the bind is synchronized with other logic. Call > device_driver_attach() after device_add(). > > If probe() returns a failure then this will be preserved up through to the > error return of device_driver_attach(). > > Signed-off-by: Jason Gunthorpe > Signed-off-by: Christoph Hellwig Reviewed-by: Greg Kroah-Hartman