]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
intel_scu_ipcutil: underflow in scu_reg_access()
authorDan Carpenter <dan.carpenter@oracle.com>
Tue, 26 Jan 2016 09:24:25 +0000 (12:24 +0300)
committerDarren Hart <dvhart@linux.intel.com>
Sat, 30 Jan 2016 17:40:35 +0000 (09:40 -0800)
"count" is controlled by the user and it can be negative.  Let's prevent
that by making it unsigned.  You have to have CAP_SYS_RAWIO to call this
function so the bug is not as serious as it could be.

Fixes: 5369c02d951a ('intel_scu_ipc: Utility driver for intel scu ipc')
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Cc: stable@vger.kernel.org
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
drivers/platform/x86/intel_scu_ipcutil.c

index 02bc5a6343c3fbeeb34b00ef282ba5f31ceff96a..aa454241489c9f541864f34828e19318514d3560 100644 (file)
@@ -49,7 +49,7 @@ struct scu_ipc_data {
 
 static int scu_reg_access(u32 cmd, struct scu_ipc_data  *data)
 {
-       int count = data->count;
+       unsigned int count = data->count;
 
        if (count == 0 || count == 3 || count > 4)
                return -EINVAL;