char fan_data[4] = { fan, 0, 0, 0 };
 
        int ret = hp_wmi_perform_query(HPWMI_FAN_SPEED_GET_QUERY, HPWMI_GM,
-                                      &fan_data, sizeof(fan_data),
+                                      &fan_data, sizeof(char),
                                       sizeof(fan_data));
 
        if (ret != 0)
                return -EINVAL;
 
        ret = hp_wmi_perform_query(HPWMI_SET_PERFORMANCE_MODE, HPWMI_GM,
-                                  &buffer, sizeof(buffer), sizeof(buffer));
+                                  &buffer, sizeof(buffer), 0);
 
        if (ret)
                return ret < 0 ? ret : -EINVAL;
        int ret;
 
        ret = hp_wmi_perform_query(HPWMI_FAN_SPEED_MAX_SET_QUERY, HPWMI_GM,
-                                  &enabled, sizeof(enabled), sizeof(enabled));
+                                  &enabled, sizeof(enabled), 0);
 
        if (ret)
                return ret < 0 ? ret : -EINVAL;
        int val = 0, ret;
 
        ret = hp_wmi_perform_query(HPWMI_FAN_SPEED_MAX_GET_QUERY, HPWMI_GM,
-                                  &val, sizeof(val), sizeof(val));
+                                  &val, 0, sizeof(val));
 
        if (ret)
                return ret < 0 ? ret : -EINVAL;
 {
        int state = 0;
        int ret = hp_wmi_perform_query(HPWMI_FEATURE_QUERY, HPWMI_READ, &state,
-                                      sizeof(state), sizeof(state));
+                                      0, sizeof(state));
        if (!ret)
                return 1;
 
 {
        u8 state[128];
        int ret = hp_wmi_perform_query(HPWMI_FEATURE2_QUERY, HPWMI_READ, &state,
-                                      sizeof(state), sizeof(state));
+                                      0, sizeof(state));
        if (!ret)
                return 1;
 
        int err, i;
 
        err = hp_wmi_perform_query(HPWMI_WIRELESS2_QUERY, HPWMI_READ, &state,
-                                  sizeof(state), sizeof(state));
+                                  0, sizeof(state));
        if (err)
                return err;
 
                return ret;
 
        ret = hp_wmi_perform_query(HPWMI_ALS_QUERY, HPWMI_WRITE, &tmp,
-                                      sizeof(tmp), sizeof(tmp));
+                                      sizeof(tmp), 0);
        if (ret)
                return ret < 0 ? ret : -EINVAL;
 
        if (clear == false)
                return -EINVAL;
 
-       /* Clear the POST error code. It is kept until until cleared. */
+       /* Clear the POST error code. It is kept until cleared. */
        ret = hp_wmi_perform_query(HPWMI_POSTCODEERROR_QUERY, HPWMI_WRITE, &tmp,
-                                      sizeof(tmp), sizeof(tmp));
+                                      sizeof(tmp), 0);
        if (ret)
                return ret < 0 ? ret : -EINVAL;
 
        int err, i;
 
        err = hp_wmi_perform_query(HPWMI_WIRELESS2_QUERY, HPWMI_READ, &state,
-                                  sizeof(state), sizeof(state));
+                                  0, sizeof(state));
        if (err)
                return err < 0 ? err : -EINVAL;