We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent f667587 commit 2c4f1fcCopy full SHA for 2c4f1fc
kernel/trace/trace_kprobe.c
@@ -861,22 +861,14 @@ static const struct file_operations kprobe_profile_ops = {
861
static nokprobe_inline int
862
fetch_store_strlen(unsigned long addr)
863
{
864
- mm_segment_t old_fs;
865
int ret, len = 0;
866
u8 c;
867
868
- old_fs = get_fs();
869
- set_fs(KERNEL_DS);
870
- pagefault_disable();
871
-
872
do {
873
- ret = __copy_from_user_inatomic(&c, (u8 *)addr + len, 1);
+ ret = probe_mem_read(&c, (u8 *)addr + len, 1);
874
len++;
875
} while (c && ret == 0 && len < MAX_STRING_SIZE);
876
877
- pagefault_enable();
878
- set_fs(old_fs);
879
880
return (ret < 0) ? ret : len;
881
}
882
0 commit comments