dmaengine.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [v2,1/6] ACPI / bus: Return error code from __acpi_match_device() in one case
@ 2018-02-04  7:16 Rafael J. Wysocki
  0 siblings, 0 replies; 3+ messages in thread
From: Rafael J. Wysocki @ 2018-02-04  7:16 UTC (permalink / raw)
  To: Andy Shevchenko
  Cc: dmaengine, Rafael J . Wysocki, ACPI Devel Maling List, Sinan Kaya,
	Sakari Ailus, Vinod Koul

On Thu, Feb 1, 2018 at 9:20 PM, Andy Shevchenko
<andriy.shevchenko@linux.intel.com> wrote:
> Instead of playing tricks with last invalid entry,
> return simple -ENODATA error code casted to pointer.
>
> It would be good for future in case caller passes NULL pointer for
> ID table. Moreover, caller can check the code to be sure what happened
> inside callee.
>
> Fixes: 2b9c698efa58 ("ACPI / scan: Take the PRP0001 position in the list of IDs into account")
> Cc: Sinan Kaya <okaya@codeaurora.org>
> Cc: Sakari Ailus <sakari.ailus@linux.intel.com>
> Cc: Vinod Koul <vinod.koul@intel.com>
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> ---
> v2: new patch
>  drivers/acpi/bus.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/acpi/bus.c b/drivers/acpi/bus.c
> index f87ed3be779a..a87a97bf75f8 100644
> --- a/drivers/acpi/bus.c
> +++ b/drivers/acpi/bus.c
> @@ -762,7 +762,7 @@ static const struct acpi_device_id *__acpi_match_device(
>                  */
>                 if (!strcmp(ACPI_DT_NAMESPACE_HID, hwid->id)
>                     && acpi_of_match_device(device, of_ids))
> -                       return id;
> +                       return ERR_PTR(-ENODATA);

So why is returning id from here a problem?

>         }
>         return NULL;
>  }
> --
---
To unsubscribe from this list: send the line "unsubscribe dmaengine" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 3+ messages in thread
* [v2,1/6] ACPI / bus: Return error code from __acpi_match_device() in one case
@ 2018-02-05 15:56 Andy Shevchenko
  0 siblings, 0 replies; 3+ messages in thread
From: Andy Shevchenko @ 2018-02-05 15:56 UTC (permalink / raw)
  To: Rafael J. Wysocki
  Cc: dmaengine, Rafael J . Wysocki, ACPI Devel Maling List, Sinan Kaya,
	Sakari Ailus, Vinod Koul

On Sun, 2018-02-04 at 08:16 +0100, Rafael J. Wysocki wrote:
> On Thu, Feb 1, 2018 at 9:20 PM, Andy Shevchenko
> <andriy.shevchenko@linux.intel.com> wrote:
> > Instead of playing tricks with last invalid entry,
> > return simple -ENODATA error code casted to pointer.
> > 
> > It would be good for future in case caller passes NULL pointer for
> > ID table. Moreover, caller can check the code to be sure what
> > happened
> > inside callee.

> > -                       return id;
> > +                       return ERR_PTR(-ENODATA);
> 
> So why is returning id from here a problem?

I think you already noticed that in the following patch it becomes a
problem if user supply ids == NULL.

That's why I added a second paragraph to the commit message to explain.

^ permalink raw reply	[flat|nested] 3+ messages in thread
* [v2,1/6] ACPI / bus: Return error code from __acpi_match_device() in one case
@ 2018-02-01 20:20 Andy Shevchenko
  0 siblings, 0 replies; 3+ messages in thread
From: Andy Shevchenko @ 2018-02-01 20:20 UTC (permalink / raw)
  To: dmaengine, Rafael J . Wysocki, linux-acpi
  Cc: Andy Shevchenko, Sinan Kaya, Sakari Ailus, Vinod Koul

Instead of playing tricks with last invalid entry,
return simple -ENODATA error code casted to pointer.

It would be good for future in case caller passes NULL pointer for
ID table. Moreover, caller can check the code to be sure what happened
inside callee.

Fixes: 2b9c698efa58 ("ACPI / scan: Take the PRP0001 position in the list of IDs into account")
Cc: Sinan Kaya <okaya@codeaurora.org>
Cc: Sakari Ailus <sakari.ailus@linux.intel.com>
Cc: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
v2: new patch
 drivers/acpi/bus.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/acpi/bus.c b/drivers/acpi/bus.c
index f87ed3be779a..a87a97bf75f8 100644
--- a/drivers/acpi/bus.c
+++ b/drivers/acpi/bus.c
@@ -762,7 +762,7 @@ static const struct acpi_device_id *__acpi_match_device(
 		 */
 		if (!strcmp(ACPI_DT_NAMESPACE_HID, hwid->id)
 		    && acpi_of_match_device(device, of_ids))
-			return id;
+			return ERR_PTR(-ENODATA);
 	}
 	return NULL;
 }

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-02-05 15:56 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-02-04  7:16 [v2,1/6] ACPI / bus: Return error code from __acpi_match_device() in one case Rafael J. Wysocki
  -- strict thread matches above, loose matches on Subject: below --
2018-02-05 15:56 Andy Shevchenko
2018-02-01 20:20 Andy Shevchenko

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).