@@ -657,17 +657,18 @@ static int dell_wmi_check_descriptor_buffer(struct wmi_device *wdev)
dev_err(&wdev->dev,
"Dell descriptor buffer has invalid length (%d)\n",
obj->buffer.length);
- if (obj->buffer.length < 16) {
- ret = -EINVAL;
- goto out;
- }
+ ret = -EINVAL;
+ goto out;
}
buffer = (u32 *)obj->buffer.pointer;
- if (buffer[0] != 0x4C4C4544 && buffer[1] != 0x494D5720)
- dev_warn(&wdev->dev, "Dell descriptor buffer has invalid signature (%*ph)\n",
+ if (buffer[0] != 0x4C4C4544 && buffer[1] != 0x494D5720) {
+ dev_err(&wdev->dev, "Dell descriptor buffer has invalid signature (%*ph)\n",
8, buffer);
+ ret = -EINVAL;
+ goto out;
+ }
if (buffer[2] != 0 && buffer[2] != 1)
dev_warn(&wdev->dev, "Dell descriptor buffer has unknown version (%d)\n",