import PULS_20180308
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / drivers / misc / mediatek / connectivity / conn_soc / common / linux / pri / wmt_dev.c
index 511cf6dc7cdf63bcbd624ad36d529c367fe1a4c6..9f34bee93e50e2fe62fce0d4b10eb409271c15c1 100644 (file)
@@ -2517,13 +2517,20 @@ WMT_unlocked_ioctl (
                
         case WMT_IOCTL_SET_PATCH_NUM: {
                        pAtchNum = arg;
-                       WMT_INFO_FUNC(" get patch num from launcher = %d\n",pAtchNum);
-                       wmt_lib_set_patch_num(pAtchNum);
-                       pPatchInfo = kzalloc(sizeof(WMT_PATCH_INFO)*pAtchNum,GFP_ATOMIC);
+                       if (pAtchNum == 0 || pAtchNum > MAX_PATCH_NUM) {
+                               WMT_ERR_FUNC("patch num(%d) == 0 or > %d!\n", pAtchNum, MAX_PATCH_NUM);
+                               iRet = -1;
+                               break;
+                       }
+
+                       pPatchInfo = kzalloc(sizeof(WMT_PATCH_INFO) * pAtchNum, GFP_ATOMIC);
                        if (!pPatchInfo) {
                                WMT_ERR_FUNC("allocate memory fail!\n");
+                               iRet = -EFAULT;
                                break;
                        }
+                       WMT_INFO_FUNC(" get patch num from launcher = %d\n",pAtchNum);
+                       wmt_lib_set_patch_num(pAtchNum);
                }
                break;