Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5f981341 authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "msm: adsprpc: Fix error code for invalid ioctl"

parents a6ec47d8 8a580a42
Loading
Loading
Loading
Loading
+10 −9
Original line number Diff line number Diff line
@@ -63,6 +63,7 @@

#define FASTRPC_DMAHANDLE_NOMAP (16)

#define FASTRPC_ENOSUCH 39
#define DEBUGFS_SIZE 3072
#define UL_SIZE 25
#define PID_SIZE 10
@@ -2207,12 +2208,12 @@ static int get_args(uint32_t kernel, struct smq_invoke_ctx *ctx)
				goto bail;
			}
		}
		if (len > DEBUG_PRINT_SIZE_LIMIT)
			ADSPRPC_DEBUG(
			"copied non ion buffer sc 0x%x pv 0x%llx, mend 0x%llx mstart 0x%llx, len %zu size %zu\n",
				"copied non ion buffer sc 0x%x pv 0x%llx, mend 0x%llx mstart 0x%llx, len %zu\n",
				sc, rpra[i].buf.pv,
				ctx->overps[oix]->mend,
			ctx->overps[oix]->mstart,
			rpra[i].buf.len, map->size);
				ctx->overps[oix]->mstart, len);
		args = args + mlen;
		rlen -= mlen;
	}
@@ -2722,7 +2723,7 @@ static int fastrpc_internal_invoke(struct fastrpc_file *fl, uint32_t mode,
		if (err)
			goto bail;
		if (fl->sctx->smmu.faults)
			err = -EDESTADDRREQ;
			err = -FASTRPC_ENOSUCH;
		if (err)
			goto bail;
		if (ctx) {
@@ -5482,7 +5483,7 @@ static inline int fastrpc_mmap_device_ioctl(struct fastrpc_file *fl,
			goto bail;
		break;
	default:
		err = -EINVAL;
		err = -ENOTTY;
		pr_info("bad ioctl: %d\n", ioctl_num);
		break;
	}
@@ -5614,7 +5615,7 @@ static long fastrpc_device_ioctl(struct file *file, unsigned int ioctl_num,
		err = fastrpc_mmap_device_ioctl(fl, ioctl_num, &p, param);
		break;
	default:
		err = -EINVAL;
		err = -ENOTTY;
		pr_info("bad ioctl: %d\n", ioctl_num);
		break;
	}
+2 −2
Original line number Diff line number Diff line
@@ -388,7 +388,7 @@ static int compat_get_fastrpc_ioctl_invoke2(
		break;
	}
	default:
		err = -EBADRQC;
		err = -ENOTTY;
		break;
	}
	*inva = inv2_user;
@@ -987,6 +987,6 @@ long compat_fastrpc_device_ioctl(struct file *filp, unsigned int cmd,
	case COMPAT_FASTRPC_IOCTL_MUNMAP:
		return compat_fastrpc_mmap_device_ioctl(filp, cmd, arg);
	default:
		return -ENOIOCTLCMD;
		return -ENOTTY;
	}
}
+2 −0
Original line number Diff line number Diff line
@@ -146,6 +146,8 @@ do {\
	pr_debug("Debug: adsprpc (%d): %s: %s: " fmt, __LINE__,\
	current->comm, __func__, ##args)

#define DEBUG_PRINT_SIZE_LIMIT (512*1024)

#define remote_arg64_t    union remote_arg64

struct remote_buf64 {