瀏覽代碼

Merge "soc: Fix out of bounds access in register show function"

qctecmdr 5 年之前
父節點
當前提交
d7c16ff4f4
共有 1 個文件被更改,包括 5 次插入0 次删除
  1. 5 0
      soc/swr-mstr-ctrl.c

+ 5 - 0
soc/swr-mstr-ctrl.c

@@ -144,6 +144,11 @@ static ssize_t swrm_reg_show(char __user *ubuf, size_t count,
 		i <= SWR_MSTR_MAX_REG_ADDR; i += 4) {
 		reg_val = dbgswrm->read(dbgswrm->handle, i);
 		len = snprintf(tmp_buf, 25, "0x%.3x: 0x%.2x\n", i, reg_val);
+		if (len < 0) {
+			pr_err("%s: fail to fill the buffer\n", __func__);
+			total = -EFAULT;
+			goto copy_err;
+		}
 		if ((total + len) >= count - 1)
 			break;
 		if (copy_to_user((ubuf + total), tmp_buf, len)) {