File tree Expand file tree Collapse file tree
tools/testing/selftests/lkdtm Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -312,16 +312,6 @@ void lkdtm_CORRUPT_LIST_DEL(void)
312312 pr_err ("list_del() corruption not detected!\n" );
313313}
314314
315- /* Test if unbalanced set_fs(KERNEL_DS)/set_fs(USER_DS) check exists. */
316- void lkdtm_CORRUPT_USER_DS (void )
317- {
318- pr_info ("setting bad task size limit\n" );
319- set_fs (KERNEL_DS );
320-
321- /* Make sure we do not keep running with a KERNEL_DS! */
322- force_sig (SIGKILL );
323- }
324-
325315/* Test that VMAP_STACK is actually allocating with a leading guard page */
326316void lkdtm_STACK_GUARD_PAGE_LEADING (void )
327317{
Original file line number Diff line number Diff line change @@ -112,7 +112,6 @@ static const struct crashtype crashtypes[] = {
112112 CRASHTYPE (CORRUPT_STACK_STRONG ),
113113 CRASHTYPE (CORRUPT_LIST_ADD ),
114114 CRASHTYPE (CORRUPT_LIST_DEL ),
115- CRASHTYPE (CORRUPT_USER_DS ),
116115 CRASHTYPE (STACK_GUARD_PAGE_LEADING ),
117116 CRASHTYPE (STACK_GUARD_PAGE_TRAILING ),
118117 CRASHTYPE (UNSET_SMEP ),
@@ -172,7 +171,6 @@ static const struct crashtype crashtypes[] = {
172171 CRASHTYPE (USERCOPY_STACK_FRAME_FROM ),
173172 CRASHTYPE (USERCOPY_STACK_BEYOND ),
174173 CRASHTYPE (USERCOPY_KERNEL ),
175- CRASHTYPE (USERCOPY_KERNEL_DS ),
176174 CRASHTYPE (STACKLEAK_ERASING ),
177175 CRASHTYPE (CFI_FORWARD_PROTO ),
178176#ifdef CONFIG_X86_32
Original file line number Diff line number Diff line change @@ -27,7 +27,6 @@ void lkdtm_OVERFLOW_UNSIGNED(void);
2727void lkdtm_ARRAY_BOUNDS (void );
2828void lkdtm_CORRUPT_LIST_ADD (void );
2929void lkdtm_CORRUPT_LIST_DEL (void );
30- void lkdtm_CORRUPT_USER_DS (void );
3130void lkdtm_STACK_GUARD_PAGE_LEADING (void );
3231void lkdtm_STACK_GUARD_PAGE_TRAILING (void );
3332void lkdtm_UNSET_SMEP (void );
@@ -96,7 +95,6 @@ void lkdtm_USERCOPY_STACK_FRAME_TO(void);
9695void lkdtm_USERCOPY_STACK_FRAME_FROM (void );
9796void lkdtm_USERCOPY_STACK_BEYOND (void );
9897void lkdtm_USERCOPY_KERNEL (void );
99- void lkdtm_USERCOPY_KERNEL_DS (void );
10098
10199/* lkdtm_stackleak.c */
102100void lkdtm_STACKLEAK_ERASING (void );
Original file line number Diff line number Diff line change @@ -325,21 +325,6 @@ void lkdtm_USERCOPY_KERNEL(void)
325325 vm_munmap (user_addr , PAGE_SIZE );
326326}
327327
328- void lkdtm_USERCOPY_KERNEL_DS (void )
329- {
330- char __user * user_ptr =
331- (char __user * )(0xFUL << (sizeof (unsigned long ) * 8 - 4 ));
332- mm_segment_t old_fs = get_fs ();
333- char buf [10 ] = {0 };
334-
335- pr_info ("attempting copy_to_user() to noncanonical address: %px\n" ,
336- user_ptr );
337- set_fs (KERNEL_DS );
338- if (copy_to_user (user_ptr , buf , sizeof (buf )) == 0 )
339- pr_err ("copy_to_user() to noncanonical address succeeded!?\n" );
340- set_fs (old_fs );
341- }
342-
343328void __init lkdtm_usercopy_init (void )
344329{
345330 /* Prepare cache that lacks SLAB_USERCOPY flag. */
Original file line number Diff line number Diff line change @@ -9,7 +9,6 @@ EXCEPTION
99#CORRUPT_STACK_STRONG Crashes entire system on success
1010CORRUPT_LIST_ADD list_add corruption
1111CORRUPT_LIST_DEL list_del corruption
12- CORRUPT_USER_DS Invalid address limit on user-mode return
1312STACK_GUARD_PAGE_LEADING
1413STACK_GUARD_PAGE_TRAILING
1514UNSET_SMEP CR4 bits went missing
@@ -67,6 +66,5 @@ USERCOPY_STACK_FRAME_TO
6766USERCOPY_STACK_FRAME_FROM
6867USERCOPY_STACK_BEYOND
6968USERCOPY_KERNEL
70- USERCOPY_KERNEL_DS
7169STACKLEAK_ERASING OK: the rest of the thread stack is properly erased
7270CFI_FORWARD_PROTO
You can’t perform that action at this time.
0 commit comments