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

Commit 041058a1 authored by Heiko Carstens's avatar Heiko Carstens Committed by Martin Schwidefsky
Browse files

s390/cmm: make copy_from_user() invocation provably correct



Get rid of these two warnings:

In function 'copy_from_user',
    inlined from 'cmm_timeout_handler' at arch/s390/mm/cmm.c:310:
      uaccess.h:303: warning: call to 'copy_from_user_overflow' declared
      with attribute warning: copy_from_user() buffer size is not provably
      correct
In function 'copy_from_user',
    inlined from 'cmm_pages_handler' at arch/s390/mm/cmm.c:270:
      uaccess.h:303: warning: call to 'copy_from_user_overflow' declared
      with attribute warning: copy_from_user() buffer size is not provably
      correct

Change the "len" type to unsigned int, so we can make sure that there is no
buffer overflow. This also generates less code.

Signed-off-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
parent 160d378e
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -257,8 +257,8 @@ static int cmm_pages_handler(ctl_table *ctl, int write, void __user *buffer,
			     size_t *lenp, loff_t *ppos)
{
	char buf[16], *p;
	unsigned int len;
	long nr;
	int len;

	if (!*lenp || (*ppos && !write)) {
		*lenp = 0;
@@ -298,7 +298,7 @@ static int cmm_timeout_handler(ctl_table *ctl, int write, void __user *buffer,
{
	char buf[64], *p;
	long nr, seconds;
	int len;
	unsigned int len;

	if (!*lenp || (*ppos && !write)) {
		*lenp = 0;