diff options
author | Michael Kelley <mikelley@microsoft.com> | 2022-06-07 20:49:37 -0700 |
---|---|---|
committer | Wei Liu <wei.liu@kernel.org> | 2022-06-08 12:28:13 +0000 |
commit | f5f93d7f5a5cbfef02609dead21e7056e83f4fab (patch) | |
tree | 627c0f6dc8a74f17ae0c043a29bbc4f4e5909794 /drivers/hid | |
parent | 245b993d8f6c4e25f19191edfbd8080b645e12b1 (diff) | |
download | linux-stable-f5f93d7f5a5cbfef02609dead21e7056e83f4fab.tar.gz linux-stable-f5f93d7f5a5cbfef02609dead21e7056e83f4fab.tar.bz2 linux-stable-f5f93d7f5a5cbfef02609dead21e7056e83f4fab.zip |
HID: hyperv: Correctly access fields declared as __le16
Add the use of le16_to_cpu() for fields declared as __le16. Because
Hyper-V only runs in Little Endian mode, there's no actual bug.
The change is made in the interest of general correctness in
addition to making sparse happy. No functional change.
Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Michael Kelley <mikelley@microsoft.com>
Link: https://lore.kernel.org/r/1654660177-115463-1-git-send-email-mikelley@microsoft.com
Signed-off-by: Wei Liu <wei.liu@kernel.org>
Diffstat (limited to 'drivers/hid')
-rw-r--r-- | drivers/hid/hid-hyperv.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/hid/hid-hyperv.c b/drivers/hid/hid-hyperv.c index 978ee2aab2d4..e0bc73124196 100644 --- a/drivers/hid/hid-hyperv.c +++ b/drivers/hid/hid-hyperv.c @@ -199,7 +199,8 @@ static void mousevsc_on_receive_device_info(struct mousevsc_dev *input_device, if (!input_device->hid_desc) goto cleanup; - input_device->report_desc_size = desc->desc[0].wDescriptorLength; + input_device->report_desc_size = le16_to_cpu( + desc->desc[0].wDescriptorLength); if (input_device->report_desc_size == 0) { input_device->dev_info_status = -EINVAL; goto cleanup; @@ -217,7 +218,7 @@ static void mousevsc_on_receive_device_info(struct mousevsc_dev *input_device, memcpy(input_device->report_desc, ((unsigned char *)desc) + desc->bLength, - desc->desc[0].wDescriptorLength); + le16_to_cpu(desc->desc[0].wDescriptorLength)); /* Send the ack */ memset(&ack, 0, sizeof(struct mousevsc_prt_msg)); |