projects
/
deliverable
/
linux.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge tag 'mmc-v4.5-rc2' of git://git.linaro.org/people/ulf.hansson/mmc
[deliverable/linux.git]
/
lib
/
strnlen_user.c
diff --git
a/lib/strnlen_user.c
b/lib/strnlen_user.c
index 3a5f2b366d84ed209a012cf62491ca30f6a8bca8..2625943625d7fb229e6e2cf104e5d84c95246ffa 100644
(file)
--- a/
lib/strnlen_user.c
+++ b/
lib/strnlen_user.c
@@
-45,7
+45,7
@@
static inline long do_strnlen_user(const char __user *src, unsigned long count,
src -= align;
max += align;
src -= align;
max += align;
- if (unlikely(
_
_get_user(c,(unsigned long __user *)src)))
+ if (unlikely(
unsafe
_get_user(c,(unsigned long __user *)src)))
return 0;
c |= aligned_byte_mask(align);
return 0;
c |= aligned_byte_mask(align);
@@
-61,7
+61,7
@@
static inline long do_strnlen_user(const char __user *src, unsigned long count,
if (unlikely(max <= sizeof(unsigned long)))
break;
max -= sizeof(unsigned long);
if (unlikely(max <= sizeof(unsigned long)))
break;
max -= sizeof(unsigned long);
- if (unlikely(
_
_get_user(c,(unsigned long __user *)(src+res))))
+ if (unlikely(
unsafe
_get_user(c,(unsigned long __user *)(src+res))))
return 0;
}
res -= align;
return 0;
}
res -= align;
@@
-112,7
+112,12
@@
long strnlen_user(const char __user *str, long count)
src_addr = (unsigned long)str;
if (likely(src_addr < max_addr)) {
unsigned long max = max_addr - src_addr;
src_addr = (unsigned long)str;
if (likely(src_addr < max_addr)) {
unsigned long max = max_addr - src_addr;
- return do_strnlen_user(str, count, max);
+ long retval;
+
+ user_access_begin();
+ retval = do_strnlen_user(str, count, max);
+ user_access_end();
+ return retval;
}
return 0;
}
}
return 0;
}
@@
-141,7
+146,12
@@
long strlen_user(const char __user *str)
src_addr = (unsigned long)str;
if (likely(src_addr < max_addr)) {
unsigned long max = max_addr - src_addr;
src_addr = (unsigned long)str;
if (likely(src_addr < max_addr)) {
unsigned long max = max_addr - src_addr;
- return do_strnlen_user(str, ~0ul, max);
+ long retval;
+
+ user_access_begin();
+ retval = do_strnlen_user(str, ~0ul, max);
+ user_access_end();
+ return retval;
}
return 0;
}
}
return 0;
}
This page took
0.027235 seconds
and
5
git commands to generate.