linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Fwd: WMI driver no longer load after switching to generic UUID library
       [not found] <CAKx2Y1n0e+ggDcaqr8KD=3XLngzxQDRFDKdj=JPrqK0aiMxCpA@mail.gmail.com>
@ 2016-05-29 18:37 ` Kui Zhang
  2016-05-29 20:22 ` Linus Torvalds
  1 sibling, 0 replies; 6+ messages in thread
From: Kui Zhang @ 2016-05-29 18:37 UTC (permalink / raw)
  To: linux-kernel

oops, forgot the list.


---------- Forwarded message ----------
From: Kui Zhang <kuizhang@gmail.com>
Date: Sun, May 29, 2016 at 11:35 AM
Subject: WMI driver no longer load after switching to generic UUID library
To: andriy.shevchenko@linux.intel.com, dvhart@linux.intel.com,
akpm@linux-foundation.org, torvalds@linux-foundation.org


Hello,

After this:

commit 538d7eb86d58b3d7d73f3bb3ff960c4bdf411c1a
drivers/platform/x86/wmi.c: use generic UUID library


some keyboard functions stopped working:

clevo-wmi - git://git.code.sf.net/p/clevo-wmi/code
[   83.877887] Clevo Get GUID not found


/*
#define CLWMI_GET_GUID "ABBC0F6D-8EA1-11d1-00A0-C90629100000"

...

    if(!wmi_has_guid(CLWMI_GET_GUID)) {
        pr_err("Clevo Get GUID not found\n");
        return -ENODEV;
    }


*/



clevo-xsm-wmi - https://bitbucket.org/lynthium/clevo-xsm-wmi.git
insmod: ERROR: could not insert module clevo-xsm-wmi.ko: No such device

/*

#define CLEVO_GET_GUID    "ABBC0F6D-8EA1-11D1-00A0-C90629100000"

...

    if (!wmi_has_guid(CLEVO_GET_GUID)) {
        CLEVO_XSM_INFO("No known WMI control method GUID found\n");
        return -ENODEV;
    }

*/


thanks
Kui.Z

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

* Re: WMI driver no longer load after switching to generic UUID library
       [not found] <CAKx2Y1n0e+ggDcaqr8KD=3XLngzxQDRFDKdj=JPrqK0aiMxCpA@mail.gmail.com>
  2016-05-29 18:37 ` Fwd: WMI driver no longer load after switching to generic UUID library Kui Zhang
@ 2016-05-29 20:22 ` Linus Torvalds
  2016-05-30  7:58   ` Andy Shevchenko
  1 sibling, 1 reply; 6+ messages in thread
From: Linus Torvalds @ 2016-05-29 20:22 UTC (permalink / raw)
  To: Kui Zhang, Andy Shevchenko
  Cc: Darren Hart, Andrew Morton, Linux Kernel Mailing List

Andy?

Looking at that commit, it does look like what wmi_parse_guid +
wmi_swap_bytes did was to implement a LE uuid. So the conversion looks
correct, but the fact that it breaks something obviously means that
there's something missing. What's going on?

And dammit, how I hate uuid's and the idiotic byte ordering issue.
It's possibly the only idiotic standard that is even worse than xml.

            Linus

On Sun, May 29, 2016 at 11:35 AM, Kui Zhang <kuizhang@gmail.com> wrote:
> Hello,
>
> After commit 538d7eb86d58 ("drivers/platform/x86/wmi.c: use generic UUID library")
>
> some keyboard functions stopped working:
>
> clevo-wmi - git://git.code.sf.net/p/clevo-wmi/code
> [   83.877887] Clevo Get GUID not found
>
> /*
> #define CLWMI_GET_GUID "ABBC0F6D-8EA1-11d1-00A0-C90629100000"
>
> ...
>     if(!wmi_has_guid(CLWMI_GET_GUID)) {
>         pr_err("Clevo Get GUID not found\n");
>         return -ENODEV;
>     }
>
>
> */
>
> clevo-xsm-wmi - https://bitbucket.org/lynthium/clevo-xsm-wmi.git
> insmod: ERROR: could not insert module clevo-xsm-wmi.ko: No such device
>
> /*
>
> #define CLEVO_GET_GUID    "ABBC0F6D-8EA1-11D1-00A0-C90629100000"
>
> ...
>
>     if (!wmi_has_guid(CLEVO_GET_GUID)) {
>         CLEVO_XSM_INFO("No known WMI control method GUID found\n");
>         return -ENODEV;
>     }
>
> */
>
>
> thanks
> Kui.Z

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

* Re: WMI driver no longer load after switching to generic UUID library
  2016-05-29 20:22 ` Linus Torvalds
@ 2016-05-30  7:58   ` Andy Shevchenko
  2016-05-30 10:52     ` Bjørn Mork
  0 siblings, 1 reply; 6+ messages in thread
From: Andy Shevchenko @ 2016-05-30  7:58 UTC (permalink / raw)
  To: Linus Torvalds, Kui Zhang
  Cc: Darren Hart, Andrew Morton, Linux Kernel Mailing List

On Sun, 2016-05-29 at 13:22 -0700, Linus Torvalds wrote:
> Andy?
> 
> Looking at that commit, it does look like what wmi_parse_guid +
> wmi_swap_bytes did was to implement a LE uuid. So the conversion looks
> correct, but the fact that it breaks something obviously means that
> there's something missing. What's going on?

I proposed to add print to the loops to see what's going on there.

> 
> And dammit, how I hate uuid's and the idiotic byte ordering issue.
> It's possibly the only idiotic standard that is even worse than xml.

T'so seems has the same opinion http://www.spinics.net/lists/kernel/msg2
263333.html

> 
>             Linus
> 
> On Sun, May 29, 2016 at 11:35 AM, Kui Zhang <kuizhang@gmail.com>
> wrote:
> > Hello,
> > 
> > After commit 538d7eb86d58 ("drivers/platform/x86/wmi.c: use generic
> > UUID library")
> > 
> > some keyboard functions stopped working:
> > 
> > clevo-wmi - git://git.code.sf.net/p/clevo-wmi/code
> > [   83.877887] Clevo Get GUID not found
> > 
> > /*
> > #define CLWMI_GET_GUID "ABBC0F6D-8EA1-11d1-00A0-C90629100000"
> > 
> > ...
> >     if(!wmi_has_guid(CLWMI_GET_GUID)) {
> >         pr_err("Clevo Get GUID not found\n");
> >         return -ENODEV;
> >     }
> > 
> > 
> > */
> > 
> > clevo-xsm-wmi - https://bitbucket.org/lynthium/clevo-xsm-wmi.git
> > insmod: ERROR: could not insert module clevo-xsm-wmi.ko: No such
> > device
> > 
> > /*
> > 
> > #define CLEVO_GET_GUID    "ABBC0F6D-8EA1-11D1-00A0-C90629100000"
> > 
> > ...
> > 
> >     if (!wmi_has_guid(CLEVO_GET_GUID)) {
> >         CLEVO_XSM_INFO("No known WMI control method GUID found\n");
> >         return -ENODEV;
> >     }
> > 
> > */
> > 
> > 
> > thanks
> > Kui.Z

-- 
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Intel Finland Oy

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

* Re: WMI driver no longer load after switching to generic UUID library
  2016-05-30  7:58   ` Andy Shevchenko
@ 2016-05-30 10:52     ` Bjørn Mork
  2016-05-30 14:40       ` Andy Shevchenko
  0 siblings, 1 reply; 6+ messages in thread
From: Bjørn Mork @ 2016-05-30 10:52 UTC (permalink / raw)
  To: Andy Shevchenko
  Cc: Linus Torvalds, Kui Zhang, Darren Hart, Andrew Morton,
	Linux Kernel Mailing List

[-- Attachment #1: Type: text/plain, Size: 54 bytes --]

How about the untested attached patch?


Bjørn


[-- Attachment #2: 0001-lib-uuid.c-use-correct-offset-in-uuid-parser.patch --]
[-- Type: text/x-diff, Size: 1097 bytes --]

>From d1682d6c0a558cf8ffb82af959156f99f0f1f61a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bj=C3=B8rn=20Mork?= <bjorn@mork.no>
Date: Mon, 30 May 2016 12:44:05 +0200
Subject: [PATCH] lib/uuid.c: use correct offset in uuid parser
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Use '+ 0' and '+ 1' as offsets, like they were intended, instead
of adding to the result.

Fixes: 2b1b0d66704a ("lib/uuid.c: introduce a few more generic helpers")
Signed-off-by: Bjørn Mork <bjorn@mork.no>
---
 lib/uuid.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/lib/uuid.c b/lib/uuid.c
index e116ae5fa00f..37687af77ff8 100644
--- a/lib/uuid.c
+++ b/lib/uuid.c
@@ -106,8 +106,8 @@ static int __uuid_to_bin(const char *uuid, __u8 b[16], const u8 ei[16])
 		return -EINVAL;
 
 	for (i = 0; i < 16; i++) {
-		int hi = hex_to_bin(uuid[si[i]] + 0);
-		int lo = hex_to_bin(uuid[si[i]] + 1);
+		int hi = hex_to_bin(uuid[si[i] + 0]);
+		int lo = hex_to_bin(uuid[si[i] + 1]);
 
 		b[ei[i]] = (hi << 4) | lo;
 	}
-- 
2.1.4


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

* Re: WMI driver no longer load after switching to generic UUID library
  2016-05-30 10:52     ` Bjørn Mork
@ 2016-05-30 14:40       ` Andy Shevchenko
  2016-05-31  4:18         ` Kui Zhang
  0 siblings, 1 reply; 6+ messages in thread
From: Andy Shevchenko @ 2016-05-30 14:40 UTC (permalink / raw)
  To: Bjørn Mork
  Cc: Linus Torvalds, Kui Zhang, Darren Hart, Andrew Morton,
	Linux Kernel Mailing List

On Mon, 2016-05-30 at 12:52 +0200, Bjørn Mork wrote:
> How about the untested attached patch?
> 

Facepalm.jpg!

Good catch!

The question is how it passed in our internal tree without being
notified (it even included a lot of ACPI code updated)!?

My explanation since I have no access to archive of internal mailing
list is that I submitted 'cleaned up' version which brought that and
wasn't tested. 

Anyway I just wrote a test module and is about to submit it with your
fix in a series.

Thanks!

> 
> Bjørn
> 

-- 
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Intel Finland Oy

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

* Re: WMI driver no longer load after switching to generic UUID library
  2016-05-30 14:40       ` Andy Shevchenko
@ 2016-05-31  4:18         ` Kui Zhang
  0 siblings, 0 replies; 6+ messages in thread
From: Kui Zhang @ 2016-05-31  4:18 UTC (permalink / raw)
  To: Andy Shevchenko
  Cc: Bjørn Mork, Linus Torvalds, Darren Hart, Andrew Morton,
	Linux Kernel Mailing List

Thanks guys.

keyboard functions are working now.


kui.z

On Mon, May 30, 2016 at 7:40 AM, Andy Shevchenko
<andriy.shevchenko@linux.intel.com> wrote:
> On Mon, 2016-05-30 at 12:52 +0200, Bjørn Mork wrote:
>> How about the untested attached patch?
>>
>
> Facepalm.jpg!
>
> Good catch!
>
> The question is how it passed in our internal tree without being
> notified (it even included a lot of ACPI code updated)!?
>
> My explanation since I have no access to archive of internal mailing
> list is that I submitted 'cleaned up' version which brought that and
> wasn't tested.
>
> Anyway I just wrote a test module and is about to submit it with your
> fix in a series.
>
> Thanks!
>
>>
>> Bjørn
>>
>
> --
> Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> Intel Finland Oy

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

end of thread, other threads:[~2016-05-31  4:24 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <CAKx2Y1n0e+ggDcaqr8KD=3XLngzxQDRFDKdj=JPrqK0aiMxCpA@mail.gmail.com>
2016-05-29 18:37 ` Fwd: WMI driver no longer load after switching to generic UUID library Kui Zhang
2016-05-29 20:22 ` Linus Torvalds
2016-05-30  7:58   ` Andy Shevchenko
2016-05-30 10:52     ` Bjørn Mork
2016-05-30 14:40       ` Andy Shevchenko
2016-05-31  4:18         ` Kui Zhang

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).