Re: XHCI Bug discovered in 3.6-RC6 (solution included)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



this following function is missing a important NULL check. if DMI is not available or not enabled in the kernel config (which is common in my case, since its a ARM Platform with XHCI support) the xhci-hcd driver will crash due nullpointer access since dmi_get_system_info returns always NULL if DMI support is not enabled.

static bool compliance_mode_recovery_timer_quirk_check(void)
{
    const char *dmi_product_name, *dmi_sys_vendor;

    dmi_product_name = dmi_get_system_info(DMI_PRODUCT_NAME);
    dmi_sys_vendor = dmi_get_system_info(DMI_SYS_VENDOR);

    if (!(strstr(dmi_sys_vendor, "Hewlett-Packard")))
        return false;

    if (strstr(dmi_product_name, "Z420") ||
            strstr(dmi_product_name, "Z620") ||
            strstr(dmi_product_name, "Z820"))
        return true;

    return false;
}

proposed patch: simply add

 if (!dmi_sys_vendor || !dmi_product_name)
        return false;

even better. disable the whole quirk handling for this case if CONFIG_DMI is not set



--
Mit freundlichen Grüssen / Regards

Sebastian Gottschall / CTO

NewMedia-NET GmbH - DD-WRT
Firmensitz:  Berliner Ring 101, 64625 Bensheim
Registergericht: Amtsgericht Darmstadt, HRB 25473
Geschäftsführer: Peter Steinhäuser, Christian Scheele
http://www.dd-wrt.com
email: s.gottschall@xxxxxxxxxx
Tel.: +496251-582650 / Fax: +496251-5826565

--
Mit freundlichen Grüssen / Regards

Sebastian Gottschall / CTO

NewMedia-NET GmbH - DD-WRT
Firmensitz:  Berliner Ring 101, 64625 Bensheim
Registergericht: Amtsgericht Darmstadt, HRB 25473
Geschäftsführer: Peter Steinhäuser, Christian Scheele
http://www.dd-wrt.com
email:s.gottschall@xxxxxxxxxx
Tel.: +496251-582650 / Fax: +496251-5826565

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux