Message ID | 20121029160455.14886.37788.stgit@localhost.localdomain (mailing list archive) |
---|---|
State | Changes Requested, archived |
Headers | show |
On Mon, Oct 29, 2012 at 10:05 AM, Alan Cox <alan@lxorguk.ukuu.org.uk> wrote: > From: Alan Cox <alan@linux.intel.com> > > TEST_ALPHA() is broken and always returns 0 > > Resolves-bug: https://bugzilla.kernel.org/show_bug.cgi?id=45171 > --- > > drivers/pnp/pnpacpi/core.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/pnp/pnpacpi/core.c b/drivers/pnp/pnpacpi/core.c > index 26b5d4b..107b6b6 100644 > --- a/drivers/pnp/pnpacpi/core.c > +++ b/drivers/pnp/pnpacpi/core.c > @@ -58,7 +58,7 @@ static inline int __init is_exclusive_device(struct acpi_device *dev) > if (!(('0' <= (c) && (c) <= '9') || ('A' <= (c) && (c) <= 'F'))) \ > return 0 > #define TEST_ALPHA(c) \ > - if (!('@' <= (c) || (c) <= 'Z')) \ > + if (!('@' <= (c) && (c) <= 'Z')) \ The original is definitely broken. I think the corrected test allows PNP IDs containing '@', which doesn't appear legal per sec 6.1.5 of the ACPI 5.0 spec. Should this be + if (!('A' <= (c) && (c) <= 'Z')) \ instead? > return 0 > static int __init ispnpidacpi(const char *id) > { > > -- > To unsubscribe from this list: send the line "unsubscribe linux-acpi" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/pnp/pnpacpi/core.c b/drivers/pnp/pnpacpi/core.c index 26b5d4b..107b6b6 100644 --- a/drivers/pnp/pnpacpi/core.c +++ b/drivers/pnp/pnpacpi/core.c @@ -58,7 +58,7 @@ static inline int __init is_exclusive_device(struct acpi_device *dev) if (!(('0' <= (c) && (c) <= '9') || ('A' <= (c) && (c) <= 'F'))) \ return 0 #define TEST_ALPHA(c) \ - if (!('@' <= (c) || (c) <= 'Z')) \ + if (!('@' <= (c) && (c) <= 'Z')) \ return 0 static int __init ispnpidacpi(const char *id) {
From: Alan Cox <alan@linux.intel.com> TEST_ALPHA() is broken and always returns 0 Resolves-bug: https://bugzilla.kernel.org/show_bug.cgi?id=45171 --- drivers/pnp/pnpacpi/core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html