hp_sdc: use probe_kernel_read()
authorAl Viro <viro@zeniv.linux.org.uk>
Sat, 27 May 2017 03:47:39 +0000 (23:47 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Sat, 27 May 2017 19:41:21 +0000 (15:41 -0400)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
drivers/input/serio/hp_sdc.c

index 559c99ca65920fb76ad345a65fac806c0cb84623..1bfdae4b0d99671f9c3f42ad470ddb08b29843d9 100644 (file)
@@ -1001,7 +1001,6 @@ static int __init hp_sdc_register(void)
        uint8_t tq_init_seq[5];
        struct semaphore tq_init_sem;
 #if defined(__mc68000__)
-       mm_segment_t fs;
        unsigned char i;
 #endif
 
@@ -1026,11 +1025,8 @@ static int __init hp_sdc_register(void)
        hp_sdc.base_io   = (unsigned long) 0xf0428000;
        hp_sdc.data_io   = (unsigned long) hp_sdc.base_io + 1;
        hp_sdc.status_io = (unsigned long) hp_sdc.base_io + 3;
-       fs = get_fs();
-       set_fs(KERNEL_DS);
-       if (!get_user(i, (unsigned char *)hp_sdc.data_io))
+       if (!probe_kernel_read(&i, (unsigned char *)hp_sdc.data_io, 1))
                hp_sdc.dev = (void *)1;
-       set_fs(fs);
        hp_sdc.dev_err   = hp_sdc_init();
 #endif
        if (hp_sdc.dev == NULL) {