Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp555720ybt; Wed, 24 Jun 2020 05:57:37 -0700 (PDT) X-Google-Smtp-Source: ABdhPJziKc3z8I3djPluY7uadBiRs4NYOwp7OJngMUkZAwxi4CIH1VGs352IDPeu5aWi8BhmgQXL X-Received: by 2002:a17:906:f98e:: with SMTP id li14mr18541719ejb.174.1593003457764; Wed, 24 Jun 2020 05:57:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1593003457; cv=none; d=google.com; s=arc-20160816; b=MJHvXI57MU9hQkeHe4vmC+ySo6/xegv+syXkMr0TkXgSAKdh6zELXUntKSp9zjyosB sIk3bzCJ4mQYozd/Hr1dnxSHKmhhx7ATEmUf8gQjjd7ZwrLBEvwqRX/GKm/rt8IcnjXi KMG48TAwhvBh8Vf4vglTXWwNtzQu7RvkfPLW6vK4rP4VzNppSCS4airBFAh68SR7xPWs H4O5k09TzcyVgO9kLlxTmm/x/l9j4EZpq00kvuSFwogN8GSP6GcZqJI46HFMkxiCn+yH NxkXMAZk1eZx7/MRci6kgHsgj3xCe7/WGUqt3vsEKBNX6+VAQu3BwH0+rNvCCgcs2W38 wq7A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=O7wgB1PLA24/IElEtiiyYyshpHq9ZAt0FgHZBp4YNRQ=; b=NHpMFs72uJhrDgzi+Hv0vGdBT2o74sra54NluocVwMjdMXaFvt4DRHSYTfxm9il6LZ uHZHNH8TZ0UnZxbD+LyaUMnMP/ifc+uhAQrmuq/BvxB3uHqY0V5/pf0jtdvsQ4ac48Mn SJCJFgjro9Dkcey8sULcdv3iI3TQhAJaXum+J0dxRlyd7cViHV6zKCACz8QPX+BAt/GQ 5cVvyzlb7ilBuiJ1kjQfKYLIjdTyXE53dGuIrQYvGUe8YGj0CIv/hZz+TeFh6YIP7Vsp 8uqO3TizHta1EQs4tnPEbg79+Zr/MoGTOdnqHxHpnDF2uaIfo1e19nCNcDz2NxLK+m4Y AMbQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=brEAxIh+; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id ck26si12599104edb.166.2020.06.24.05.57.14; Wed, 24 Jun 2020 05:57:37 -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; dkim=pass header.i=@gmail.com header.s=20161025 header.b=brEAxIh+; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2390922AbgFXMxU (ORCPT + 99 others); Wed, 24 Jun 2020 08:53:20 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35582 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388942AbgFXMxT (ORCPT ); Wed, 24 Jun 2020 08:53:19 -0400 Received: from mail-pj1-x1043.google.com (mail-pj1-x1043.google.com [IPv6:2607:f8b0:4864:20::1043]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CD9F4C061573 for ; Wed, 24 Jun 2020 05:53:19 -0700 (PDT) Received: by mail-pj1-x1043.google.com with SMTP id u8so1139398pje.4 for ; Wed, 24 Jun 2020 05:53:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=O7wgB1PLA24/IElEtiiyYyshpHq9ZAt0FgHZBp4YNRQ=; b=brEAxIh+ao1RY2mgzrJutnplvrsHDpRbP3JhBHzSEdr4RyP5HviwcRvnP644j4rjcg wljCRJoJl92CPuu8MnHazReBoQ2GdWcIgWLwbrzdHwhr42klN2VXc/z5GBYnOLZQkOSa KVjl0/zO1XSvGdQQSCMkhwoSPpnZYlvHpHhQqTFu8WvOpE8mg8gopIQN2uWrLCW1Nj1G 0bitoBcn6UGo0kiwb98U1Ls155VX1UjmPdYrBWuVcsgHDR46a5GIV80kYnwpTCv8MzJK /SuCiTVZtPPk1OuyZFkt5XBLs7vV16SMROdz4YZ4rRuXqyLhAlSvpMycjnv3LKod4VET ioBQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=O7wgB1PLA24/IElEtiiyYyshpHq9ZAt0FgHZBp4YNRQ=; b=l+hBjGNcPk06pbpTAZmJkPa7HAvg5GSvZufYKSrPN0QC+UxOu370bB9NzNm68EJgp0 7BFaIgqz76xgpF7gSW7nWkn9+JQ7PGvlLZj/yRC8Cw/gd5tSjDc49T1UbPz12x6PxlPQ j185pjVQqAcdUP1xgou2G3lWrCnP4V4Ud9dAPHjFwdz6ojswhGoAGzSZTYSD8rzotgMk R5GoieWckYsC92NxCPBl7KEhWQ1DrXyJ5JorWG6a1ResVEnkZU9VIzBnDE0A5NN34dL+ 6qeRvescQGPJpHFt61fAGecQ2eSv5czlm0qxt/Roqe/HMyG9zDoUKWjdQ+4y/MmMn4X3 JhOw== X-Gm-Message-State: AOAM5333xlOkym0QJXjy1pAFnmqFd+m+/DFRSxBapM3BCXdQnBIdK3jf y3UMZ4DIQDS7JOCopk4d46I9qYHXuG2yVJFvrIsQ/EIC X-Received: by 2002:a17:90a:220f:: with SMTP id c15mr29721947pje.129.1593003199402; Wed, 24 Jun 2020 05:53:19 -0700 (PDT) MIME-Version: 1.0 References: <20200624114127.3016-1-a.hajda@samsung.com> <20200624114127.3016-4-a.hajda@samsung.com> In-Reply-To: <20200624114127.3016-4-a.hajda@samsung.com> From: Andy Shevchenko Date: Wed, 24 Jun 2020 15:53:06 +0300 Message-ID: Subject: Re: [RESEND PATCH v5 3/5] drivers core: allow probe_err accept integer and pointer types To: Andrzej Hajda Cc: Greg Kroah-Hartman , Bartlomiej Zolnierkiewicz , Marek Szyprowski , "Rafael J. Wysocki" , Linux Kernel Mailing List , linux-arm Mailing List , Mark Brown , Russell King - ARM Linux , Neil Armstrong , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Daniel Vetter , "open list:DRM DRIVERS" Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Jun 24, 2020 at 2:41 PM Andrzej Hajda wrote: > > Many resource acquisition functions return error value encapsulated in > pointer instead of integer value. To simplify coding we can use macro > which will accept both types of error. > With this patch user can use: > probe_err(dev, ptr, ...) > instead of: > probe_err(dev, PTR_ERR(ptr), ...) > Without loosing old functionality: > probe_err(dev, err, ...) ... > + * This helper implements common pattern present in probe functions for error > + * checking: print message if the error is not -EPROBE_DEFER and propagate it. > + * In case of -EPROBE_DEFER it sets defer probe reason, which can be checked > + * later by reading devices_deferred debugfs attribute. > + * It replaces code sequence: > + * if (err != -EPROBE_DEFER) > + * dev_err(dev, ...); Btw, we have now %pe. Can you consider to use it? > + * return err; > + * with > + * return probe_err(dev, err, ...); > + * > + * Returns @err. > + * > + */ > +#define probe_err(dev, err, args...) __probe_err(dev, (long)(err), args) Can't we use PTR_ERR() here? -- With Best Regards, Andy Shevchenko