gfx: pvr: fw_version should compare 4 integers instead of 4 bytes
authorOlev Kartau <olev.kartau@intel.com>
Fri, 16 Mar 2012 07:05:20 +0000 (09:05 +0200)
committerMarkus Lehtonen <markus.lehtonen@linux.intel.com>
Tue, 3 Jul 2012 09:30:45 +0000 (12:30 +0300)
sizeof() was misused in fw_version_supported;
If array is given as argument, the size of it is size of pointer,
so comparison used only first 4 bytes instead of 4 integers,
which made all entries to match.

Signed-off-by: Olev Kartau <olev.kartau@intel.com>
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
drivers/staging/mrst/pvr/services4/srvkm/devices/sgx/sgxinit.c

index dccb448..2d8e7a9 100644 (file)
@@ -1987,7 +1987,7 @@ static int fw_version_supported(const int fw_ver[4])
        int i;
 
        for (i = 0; i < ARRAY_SIZE(sup_versions); i++)
-               if (!memcmp(fw_ver, sup_versions[i], sizeof(fw_ver)))
+               if (!memcmp(fw_ver, sup_versions[i], 4 * sizeof(int)))
                        return 1;
 
        return 0;