xref: /aosp_15_r20/external/linux-kselftest/Android.bp (revision 053f45be4e351dfd5e965df293cd45b779f579ee)
1//
2// Copyright (C) 2016 The Android Open Source Project
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8//      http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15//
16
17package {
18    default_team: "trendy_team_android_kernel",
19    default_applicable_licenses: ["external_linux-kselftest_license"],
20}
21
22// Added automatically by a large-scale-change that took the approach of
23// 'apply every license found to every target'. While this makes sure we respect
24// every license restriction, it may not be entirely correct.
25//
26// e.g. GPL in an MIT project might only apply to the contrib/ directory.
27//
28// Please consider splitting the single license below into multiple licenses,
29// taking care not to lose any license_kind information, and overriding the
30// default license using the 'licenses: [...]' property on targets as needed.
31//
32// For unused files, consider creating a 'fileGroup' with "//visibility:private"
33// to attach the license to, and including a comment whether the files may be
34// used in the current project.
35//
36// large-scale-change included anything that looked like it might be a license
37// text as a license_text. e.g. LICENSE, NOTICE, COPYING etc.
38//
39// Please consider removing redundant or irrelevant files from 'license_text:'.
40// See: http://go/android-license-faq
41license {
42    name: "external_linux-kselftest_license",
43    visibility: [":__subpackages__"],
44    license_kinds: [
45        "SPDX-license-identifier-Apache-2.0",
46        "SPDX-license-identifier-BSD-2-Clause",
47        "SPDX-license-identifier-BSD-3-Clause",
48        "SPDX-license-identifier-CC0-1.0",
49        "SPDX-license-identifier-GPL",
50        "SPDX-license-identifier-GPL-2.0",
51        "SPDX-license-identifier-GPL-3.0",
52        "SPDX-license-identifier-LGPL",
53        "SPDX-license-identifier-LGPL-2.1",
54        "SPDX-license-identifier-MIT",
55        "SPDX-license-identifier-Unlicense",
56    ],
57    license_text: [
58        "COPYING",
59        "NOTICE",
60    ],
61}
62
63sh_test {
64    name: "vts_linux_kselftest_arm_64",
65    src: "android/empty.sh",
66    test_suites: [
67        "general-tests",
68        "vts"
69    ],
70    data: [
71        ":kselftest_binderfs_tests_binderfs_test",
72        ":kselftest_capabilities_test_execve",
73        ":kselftest_capabilities_validate_cap",
74        ":kselftest_futex_tests_futex_requeue_pi_mismatched_ops",
75        ":kselftest_futex_tests_futex_requeue_pi_signal_restart",
76        ":kselftest_futex_tests_futex_requeue_pi",
77        ":kselftest_futex_tests_futex_requeue",
78        ":kselftest_futex_tests_futex_wait_private_mapped_file",
79        ":kselftest_futex_tests_futex_wait_timeout",
80        ":kselftest_futex_tests_futex_wait_uninitialized_heap",
81        ":kselftest_futex_tests_futex_wait_wouldblock",
82        ":kselftest_futex_tests_futex_wait",
83        ":kselftest_futex_tests_futex_waitv",
84        ":kselftest_futex_functional_run.sh",
85        ":kselftest_kcmp_tests_kcmp_test",
86        ":kselftest_net_tests_socket",
87        ":kselftest_net_tests_psock_fanout",
88        ":kselftest_net_tests_psock_tpacket",
89        ":kselftest_net_tests_reuseport_dualstack",
90        ":kselftest_net_tests_reuseaddr_conflict",
91        ":kselftest_net_test_bpf",
92        ":kselftest_ptrace_tests_peeksiginfo",
93        ":kselftest_rtc_tests_rtctest",
94        ":kselftest_seccomp_tests_seccomp_bpf",
95        ":kselftest_size_test_get_size",
96        ":kselftest_splice_test_default_file_splice_read",
97        ":kselftest_splice_default_file_splice_read.sh",
98        ":kselftest_timer_tests_inconsistency-check",
99        ":kselftest_timer_tests_nanosleep",
100        ":kselftest_timer_tests_nsleep-lat",
101        ":kselftest_timer_tests_posix_timers",
102        ":kselftest_timer_tests_raw_skew",
103        ":kselftest_timer_tests_set-tai",
104        ":kselftest_timer_tests_set-timer-lat",
105        ":kselftest_timer_tests_threadtest",
106        ":kselftest_timer_tests_valid-adjtimex",
107        ":kselftest_vm_tests_compaction_test",
108        ":kselftest_vm_tests_hugepage-mmap",
109        ":kselftest_vm_tests_hugepage-shm",
110        ":kselftest_vm_tests_map_hugetlb",
111        ":kselftest_vm_tests_mlock-random-test",
112        ":kselftest_vm_tests_mlock2-tests",
113        ":kselftest_vm_tests_on-fault-limit",
114        ":kselftest_vm_tests_mremap_dontunmap",
115        ":kselftest_vm_tests_mremap_test",
116        ":kselftest_vm_tests_userfaultfd",
117        ":kselftest_vm_tests_thuge-gen",
118        ":kselftest_vm_tests_transhuge-stress",
119        ":kselftest_vm_run_vmtests",
120        ":kselftest_breakpoints_breakpoint_test",
121        ":kselftest_kvm_arm64_tests_pvm_wipe_mem",
122        ":kselftest_vdso_test_abi",
123        ":kselftest_vdso_test_clock_getres",
124        ":kselftest_vdso_test_getcpu",
125        ":kselftest_vdso_test_gettimeofday",
126    ],
127    enabled: false,
128    arch: {
129        arm64: {
130            enabled: true,
131        },
132    },
133    test_config_template: "android/vts_linux_kselftest_arm_64.xml",
134}
135
136sh_test {
137    name: "vts_linux_kselftest_arm_32",
138    src: "android/empty.sh",
139    test_suites: [
140        "general-tests",
141        "vts"
142    ],
143    data: [
144        ":kselftest_binderfs_tests_binderfs_test",
145        ":kselftest_capabilities_test_execve",
146        ":kselftest_capabilities_validate_cap",
147        ":kselftest_futex_tests_futex_requeue_pi_mismatched_ops",
148        ":kselftest_futex_tests_futex_requeue_pi_signal_restart",
149        ":kselftest_futex_tests_futex_requeue_pi",
150        ":kselftest_futex_tests_futex_requeue",
151        ":kselftest_futex_tests_futex_wait_private_mapped_file",
152        ":kselftest_futex_tests_futex_wait_timeout",
153        ":kselftest_futex_tests_futex_wait_uninitialized_heap",
154        ":kselftest_futex_tests_futex_wait_wouldblock",
155        ":kselftest_futex_tests_futex_wait",
156        ":kselftest_futex_tests_futex_waitv",
157        ":kselftest_futex_functional_run.sh",
158        ":kselftest_kcmp_tests_kcmp_test",
159        ":kselftest_net_tests_socket",
160        ":kselftest_net_tests_psock_fanout",
161        ":kselftest_net_tests_psock_tpacket",
162        ":kselftest_net_tests_reuseport_dualstack",
163        ":kselftest_net_tests_reuseaddr_conflict",
164        ":kselftest_net_test_bpf",
165        ":kselftest_ptrace_tests_peeksiginfo",
166        ":kselftest_rtc_tests_rtctest",
167        ":kselftest_seccomp_tests_seccomp_bpf",
168        ":kselftest_size_test_get_size",
169        ":kselftest_splice_test_default_file_splice_read",
170        ":kselftest_splice_default_file_splice_read.sh",
171        ":kselftest_timer_tests_inconsistency-check",
172        ":kselftest_timer_tests_nanosleep",
173        ":kselftest_timer_tests_nsleep-lat",
174        ":kselftest_timer_tests_posix_timers",
175        ":kselftest_timer_tests_raw_skew",
176        ":kselftest_timer_tests_set-tai",
177        ":kselftest_timer_tests_set-timer-lat",
178        ":kselftest_timer_tests_threadtest",
179        ":kselftest_timer_tests_valid-adjtimex",
180        ":kselftest_vm_tests_compaction_test",
181        ":kselftest_vm_tests_hugepage-mmap",
182        ":kselftest_vm_tests_hugepage-shm",
183        ":kselftest_vm_tests_map_hugetlb",
184        ":kselftest_vm_tests_mlock-random-test",
185        ":kselftest_vm_tests_mlock2-tests",
186        ":kselftest_vm_tests_on-fault-limit",
187        ":kselftest_vm_tests_mremap_dontunmap",
188        ":kselftest_vm_tests_mremap_test",
189        ":kselftest_vm_tests_userfaultfd",
190        ":kselftest_vm_tests_thuge-gen",
191        ":kselftest_vm_tests_transhuge-stress",
192        ":kselftest_vm_run_vmtests",
193    ],
194    compile_multilib: "32",
195    enabled: false,
196    arch: {
197        arm64: {
198            enabled: true,
199        },
200        arm: {
201            enabled: true,
202        },
203    },
204    test_config_template: "android/vts_linux_kselftest_arm_32.xml",
205}
206
207sh_test {
208    name: "vts_linux_kselftest_x86_64",
209    src: "android/empty.sh",
210    test_suites: [
211        "general-tests",
212        "vts"
213    ],
214    data: [
215        ":kselftest_binderfs_tests_binderfs_test",
216        ":kselftest_capabilities_test_execve",
217        ":kselftest_capabilities_validate_cap",
218        ":kselftest_futex_tests_futex_requeue_pi_mismatched_ops",
219        ":kselftest_futex_tests_futex_requeue_pi_signal_restart",
220        ":kselftest_futex_tests_futex_requeue_pi",
221        ":kselftest_futex_tests_futex_requeue",
222        ":kselftest_futex_tests_futex_wait_private_mapped_file",
223        ":kselftest_futex_tests_futex_wait_timeout",
224        ":kselftest_futex_tests_futex_wait_uninitialized_heap",
225        ":kselftest_futex_tests_futex_wait_wouldblock",
226        ":kselftest_futex_tests_futex_wait",
227        ":kselftest_futex_tests_futex_waitv",
228        ":kselftest_futex_functional_run.sh",
229        ":kselftest_kcmp_tests_kcmp_test",
230        ":kselftest_net_tests_socket",
231        ":kselftest_net_tests_psock_fanout",
232        ":kselftest_net_tests_psock_tpacket",
233        ":kselftest_net_tests_reuseport_dualstack",
234        ":kselftest_net_tests_reuseaddr_conflict",
235        ":kselftest_net_test_bpf",
236        ":kselftest_ptrace_tests_peeksiginfo",
237        ":kselftest_rtc_tests_rtctest",
238        ":kselftest_seccomp_tests_seccomp_bpf",
239        ":kselftest_size_test_get_size",
240        ":kselftest_splice_test_default_file_splice_read",
241        ":kselftest_splice_default_file_splice_read.sh",
242        ":kselftest_timer_tests_inconsistency-check",
243        ":kselftest_timer_tests_nanosleep",
244        ":kselftest_timer_tests_nsleep-lat",
245        ":kselftest_timer_tests_posix_timers",
246        ":kselftest_timer_tests_raw_skew",
247        ":kselftest_timer_tests_set-tai",
248        ":kselftest_timer_tests_set-timer-lat",
249        ":kselftest_timer_tests_threadtest",
250        ":kselftest_timer_tests_valid-adjtimex",
251        ":kselftest_vm_tests_compaction_test",
252        ":kselftest_vm_tests_hugepage-mmap",
253        ":kselftest_vm_tests_hugepage-shm",
254        ":kselftest_vm_tests_map_hugetlb",
255        ":kselftest_vm_tests_mlock-random-test",
256        ":kselftest_vm_tests_mlock2-tests",
257        ":kselftest_vm_tests_on-fault-limit",
258        ":kselftest_vm_tests_mremap_dontunmap",
259        ":kselftest_vm_tests_mremap_test",
260        ":kselftest_vm_tests_userfaultfd",
261        ":kselftest_vm_tests_thuge-gen",
262        ":kselftest_vm_tests_transhuge-stress",
263        ":kselftest_vm_run_vmtests",
264        ":kselftest_vdso_test_abi",
265        ":kselftest_vdso_test_clock_getres",
266        ":kselftest_vdso_test_getcpu",
267        ":kselftest_vdso_test_gettimeofday",
268        ":kselftest_x86_tests_single_step_syscall",
269        ":kselftest_x86_tests_syscall_nt",
270        ":kselftest_x86_ptrace_syscall",
271        ":kselftest_x86_tests_test_mremap_vdso",
272        ":kselftest_x86_check_initial_reg_state",
273        ":kselftest_x86_tests_ldt_gdt",
274    ],
275    enabled: false,
276    arch: {
277        x86_64: {
278            enabled: true,
279        },
280    },
281    test_config_template: "android/vts_linux_kselftest_x86_64.xml",
282}
283
284sh_test {
285    name: "vts_linux_kselftest_x86_32",
286    src: "android/empty.sh",
287    test_suites: [
288        "general-tests",
289        "vts"
290    ],
291    data: [
292        ":kselftest_binderfs_tests_binderfs_test",
293        ":kselftest_capabilities_test_execve",
294        ":kselftest_capabilities_validate_cap",
295        ":kselftest_futex_tests_futex_requeue_pi_mismatched_ops",
296        ":kselftest_futex_tests_futex_requeue_pi_signal_restart",
297        ":kselftest_futex_tests_futex_requeue_pi",
298        ":kselftest_futex_tests_futex_requeue",
299        ":kselftest_futex_tests_futex_wait_private_mapped_file",
300        ":kselftest_futex_tests_futex_wait_timeout",
301        ":kselftest_futex_tests_futex_wait_uninitialized_heap",
302        ":kselftest_futex_tests_futex_wait_wouldblock",
303        ":kselftest_futex_tests_futex_wait",
304        ":kselftest_futex_tests_futex_waitv",
305        ":kselftest_futex_functional_run.sh",
306        ":kselftest_kcmp_tests_kcmp_test",
307        ":kselftest_net_tests_socket",
308        ":kselftest_net_tests_psock_fanout",
309        ":kselftest_net_tests_psock_tpacket",
310        ":kselftest_net_tests_reuseport_dualstack",
311        ":kselftest_net_tests_reuseaddr_conflict",
312        ":kselftest_net_test_bpf",
313        ":kselftest_rtc_tests_rtctest",
314        ":kselftest_seccomp_tests_seccomp_bpf",
315        ":kselftest_size_test_get_size",
316        ":kselftest_splice_test_default_file_splice_read",
317        ":kselftest_splice_default_file_splice_read.sh",
318        ":kselftest_timer_tests_inconsistency-check",
319        ":kselftest_timer_tests_nanosleep",
320        ":kselftest_timer_tests_nsleep-lat",
321        ":kselftest_timer_tests_posix_timers",
322        ":kselftest_timer_tests_raw_skew",
323        ":kselftest_timer_tests_set-tai",
324        ":kselftest_timer_tests_set-timer-lat",
325        ":kselftest_timer_tests_threadtest",
326        ":kselftest_timer_tests_valid-adjtimex",
327        ":kselftest_vm_tests_compaction_test",
328        ":kselftest_vm_tests_hugepage-mmap",
329        ":kselftest_vm_tests_hugepage-shm",
330        ":kselftest_vm_tests_map_hugetlb",
331        ":kselftest_vm_tests_mlock-random-test",
332        ":kselftest_vm_tests_mlock2-tests",
333        ":kselftest_vm_tests_on-fault-limit",
334        ":kselftest_vm_tests_mremap_dontunmap",
335        ":kselftest_vm_tests_mremap_test",
336        ":kselftest_vm_tests_userfaultfd",
337        ":kselftest_vm_tests_thuge-gen",
338        ":kselftest_vm_tests_transhuge-stress",
339        ":kselftest_vm_run_vmtests",
340        ":kselftest_x86_tests_single_step_syscall",
341        ":kselftest_x86_test_sysret_ss_attrs",
342        ":kselftest_x86_tests_syscall_nt",
343        ":kselftest_x86_ptrace_syscall",
344        ":kselftest_x86_tests_test_mremap_vdso",
345        ":kselftest_x86_check_initial_reg_state",
346        ":kselftest_x86_tests_ldt_gdt",
347        ":kselftest_x86_tests_syscall_arg_fault",
348        ":kselftest_x86_test_syscall_vdso",
349        ":kselftest_x86_tests_unwind_vdso",
350        ":kselftest_x86_tests_test_FCMOV",
351        ":kselftest_x86_tests_test_FCOMI",
352        ":kselftest_x86_tests_test_FISTTP",
353        ":kselftest_x86_tests_vdso_restorer",
354    ],
355    compile_multilib: "32",
356    enabled: false,
357    arch: {
358        x86: {
359            enabled: true,
360        },
361        x86_64: {
362            enabled: true,
363        },
364    },
365    test_config_template: "android/vts_linux_kselftest_x86_32.xml",
366}
367
368sh_test {
369    name: "vts_linux_kselftest_riscv_64",
370    src: "android/empty.sh",
371    test_suites: [
372        "general-tests",
373        "vts"
374    ],
375    data: [
376        ":kselftest_capabilities_test_execve",
377        ":kselftest_capabilities_validate_cap",
378        ":kselftest_futex_tests_futex_requeue_pi_mismatched_ops",
379        ":kselftest_kcmp_tests_kcmp_test",
380        ":kselftest_net_tests_socket",
381        ":kselftest_net_tests_psock_fanout",
382        ":kselftest_net_tests_psock_tpacket",
383        ":kselftest_net_tests_reuseport_dualstack",
384        ":kselftest_net_tests_reuseaddr_conflict",
385        ":kselftest_net_test_bpf",
386        ":kselftest_ptrace_tests_peeksiginfo",
387        ":kselftest_rtc_tests_rtctest",
388        ":kselftest_seccomp_tests_seccomp_bpf",
389        ":kselftest_size_test_get_size",
390        ":kselftest_splice_test_default_file_splice_read",
391        ":kselftest_splice_default_file_splice_read.sh",
392        ":kselftest_timer_tests_inconsistency-check",
393        ":kselftest_timer_tests_nanosleep",
394        ":kselftest_timer_tests_nsleep-lat",
395        ":kselftest_timer_tests_posix_timers",
396        ":kselftest_timer_tests_raw_skew",
397        ":kselftest_timer_tests_set-tai",
398        ":kselftest_timer_tests_set-timer-lat",
399        ":kselftest_timer_tests_threadtest",
400        ":kselftest_timer_tests_valid-adjtimex",
401        ":kselftest_vdso_test_abi",
402    ],
403    enabled: false,
404    arch: {
405        riscv64: {
406            enabled: true,
407        },
408    },
409    test_config_template: "android/vts_linux_kselftest_riscv_64.xml",
410}
411
412filegroup {
413    name: "kselftest_template",
414    srcs: [
415        "android/kselftest_template.xml",
416    ],
417}
418
419cc_defaults {
420    name: "kselftest_defaults",
421    cflags: [
422        // Hacks for bionic compatibility
423        "-include bionic-compat.h",
424
425        "-Wall",
426
427        // Silence noisy warnings
428        "-Wno-deprecated",
429        "-Wno-format",
430        "-Wno-gnu-designator",
431        "-Wno-macro-redefined",
432        "-Wno-missing-field-initializers",
433        "-Wno-parentheses-equality",
434        "-Wno-pointer-arith",
435        "-Wno-sign-compare",
436        "-Wno-shift-negative-value",
437        "-Wno-switch",
438        "-Wno-absolute-value",
439        "-Wno-non-literal-null-conversion",
440        "-Wno-unused-value",
441        "-Wno-unused-variable",
442        "-Wno-unused-parameter",
443        "-Wno-empty-body",
444        "-Wno-literal-conversion",
445        "-Werror",
446    ],
447
448    local_include_dirs: ["android/include"],
449    gtest: false,
450    no_named_install_directory: true,
451}
452
453cc_defaults {
454    name: "kselftest_template_defaults",
455    defaults: ["kselftest_defaults"],
456    compile_multilib: "both",
457    //test_suites: [
458    //    "general-tests",
459    //    "vts"
460    //],
461    //test_config_template: ":kselftest_template",
462}
463
464// binderfs test
465cc_test {
466    name: "kselftest_binderfs_tests_binderfs_test",
467    stem: "binderfs_test",
468    relative_install_path: "vts_linux_kselftest/filesystems/binderfs",
469    srcs: ["tools/testing/selftests/filesystems/binderfs/binderfs_test.c"],
470    defaults: ["kselftest_template_defaults"],
471}
472
473// breakpoints test
474cc_test {
475    name: "kselftest_breakpoints_step_after_suspend_test",
476    stem: "step_after_suspend_test",
477    relative_install_path: "vts_linux_kselftest/breakpoints",
478    srcs: [
479        "tools/testing/selftests/breakpoints/step_after_suspend_test.c",
480    ],
481    defaults: ["kselftest_template_defaults"],
482    enabled: false,
483    arch: {
484        arm64: {
485            enabled: true,
486        },
487        x86: {
488            enabled: true,
489        },
490        x86_64: {
491            enabled: true,
492        },
493    },
494}
495
496cc_test {
497    name: "kselftest_breakpoints_breakpoint_test",
498    stem: "breakpoint_test",
499    relative_install_path: "vts_linux_kselftest/breakpoints",
500    defaults: ["kselftest_template_defaults"],
501    enabled: false,
502    arch: {
503        arm64: {
504            enabled: true,
505            srcs: [
506                "tools/testing/selftests/breakpoints/breakpoint_test_arm64.c",
507            ],
508        },
509        x86: {
510            enabled: true,
511            srcs: [
512                "tools/testing/selftests/breakpoints/breakpoint_test.c",
513            ],
514        },
515        x86_64: {
516            enabled: true,
517            srcs: [
518                "tools/testing/selftests/breakpoints/breakpoint_test.c",
519            ],
520        },
521    },
522}
523
524// capabilities tests
525cc_test {
526    name: "kselftest_capabilities_validate_cap",
527    stem: "validate_cap",
528    relative_install_path: "vts_linux_kselftest/capabilities",
529    srcs: [
530        "tools/testing/selftests/capabilities/validate_cap.c",
531    ],
532    defaults: ["kselftest_defaults"],
533    static_libs: ["libcap-ng"],
534}
535
536cc_test {
537    name: "kselftest_capabilities_test_execve",
538    stem: "test_execve",
539    relative_install_path: "vts_linux_kselftest/capabilities",
540    srcs: [
541        "tools/testing/selftests/capabilities/test_execve.c",
542    ],
543    //data: [
544    //    ":kselftest_capabilities_validate_cap",
545    //],
546    defaults: ["kselftest_template_defaults"],
547    static_libs: ["libcap-ng"],
548}
549
550// Cpu-hotplug test
551sh_test {
552    name: "kselftest_cpu-hotplug_cpu-on-off-test",
553    sub_dir: "vts_linux_kselftest/cpu-hotplug",
554    src: "tools/testing/selftests/cpu-hotplug/cpu-on-off-test.sh",
555    filename_from_src: true,
556    compile_multilib: "both",
557}
558
559// Efivarfs test
560cc_test {
561    name: "kselftest_efivarfs_open-unlink",
562    stem: "open-unlink",
563    relative_install_path: "vts_linux_kselftest/efivarfs",
564    srcs: [
565        "tools/testing/selftests/efivarfs/open-unlink.c",
566    ],
567    defaults: ["kselftest_defaults"],
568}
569
570cc_test {
571    name: "kselftest_efivarfs_create-read",
572    stem: "create-read",
573    relative_install_path: "vts_linux_kselftest/efivarfs",
574    srcs: [
575        "tools/testing/selftests/efivarfs/create-read.c",
576    ],
577    defaults: ["kselftest_defaults"],
578}
579
580sh_test {
581    name: "kselftest_efivarfs_efivarfs",
582    sub_dir: "vts_linux_kselftest/efivarfs",
583    src: "tools/testing/selftests/efivarfs/efivarfs.sh",
584    filename_from_src: true,
585    compile_multilib: "both",
586}
587
588// Exec test
589cc_test {
590    name: "kselftest_exec_test_execveat",
591    stem: "execveat",
592    relative_install_path: "vts_linux_kselftest/exec",
593    srcs: [
594        "tools/testing/selftests/exec/execveat.c",
595    ],
596    defaults: ["kselftest_defaults"],
597}
598
599sh_test {
600    name: "kselftest_exec_execveat.sh",
601    sub_dir: "vts_linux_kselftest/exec",
602    src: "tools/testing/selftests/exec/execveat.sh",
603    //data: [
604    //    ":kselftest_exec_test_execveat",
605    //],
606    //filename_from_src: true,
607    compile_multilib: "both",
608}
609
610// Firmware test
611sh_test {
612    name: "kselftest_firmware_fw_fallback",
613    sub_dir: "vts_linux_kselftest/firmware",
614    src: "tools/testing/selftests/firmware/fw_fallback.sh",
615    filename_from_src: true,
616    compile_multilib: "both",
617}
618
619sh_test {
620    name: "kselftest_firmware_fw_filesystem",
621    sub_dir: "vts_linux_kselftest/firmware",
622    src: "tools/testing/selftests/firmware/fw_filesystem.sh",
623    filename_from_src: true,
624    compile_multilib: "both",
625}
626
627// Ftrace test
628sh_test {
629    name: "kselftest_ftrace_ftracetest",
630    sub_dir: "vts_linux_kselftest/ftrace",
631    src: "tools/testing/selftests/ftrace/ftracetest",
632    filename_from_src: true,
633    compile_multilib: "both",
634}
635
636sh_test {
637    name: "kselftest_ftrace_test.d_functions",
638    sub_dir: "vts_linux_kselftest/ftrace/test.d",
639    src: "tools/testing/selftests/ftrace/test.d/functions",
640    filename_from_src: true,
641    compile_multilib: "both",
642}
643
644sh_test {
645    name: "kselftest_ftrace_test.d_00basic_basic2",
646    sub_dir: "vts_linux_kselftest/ftrace/test.d/00basic",
647    src: "tools/testing/selftests/ftrace/test.d/00basic/basic2.tc",
648    filename_from_src: true,
649    compile_multilib: "both",
650}
651
652sh_test {
653    name: "kselftest_ftrace_test.d_00basic_basic4",
654    sub_dir: "vts_linux_kselftest/ftrace/test.d/00basic",
655    src: "tools/testing/selftests/ftrace/test.d/00basic/basic4.tc",
656    filename_from_src: true,
657    compile_multilib: "both",
658}
659
660sh_test {
661    name: "kselftest_ftrace_test.d_00basic_basic1",
662    sub_dir: "vts_linux_kselftest/ftrace/test.d/00basic",
663    src: "tools/testing/selftests/ftrace/test.d/00basic/basic1.tc",
664    filename_from_src: true,
665    compile_multilib: "both",
666}
667
668sh_test {
669    name: "kselftest_ftrace_test.d_00basic_basic3",
670    sub_dir: "vts_linux_kselftest/ftrace/test.d/00basic",
671    src: "tools/testing/selftests/ftrace/test.d/00basic/basic3.tc",
672    filename_from_src: true,
673    compile_multilib: "both",
674}
675
676sh_test {
677    name: "kselftest_ftrace_test.d_template",
678    sub_dir: "vts_linux_kselftest/ftrace/test.d",
679    src: "tools/testing/selftests/ftrace/test.d/template",
680    filename_from_src: true,
681    compile_multilib: "both",
682}
683
684sh_test {
685    name: "kselftest_ftrace_test.d_instances_instance",
686    sub_dir: "vts_linux_kselftest/ftrace/test.d/instances",
687    src: "tools/testing/selftests/ftrace/test.d/instances/instance.tc",
688    filename_from_src: true,
689    compile_multilib: "both",
690}
691
692sh_test {
693    name: "kselftest_ftrace_test.d_instances_instance-event",
694    sub_dir: "vts_linux_kselftest/ftrace/test.d/instances",
695    src: "tools/testing/selftests/ftrace/test.d/instances/instance-event.tc",
696    filename_from_src: true,
697    compile_multilib: "both",
698}
699
700// Futex test
701cc_test {
702    name: "kselftest_futex_tests_futex_requeue_pi_mismatched_ops",
703    stem: "futex_requeue_pi_mismatched_ops",
704    relative_install_path: "vts_linux_kselftest/futex/functional",
705    srcs: [
706        "tools/testing/selftests/futex/functional/futex_requeue_pi_mismatched_ops.c",
707    ],
708    local_include_dirs: [
709        "tools/testing/selftests/futex/include",
710        "tools/testing/selftests",
711    ],
712    cflags: [
713        "-D_GNU_SOURCE",
714        "-pthread",
715    ],
716    defaults: ["kselftest_defaults"],
717}
718
719cc_test {
720    name: "kselftest_futex_tests_futex_requeue_pi_signal_restart",
721    stem: "futex_requeue_pi_signal_restart",
722    relative_install_path: "vts_linux_kselftest/futex/functional",
723    srcs: [
724        "tools/testing/selftests/futex/functional/futex_requeue_pi_signal_restart.c",
725    ],
726    local_include_dirs: [
727        "tools/testing/selftests/futex/include",
728        "tools/testing/selftests",
729    ],
730    cflags: [
731        "-D_GNU_SOURCE",
732        "-pthread",
733    ],
734    defaults: ["kselftest_defaults"],
735}
736
737cc_test {
738    name: "kselftest_futex_tests_futex_requeue_pi",
739    stem: "futex_requeue_pi",
740    relative_install_path: "vts_linux_kselftest/futex/functional",
741    srcs: [
742        "tools/testing/selftests/futex/functional/futex_requeue_pi.c",
743    ],
744    local_include_dirs: [
745        "tools/testing/selftests/futex/include",
746        "tools/testing/selftests",
747    ],
748    cflags: [
749        "-D_GNU_SOURCE",
750        "-pthread",
751    ],
752    defaults: ["kselftest_defaults"],
753}
754
755cc_test {
756    name: "kselftest_futex_tests_futex_requeue",
757    stem: "futex_requeue",
758    relative_install_path: "vts_linux_kselftest/futex/functional",
759    srcs: [
760        "tools/testing/selftests/futex/functional/futex_requeue.c",
761    ],
762    local_include_dirs: [
763        "tools/testing/selftests/futex/include",
764        "tools/testing/selftests",
765    ],
766    cflags: [
767        "-D_GNU_SOURCE",
768        "-pthread",
769    ],
770    defaults: ["kselftest_defaults"],
771}
772
773cc_test {
774    name: "kselftest_futex_tests_futex_wait_private_mapped_file",
775    stem: "futex_wait_private_mapped_file",
776    relative_install_path: "vts_linux_kselftest/futex/functional",
777    srcs: [
778        "tools/testing/selftests/futex/functional/futex_wait_private_mapped_file.c",
779    ],
780    local_include_dirs: [
781        "tools/testing/selftests/futex/include",
782        "tools/testing/selftests",
783    ],
784    cflags: [
785        "-D_GNU_SOURCE",
786        "-pthread",
787    ],
788    defaults: ["kselftest_defaults"],
789}
790
791cc_test {
792    name: "kselftest_futex_tests_futex_wait_timeout",
793    stem: "futex_wait_timeout",
794    relative_install_path: "vts_linux_kselftest/futex/functional",
795    srcs: [
796        "tools/testing/selftests/futex/functional/futex_wait_timeout.c",
797    ],
798    local_include_dirs: [
799        "tools/testing/selftests/futex/include",
800        "tools/testing/selftests",
801    ],
802    cflags: [
803        "-D_GNU_SOURCE",
804        "-pthread",
805    ],
806    defaults: ["kselftest_defaults"],
807}
808
809cc_test {
810    name: "kselftest_futex_tests_futex_wait_uninitialized_heap",
811    stem: "futex_wait_uninitialized_heap",
812    relative_install_path: "vts_linux_kselftest/futex/functional",
813    srcs: [
814        "tools/testing/selftests/futex/functional/futex_wait_uninitialized_heap.c",
815    ],
816    local_include_dirs: [
817        "tools/testing/selftests/futex/include",
818        "tools/testing/selftests",
819    ],
820    cflags: [
821        "-D_GNU_SOURCE",
822        "-pthread",
823    ],
824    defaults: ["kselftest_defaults"],
825}
826
827cc_test {
828    name: "kselftest_futex_tests_futex_wait_wouldblock",
829    stem: "futex_wait_wouldblock",
830    relative_install_path: "vts_linux_kselftest/futex/functional",
831    srcs: [
832        "tools/testing/selftests/futex/functional/futex_wait_wouldblock.c",
833    ],
834    local_include_dirs: [
835        "tools/testing/selftests/futex/include",
836        "tools/testing/selftests",
837    ],
838    cflags: [
839        "-D_GNU_SOURCE",
840        "-pthread",
841    ],
842    defaults: ["kselftest_defaults"],
843}
844
845cc_test {
846    name: "kselftest_futex_tests_futex_wait",
847    stem: "futex_wait",
848    relative_install_path: "vts_linux_kselftest/futex/functional",
849    srcs: [
850        "tools/testing/selftests/futex/functional/futex_wait.c",
851    ],
852    local_include_dirs: [
853        "tools/testing/selftests/futex/include",
854        "tools/testing/selftests",
855    ],
856    cflags: [
857        "-D_GNU_SOURCE",
858        "-pthread",
859    ],
860    defaults: ["kselftest_defaults"],
861}
862
863cc_test {
864    name: "kselftest_futex_tests_futex_waitv",
865    stem: "futex_waitv",
866    relative_install_path: "vts_linux_kselftest/futex/functional",
867    srcs: [
868        "tools/testing/selftests/futex/functional/futex_waitv.c",
869    ],
870    local_include_dirs: [
871        "tools/testing/selftests/futex/include",
872        "tools/testing/selftests",
873    ],
874    cflags: [
875        "-D_GNU_SOURCE",
876        "-pthread",
877    ],
878    defaults: ["kselftest_defaults"],
879}
880
881sh_test {
882    name: "kselftest_futex_functional_run.sh",
883    sub_dir: "vts_linux_kselftest/futex/functional",
884    src: "tools/testing/selftests/futex/functional/run.sh",
885    filename_from_src: true,
886    compile_multilib: "both",
887    //data: [
888    //    ":kselftest_futex_tests_futex_requeue_pi_mismatched_ops",
889    //    ":kselftest_futex_tests_futex_requeue_pi_signal_restart",
890    //    ":kselftest_futex_tests_futex_requeue_pi",
891    //    ":kselftest_futex_tests_futex_requeue",
892    //    ":kselftest_futex_tests_futex_wait_private_mapped_file",
893    //    ":kselftest_futex_tests_futex_wait_timeout",
894    //    ":kselftest_futex_tests_futex_wait_uninitialized_heap",
895    //    ":kselftest_futex_tests_futex_wait_wouldblock",
896    //    ":kselftest_futex_tests_futex_wait",
897    //    ":kselftest_futex_tests_futex_waitv",
898    //],
899    //test_config_template: ":kselftest_template",
900}
901
902// intel_pstate test
903cc_test {
904    name: "kselftest_intel_pstate_tests_aperf",
905    stem: "aperf",
906    relative_install_path: "vts_linux_kselftest/intel_pstate",
907    srcs: [
908        "tools/testing/selftests/intel_pstate/aperf.c",
909    ],
910    cflags: [
911        "-D_GNU_SOURCE",
912    ],
913    defaults: ["kselftest_defaults"],
914}
915
916cc_test {
917    name: "kselftest_intel_pstate_tests_msr",
918    stem: "msr",
919    relative_install_path: "vts_linux_kselftest/intel_pstate",
920    srcs: [
921        "tools/testing/selftests/intel_pstate/msr.c",
922    ],
923    cflags: [
924        "-D_GNU_SOURCE",
925    ],
926    defaults: ["kselftest_defaults"],
927}
928
929sh_test {
930    name: "kselftest_intel_pstate_run.sh",
931    sub_dir: "vts_linux_kselftest/intel_pstate",
932    src: "tools/testing/selftests/intel_pstate/run.sh",
933    filename_from_src: true,
934    compile_multilib: "both",
935    //data: [
936    //    ":kselftest_intel_pstate_tests_aperf",
937    //    ":kselftest_intel_pstate_tests_msr",
938    //],
939    //test_config_template: ":kselftest_template",
940}
941
942// Kcmp test
943cc_test {
944    name: "kselftest_kcmp_tests_kcmp_test",
945    stem: "kcmp_test",
946    relative_install_path: "vts_linux_kselftest/kcmp",
947    srcs: ["tools/testing/selftests/kcmp/kcmp_test.c"],
948    defaults: ["kselftest_template_defaults"],
949}
950
951// KVM test
952cc_test {
953    name: "kselftest_kvm_arm64_tests_pvm_wipe_mem",
954    stem: "pvm_wipe_mem",
955    relative_install_path: "vts_linux_kselftest/kvm/aarch64",
956    local_include_dirs: [
957        "tools/testing/selftests/kvm/include",
958        "tools/testing/selftests",
959    ],
960    srcs: [
961        "tools/testing/selftests/kvm/aarch64/pvm_wipe_mem.c",
962    ],
963    cflags: [
964        "-fno-stack-protector",
965        "-fno-PIE",
966    ],
967    enabled: false,
968    arch: {
969        arm64: {
970            enabled: true,
971        },
972    },
973    defaults: ["kselftest_defaults"],
974}
975
976// Lib test
977sh_test {
978    name: "kselftest_lib_printf",
979    sub_dir: "vts_linux_kselftest/lib",
980    src: "tools/testing/selftests/lib/printf.sh",
981    filename_from_src: true,
982    compile_multilib: "both",
983}
984
985sh_test {
986    name: "kselftest_lib_bitmap",
987    sub_dir: "vts_linux_kselftest/lib",
988    src: "tools/testing/selftests/lib/bitmap.sh",
989    filename_from_src: true,
990    compile_multilib: "both",
991}
992
993// media_tests test
994cc_test {
995    name: "kselftest_media_tests_media_device_test",
996    stem: "media_device_test",
997    relative_install_path: "vts_linux_kselftest/media_tests",
998    srcs: [
999        "tools/testing/selftests/media_tests/media_device_test.c",
1000    ],
1001    defaults: ["kselftest_defaults"],
1002}
1003
1004cc_test {
1005    name: "kselftest_media_tests_media_device_open",
1006    stem: "media_device_open",
1007    relative_install_path: "vts_linux_kselftest/media_tests",
1008    srcs: [
1009        "tools/testing/selftests/media_tests/media_device_open.c",
1010    ],
1011    defaults: ["kselftest_defaults"],
1012}
1013
1014cc_test {
1015    name: "kselftest_media_tests_video_device_test",
1016    stem: "video_device_test",
1017    relative_install_path: "vts_linux_kselftest/media_tests",
1018    srcs: [
1019        "tools/testing/selftests/media_tests/video_device_test.c",
1020    ],
1021    defaults: ["kselftest_defaults"],
1022}
1023
1024// Membarrier test
1025cc_test {
1026    name: "kselftest_membarrier_tests_membarrier_test_multi_thread",
1027    stem: "membarrier_test_multi_thread",
1028    relative_install_path: "vts_linux_kselftest/membarrier",
1029    srcs: [
1030        "tools/testing/selftests/membarrier/membarrier_test_multi_thread.c",
1031    ],
1032    defaults: ["kselftest_defaults"],
1033}
1034
1035cc_test {
1036    name: "kselftest_membarrier_tests_membarrier_test_single_thread",
1037    stem: "membarrier_test_single_thread",
1038    relative_install_path: "vts_linux_kselftest/membarrier",
1039    srcs: [
1040        "tools/testing/selftests/membarrier/membarrier_test_single_thread.c",
1041    ],
1042    defaults: ["kselftest_defaults"],
1043}
1044
1045// Memory-hotplug test
1046sh_test {
1047    name: "kselftest_memory-hotplug_mem-on-off-test",
1048    sub_dir: "vts_linux_kselftest/memory-hotplug",
1049    src: "tools/testing/selftests/memory-hotplug/mem-on-off-test.sh",
1050    filename_from_src: true,
1051    compile_multilib: "both",
1052}
1053
1054// Mount test
1055cc_test {
1056    name: "kselftest_mount_tests",
1057    stem: "unprivileged-remount-test",
1058    relative_install_path: "vts_linux_kselftest/mount",
1059    srcs: ["tools/testing/selftests/mount/unprivileged-remount-test.c"],
1060    defaults: ["kselftest_defaults"],
1061}
1062
1063// Net test
1064cc_test {
1065    name: "kselftest_net_tests_socket",
1066    stem: "socket",
1067    relative_install_path: "vts_linux_kselftest/net",
1068    cflags: ["-Wno-gnu-variable-sized-type-not-at-end"],
1069    srcs: [
1070        "tools/testing/selftests/net/socket.c",
1071    ],
1072    defaults: ["kselftest_defaults"],
1073}
1074
1075cc_test {
1076    name: "kselftest_net_tests_psock_fanout",
1077    stem: "psock_fanout",
1078    relative_install_path: "vts_linux_kselftest/net",
1079    srcs: [
1080        "tools/testing/selftests/net/psock_fanout.c",
1081    ],
1082    defaults: ["kselftest_defaults"],
1083}
1084
1085cc_test {
1086    name: "kselftest_net_tests_psock_tpacket",
1087    stem: "psock_tpacket",
1088    relative_install_path: "vts_linux_kselftest/net",
1089    srcs: [
1090        "tools/testing/selftests/net/psock_tpacket.c",
1091    ],
1092    cflags: [
1093        "-Wno-gnu-variable-sized-type-not-at-end",
1094    ],
1095    defaults: ["kselftest_defaults"],
1096}
1097
1098cc_test {
1099    name: "kselftest_net_tests_reuseport_dualstack",
1100    stem: "reuseport_dualstack",
1101    relative_install_path: "vts_linux_kselftest/net",
1102    srcs: [
1103        "tools/testing/selftests/net/reuseport_dualstack.c",
1104    ],
1105    defaults: ["kselftest_defaults"],
1106}
1107
1108cc_test {
1109    name: "kselftest_net_tests_reuseaddr_conflict",
1110    stem: "reuseaddr_conflict",
1111    relative_install_path: "vts_linux_kselftest/net",
1112    srcs: [
1113        "tools/testing/selftests/net/reuseaddr_conflict.c",
1114    ],
1115    defaults: ["kselftest_template_defaults"],
1116}
1117
1118sh_test {
1119    name: "kselftest_net_test_bpf",
1120    sub_dir: "vts_linux_kselftest/net",
1121    src: "tools/testing/selftests/net/test_bpf.sh",
1122    filename_from_src: true,
1123    compile_multilib: "both",
1124    //data: [
1125    //    ":kselftest_net_tests_socket",
1126    //    ":kselftest_net_tests_psock_fanout",
1127    //    ":kselftest_net_tests_psock_tpacket",
1128    //    ":kselftest_net_tests_reuseport_dualstack",
1129    //    ":kselftest_net_tests_reuseaddr_conflict",
1130    //],
1131    //test_config_template: ":kselftest_template",
1132}
1133
1134// Pstore test
1135sh_test {
1136    name: "kselftest_pstore_pstore_tests",
1137    sub_dir: "vts_linux_kselftest/pstore",
1138    src: "tools/testing/selftests/pstore/pstore_tests",
1139    filename_from_src: true,
1140    compile_multilib: "both",
1141}
1142
1143sh_test {
1144    name: "kselftest_pstore_pstore_post_reboot_tests",
1145    sub_dir: "vts_linux_kselftest/pstore",
1146    src: "tools/testing/selftests/pstore/pstore_post_reboot_tests",
1147    filename_from_src: true,
1148    compile_multilib: "both",
1149}
1150
1151sh_test {
1152    name: "kselftest_pstore_common_tests",
1153    sub_dir: "vts_linux_kselftest/pstore",
1154    src: "tools/testing/selftests/pstore/common_tests",
1155    filename_from_src: true,
1156    compile_multilib: "both",
1157}
1158
1159sh_test {
1160    name: "kselftest_pstore_pstore_crash_test",
1161    sub_dir: "vts_linux_kselftest/pstore",
1162    src: "tools/testing/selftests/pstore/pstore_crash_test",
1163    filename_from_src: true,
1164    compile_multilib: "both",
1165}
1166
1167// Ptrace test
1168cc_test {
1169    name: "kselftest_ptrace_tests_peeksiginfo",
1170    stem: "peeksiginfo",
1171    relative_install_path: "vts_linux_kselftest/ptrace",
1172    srcs: ["tools/testing/selftests/ptrace/peeksiginfo.c"],
1173    defaults: ["kselftest_template_defaults"],
1174}
1175
1176// rtc test
1177cc_test {
1178    name: "kselftest_rtc_tests_rtctest",
1179    stem: "rtctest",
1180    relative_install_path: "vts_linux_kselftest/rtc",
1181    srcs: ["tools/testing/selftests/rtc/rtctest.c"],
1182    defaults: ["kselftest_template_defaults"],
1183}
1184
1185// seccomp test
1186cc_test {
1187    name: "kselftest_seccomp_tests_seccomp_bpf",
1188    stem: "seccomp_bpf",
1189    relative_install_path: "vts_linux_kselftest/seccomp",
1190    srcs: ["tools/testing/selftests/seccomp/seccomp_bpf.c"],
1191    static_libs: [
1192        "libcap",
1193    ],
1194    cflags: [
1195        "-Wno-unused-function",
1196    ],
1197    defaults: ["kselftest_template_defaults"],
1198}
1199
1200// size test
1201cc_test {
1202    name: "kselftest_size_test_get_size",
1203    stem: "get_size",
1204    relative_install_path: "vts_linux_kselftest/size",
1205    srcs: ["tools/testing/selftests/size/get_size.c"],
1206    arch: {
1207       x86_64: {
1208           cflags: ["-mstackrealign"],
1209       },
1210    },
1211    defaults: ["kselftest_template_defaults"],
1212    nocrt: true,
1213    // coverage runtime calls atexit, which is unavailable with nocrt.
1214    native_coverage: false,
1215}
1216
1217// splice test
1218cc_test {
1219    name: "kselftest_splice_test_default_file_splice_read",
1220    stem: "default_file_splice_read",
1221    relative_install_path: "vts_linux_kselftest/splice",
1222    srcs: ["tools/testing/selftests/splice/default_file_splice_read.c"],
1223    defaults: ["kselftest_defaults"],
1224}
1225
1226sh_test {
1227    name: "kselftest_splice_default_file_splice_read.sh",
1228    sub_dir: "vts_linux_kselftest/splice",
1229    src: "tools/testing/selftests/splice/default_file_splice_read.sh",
1230    filename_from_src: true,
1231    compile_multilib: "both",
1232    //data: [
1233    //    ":kselftest_splice_test_default_file_splice_read",
1234    //],
1235    //test_config_template: ":kselftest_template",
1236}
1237
1238// Static keys test
1239sh_test {
1240    name: "kselftest_static_keys_test_static_keys",
1241    sub_dir: "vts_linux_kselftest/static_keys",
1242    src: "tools/testing/selftests/static_keys/test_static_keys.sh",
1243    filename_from_src: true,
1244    compile_multilib: "both",
1245}
1246
1247// Timer test
1248cc_test {
1249    name: "kselftest_timer_tests_adjtick",
1250    stem: "adjtick",
1251    relative_install_path: "vts_linux_kselftest/timers",
1252    srcs: [
1253        "tools/testing/selftests/timers/adjtick.c",
1254    ],
1255    cflags: [
1256        "-O3",
1257        "-DKTEST",
1258    ],
1259    defaults: ["kselftest_template_defaults"],
1260}
1261
1262cc_test {
1263    name: "kselftest_timer_tests_alarmtimer-suspend",
1264    stem: "alarmtimer-suspend",
1265    relative_install_path: "vts_linux_kselftest/timers",
1266    srcs: [
1267        "tools/testing/selftests/timers/alarmtimer-suspend.c",
1268    ],
1269    cflags: [
1270        "-O3",
1271        "-DKTEST",
1272    ],
1273    defaults: ["kselftest_template_defaults"],
1274}
1275
1276cc_test {
1277    name: "kselftest_timer_tests_change_skew",
1278    stem: "change_skew",
1279    relative_install_path: "vts_linux_kselftest/timers",
1280    srcs: [
1281        "tools/testing/selftests/timers/change_skew.c",
1282    ],
1283    cflags: [
1284        "-O3",
1285        "-DKTEST",
1286    ],
1287    defaults: ["kselftest_template_defaults"],
1288}
1289
1290cc_test {
1291    name: "kselftest_timer_tests_clocksource-switch",
1292    stem: "clocksource-switch",
1293    relative_install_path: "vts_linux_kselftest/timers",
1294    srcs: [
1295        "tools/testing/selftests/timers/clocksource-switch.c",
1296    ],
1297    cflags: [
1298        "-O3",
1299        "-DKTEST",
1300    ],
1301    defaults: ["kselftest_template_defaults"],
1302}
1303
1304cc_test {
1305    name: "kselftest_timer_tests_freq-step",
1306    stem: "freq-step",
1307    relative_install_path: "vts_linux_kselftest/timers",
1308    srcs: [
1309        "tools/testing/selftests/timers/freq-step.c",
1310    ],
1311    cflags: [
1312        "-O3",
1313        "-DKTEST",
1314    ],
1315    defaults: ["kselftest_template_defaults"],
1316}
1317
1318cc_test {
1319    name: "kselftest_timer_tests_inconsistency-check",
1320    stem: "inconsistency-check",
1321    relative_install_path: "vts_linux_kselftest/timers",
1322    srcs: [
1323        "tools/testing/selftests/timers/inconsistency-check.c",
1324    ],
1325    cflags: [
1326        "-O3",
1327        "-DKTEST",
1328    ],
1329    defaults: ["kselftest_template_defaults"],
1330}
1331
1332cc_test {
1333    name: "kselftest_timer_tests_leap-a-day",
1334    stem: "leap-a-day",
1335    relative_install_path: "vts_linux_kselftest/timers",
1336    srcs: [
1337        "tools/testing/selftests/timers/leap-a-day.c",
1338    ],
1339    cflags: [
1340        "-O3",
1341        "-DKTEST",
1342    ],
1343    defaults: ["kselftest_template_defaults"],
1344}
1345
1346cc_test {
1347    name: "kselftest_timer_tests_leapcrash",
1348    stem: "leapcrash",
1349    relative_install_path: "vts_linux_kselftest/timers",
1350    srcs: [
1351        "tools/testing/selftests/timers/leapcrash.c",
1352    ],
1353    cflags: [
1354        "-O3",
1355        "-DKTEST",
1356    ],
1357    defaults: ["kselftest_template_defaults"],
1358}
1359
1360cc_test {
1361    name: "kselftest_timer_tests_nanosleep",
1362    stem: "nanosleep",
1363    relative_install_path: "vts_linux_kselftest/timers",
1364    srcs: [
1365        "tools/testing/selftests/timers/nanosleep.c",
1366    ],
1367    cflags: [
1368        "-O3",
1369        "-DKTEST",
1370    ],
1371    defaults: ["kselftest_template_defaults"],
1372}
1373
1374cc_test {
1375    name: "kselftest_timer_tests_nsleep-lat",
1376    stem: "nsleep-lat",
1377    relative_install_path: "vts_linux_kselftest/timers",
1378    srcs: [
1379        "tools/testing/selftests/timers/nsleep-lat.c",
1380    ],
1381    cflags: [
1382        "-O3",
1383        "-DKTEST",
1384    ],
1385    defaults: ["kselftest_template_defaults"],
1386}
1387
1388cc_test {
1389    name: "kselftest_timer_tests_posix_timers",
1390    stem: "posix_timers",
1391    relative_install_path: "vts_linux_kselftest/timers",
1392    srcs: [
1393        "tools/testing/selftests/timers/posix_timers.c",
1394    ],
1395    cflags: [
1396        "-O3",
1397        "-DKTEST",
1398    ],
1399    defaults: ["kselftest_template_defaults"],
1400}
1401
1402cc_test {
1403    name: "kselftest_timer_tests_raw_skew",
1404    stem: "raw_skew",
1405    relative_install_path: "vts_linux_kselftest/timers",
1406    srcs: [
1407        "tools/testing/selftests/timers/raw_skew.c",
1408    ],
1409    cflags: [
1410        "-O3",
1411        "-DKTEST",
1412    ],
1413    defaults: ["kselftest_template_defaults"],
1414}
1415
1416cc_test {
1417    name: "kselftest_timer_tests_set-2038",
1418    stem: "set-2038",
1419    relative_install_path: "vts_linux_kselftest/timers",
1420    srcs: [
1421        "tools/testing/selftests/timers/set-2038.c",
1422    ],
1423    cflags: [
1424        "-O3",
1425        "-DKTEST",
1426    ],
1427    defaults: ["kselftest_template_defaults"],
1428}
1429
1430cc_test {
1431    name: "kselftest_timer_tests_set-tai",
1432    stem: "set-tai",
1433    relative_install_path: "vts_linux_kselftest/timers",
1434    srcs: [
1435        "tools/testing/selftests/timers/set-tai.c",
1436    ],
1437    cflags: [
1438        "-O3",
1439        "-DKTEST",
1440    ],
1441    defaults: ["kselftest_template_defaults"],
1442}
1443
1444cc_test {
1445    name: "kselftest_timer_tests_set-timer-lat",
1446    stem: "set-timer-lat",
1447    relative_install_path: "vts_linux_kselftest/timers",
1448    srcs: [
1449        "tools/testing/selftests/timers/set-timer-lat.c",
1450    ],
1451    cflags: [
1452        "-O3",
1453        "-DKTEST",
1454    ],
1455    defaults: ["kselftest_template_defaults"],
1456}
1457
1458cc_test {
1459    name: "kselftest_timer_tests_set-tz",
1460    stem: "set-tz",
1461    relative_install_path: "vts_linux_kselftest/timers",
1462    srcs: [
1463        "tools/testing/selftests/timers/set-tz.c",
1464    ],
1465    cflags: [
1466        "-O3",
1467        "-DKTEST",
1468    ],
1469    defaults: ["kselftest_template_defaults"],
1470}
1471
1472cc_test {
1473    name: "kselftest_timer_tests_skew_consistency",
1474    stem: "skew_consistency",
1475    relative_install_path: "vts_linux_kselftest/timers",
1476    srcs: [
1477        "tools/testing/selftests/timers/skew_consistency.c",
1478    ],
1479    cflags: [
1480        "-O3",
1481        "-DKTEST",
1482    ],
1483    defaults: ["kselftest_template_defaults"],
1484}
1485
1486cc_test {
1487    name: "kselftest_timer_tests_threadtest",
1488    stem: "threadtest",
1489    relative_install_path: "vts_linux_kselftest/timers",
1490    srcs: [
1491        "tools/testing/selftests/timers/threadtest.c",
1492    ],
1493    cflags: [
1494        "-O3",
1495        "-DKTEST",
1496    ],
1497    defaults: ["kselftest_template_defaults"],
1498}
1499
1500cc_test {
1501    name: "kselftest_timer_tests_valid-adjtimex",
1502    stem: "valid-adjtimex",
1503    relative_install_path: "vts_linux_kselftest/timers",
1504    srcs: [
1505        "tools/testing/selftests/timers/valid-adjtimex.c",
1506    ],
1507    cflags: [
1508        "-O3",
1509        "-DKTEST",
1510    ],
1511    defaults: ["kselftest_template_defaults"],
1512}
1513
1514// User test
1515sh_test {
1516    name: "kselftest_user_test_user_copy",
1517    sub_dir: "vts_linux_kselftest/user",
1518    src: "tools/testing/selftests/user/test_user_copy.sh",
1519    filename_from_src: true,
1520    compile_multilib: "both",
1521}
1522
1523// vdso test
1524cc_test {
1525    name: "kselftest_vdso_test_abi",
1526    stem: "kselftest_vdso_test_abi",
1527    relative_install_path: "vts_linux_kselftest/vDSO",
1528    srcs: [
1529        "tools/testing/selftests/vDSO/vdso_test_abi.c",
1530        "tools/testing/selftests/vDSO/parse_vdso.c",
1531    ],
1532    defaults: ["kselftest_template_defaults"],
1533}
1534
1535cc_test {
1536    name: "kselftest_vdso_test_clock_getres",
1537    stem: "kselftest_vdso_test_clock_getres",
1538    relative_install_path: "vts_linux_kselftest/vDSO",
1539    srcs: [
1540        "tools/testing/selftests/vDSO/vdso_test_clock_getres.c",
1541        "tools/testing/selftests/vDSO/parse_vdso.c",
1542    ],
1543    defaults: ["kselftest_template_defaults"],
1544}
1545
1546cc_test {
1547    name: "kselftest_vdso_test_correctness",
1548    stem: "kselftest_vdso_test_correctness",
1549    relative_install_path: "vts_linux_kselftest/vDSO",
1550    srcs: [
1551        "tools/testing/selftests/vDSO/vdso_test_correctness.c",
1552        "tools/testing/selftests/vDSO/parse_vdso.c",
1553    ],
1554    static_libs: [
1555        "libdl",
1556    ],
1557    defaults: ["kselftest_template_defaults"],
1558    enabled: false,
1559}
1560
1561cc_test {
1562    name: "kselftest_vdso_test_getcpu",
1563    stem: "kselftest_vdso_test_getcpu",
1564    relative_install_path: "vts_linux_kselftest/vDSO",
1565    srcs: [
1566        "tools/testing/selftests/vDSO/vdso_test_getcpu.c",
1567        "tools/testing/selftests/vDSO/parse_vdso.c",
1568    ],
1569    defaults: ["kselftest_template_defaults"],
1570}
1571
1572cc_test {
1573    name: "kselftest_vdso_test_gettimeofday",
1574    stem: "kselftest_vdso_test_gettimeofday",
1575    relative_install_path: "vts_linux_kselftest/vDSO",
1576    srcs: [
1577        "tools/testing/selftests/vDSO/vdso_test_gettimeofday.c",
1578        "tools/testing/selftests/vDSO/parse_vdso.c",
1579    ],
1580    defaults: ["kselftest_template_defaults"],
1581}
1582
1583// Vm test
1584cc_library_static {
1585    name: "kselftest_vm_util",
1586    srcs: [
1587        "tools/testing/selftests/vm/vm_util.c",
1588    ],
1589    export_include_dirs: [
1590        "tools/testing/selftests/vm",
1591    ],
1592    defaults: ["kselftest_template_defaults"],
1593}
1594
1595cc_test {
1596    name: "kselftest_vm_tests_compaction_test",
1597    stem: "compaction_test",
1598    relative_install_path: "vts_linux_kselftest/vm",
1599    srcs: [
1600        "tools/testing/selftests/vm/compaction_test.c",
1601    ],
1602    defaults: ["kselftest_template_defaults"],
1603    static_libs: ["libcap"],
1604}
1605
1606cc_test {
1607    name: "kselftest_vm_tests_hugepage-mmap",
1608    stem: "hugepage-mmap",
1609    relative_install_path: "vts_linux_kselftest/vm",
1610    srcs: [
1611        "tools/testing/selftests/vm/hugepage-mmap.c",
1612    ],
1613    defaults: ["kselftest_template_defaults"],
1614    static_libs: ["libcap"],
1615}
1616
1617cc_test {
1618    name: "kselftest_vm_tests_hugepage-shm",
1619    stem: "hugepage-shm",
1620    relative_install_path: "vts_linux_kselftest/vm",
1621    srcs: [
1622        "tools/testing/selftests/vm/hugepage-shm.c",
1623    ],
1624    defaults: ["kselftest_template_defaults"],
1625    static_libs: ["libcap"],
1626}
1627
1628cc_test {
1629    name: "kselftest_vm_tests_map_hugetlb",
1630    stem: "map_hugetlb",
1631    relative_install_path: "vts_linux_kselftest/vm",
1632    srcs: [
1633        "tools/testing/selftests/vm/map_hugetlb.c",
1634    ],
1635    defaults: ["kselftest_template_defaults"],
1636    static_libs: ["libcap"],
1637}
1638
1639cc_test {
1640    name: "kselftest_vm_tests_mlock-random-test",
1641    stem: "mlock-random-test",
1642    relative_install_path: "vts_linux_kselftest/vm",
1643    srcs: [
1644        "tools/testing/selftests/vm/mlock-random-test.c",
1645    ],
1646    defaults: ["kselftest_template_defaults"],
1647    static_libs: ["libcap"],
1648}
1649
1650cc_test {
1651    name: "kselftest_vm_tests_mlock2-tests",
1652    stem: "mlock2-tests",
1653    relative_install_path: "vts_linux_kselftest/vm",
1654    srcs: [
1655        "tools/testing/selftests/vm/mlock2-tests.c",
1656    ],
1657    defaults: ["kselftest_template_defaults"],
1658    static_libs: ["libcap"],
1659}
1660
1661cc_test {
1662    name: "kselftest_vm_tests_on-fault-limit",
1663    stem: "on-fault-limit",
1664    relative_install_path: "vts_linux_kselftest/vm",
1665    srcs: [
1666        "tools/testing/selftests/vm/on-fault-limit.c",
1667    ],
1668    defaults: ["kselftest_template_defaults"],
1669    static_libs: ["libcap"],
1670}
1671
1672cc_test {
1673    name: "kselftest_vm_tests_mremap_dontunmap",
1674    stem: "mremap_dontunmap",
1675    relative_install_path: "vts_linux_kselftest/vm",
1676    srcs: [
1677        "tools/testing/selftests/vm/mremap_dontunmap.c",
1678    ],
1679    defaults: ["kselftest_template_defaults"],
1680    static_libs: ["libcap"],
1681}
1682
1683cc_test {
1684    name: "kselftest_vm_tests_mremap_test",
1685    stem: "mremap_test",
1686    relative_install_path: "vts_linux_kselftest/vm",
1687    srcs: [
1688        "tools/testing/selftests/vm/mremap_test.c",
1689    ],
1690    defaults: ["kselftest_template_defaults"],
1691    static_libs: ["libcap"],
1692}
1693
1694cc_test {
1695    name: "kselftest_vm_tests_userfaultfd",
1696    stem: "userfaultfd",
1697    relative_install_path: "vts_linux_kselftest/vm",
1698    srcs: [
1699        "tools/testing/selftests/vm/userfaultfd.c",
1700    ],
1701    defaults: ["kselftest_template_defaults"],
1702    static_libs: [
1703        "libcap",
1704        "kselftest_vm_util",
1705    ],
1706}
1707
1708cc_test {
1709    name: "kselftest_vm_tests_thuge-gen",
1710    stem: "thuge-gen",
1711    relative_install_path: "vts_linux_kselftest/vm",
1712    srcs: [
1713        "tools/testing/selftests/vm/thuge-gen.c",
1714    ],
1715    defaults: ["kselftest_template_defaults"],
1716    static_libs: ["libcap"],
1717}
1718
1719cc_test {
1720    name: "kselftest_vm_tests_transhuge-stress",
1721    stem: "transhuge-stress",
1722    relative_install_path: "vts_linux_kselftest/vm",
1723    srcs: [
1724        "tools/testing/selftests/vm/transhuge-stress.c",
1725    ],
1726    defaults: ["kselftest_template_defaults"],
1727    static_libs: ["libcap"],
1728}
1729
1730cc_test {
1731    name: "kselftest_vm64_tests",
1732    stem: "virtual_address_range",
1733    relative_install_path: "vts_linux_kselftest/vm",
1734    srcs: [
1735        "tools/testing/selftests/vm/virtual_address_range.c",
1736    ],
1737    defaults: ["kselftest_template_defaults"],
1738    enabled: false,
1739    arch: {
1740        arm64: {
1741            enabled: true,
1742            cflags: ["-D__aarch64__"],
1743        },
1744    },
1745}
1746
1747sh_test {
1748    name: "kselftest_vm_run_vmtests",
1749    sub_dir: "vts_linux_kselftest/vm",
1750    src: "tools/testing/selftests/vm/run_vmtests.sh",
1751    filename_from_src: true,
1752    compile_multilib: "both",
1753    //data: [
1754    //    ":kselftest_vm_tests_mlock-random-test",
1755    //    ":kselftest_vm_tests_mlock2-tests",
1756    //    ":kselftest_vm_tests_on-fault-limit",
1757    //    ":kselftest_vm_tests_mremap_dontunmap",
1758    //    ":kselftest_vm_tests_mremap_test",
1759    //    ":kselftest_vm_tests_userfaultfd",
1760    //    ":kselftest_vm_tests_thuge-gen",
1761    //],
1762    //test_config_template: ":kselftest_template",
1763}
1764
1765// x86 tests
1766cc_test {
1767    name: "kselftest_x86_tests_single_step_syscall",
1768    stem: "single_step_syscall",
1769    relative_install_path: "vts_linux_kselftest/x86",
1770    srcs: [
1771        "tools/testing/selftests/x86/single_step_syscall.c",
1772    ],
1773    enabled: false,
1774    arch: {
1775        x86_64: {
1776            enabled: true,
1777        },
1778        x86: {
1779            enabled: true,
1780        },
1781    },
1782    static_libs: [
1783        "libdl",
1784    ],
1785    cflags: [
1786        "-O2",
1787        "-pthread",
1788    ],
1789    c_std: "gnu99",
1790    static_executable: true,
1791    defaults: ["kselftest_template_defaults"],
1792}
1793
1794cc_test {
1795    name: "kselftest_x86_tests_syscall_nt",
1796    stem: "syscall_nt",
1797    relative_install_path: "vts_linux_kselftest/x86",
1798    srcs: [
1799        "tools/testing/selftests/x86/syscall_nt.c",
1800    ],
1801    enabled: false,
1802    arch: {
1803        x86_64: {
1804            enabled: true,
1805        },
1806        x86: {
1807            enabled: true,
1808        },
1809    },
1810    static_libs: [
1811        "libdl",
1812    ],
1813    cflags: [
1814        "-O2",
1815        "-pthread",
1816    ],
1817    c_std: "gnu99",
1818    static_executable: true,
1819    defaults: ["kselftest_template_defaults"],
1820}
1821
1822cc_test {
1823    name: "kselftest_x86_tests_test_mremap_vdso",
1824    stem: "test_mremap_vdso",
1825    relative_install_path: "vts_linux_kselftest/x86",
1826    srcs: [
1827        "tools/testing/selftests/x86/test_mremap_vdso.c",
1828    ],
1829    enabled: false,
1830    arch: {
1831        x86_64: {
1832            enabled: true,
1833        },
1834        x86: {
1835            enabled: true,
1836        },
1837    },
1838    static_libs: [
1839        "libdl",
1840    ],
1841    cflags: [
1842        "-O2",
1843        "-pthread",
1844    ],
1845    c_std: "gnu99",
1846    static_executable: true,
1847    defaults: ["kselftest_template_defaults"],
1848}
1849
1850cc_test {
1851    name: "kselftest_x86_tests_ldt_gdt",
1852    stem: "ldt_gdt",
1853    relative_install_path: "vts_linux_kselftest/x86",
1854    srcs: [
1855        "tools/testing/selftests/x86/ldt_gdt.c",
1856    ],
1857    enabled: false,
1858    arch: {
1859        x86_64: {
1860            enabled: true,
1861        },
1862        x86: {
1863            enabled: true,
1864        },
1865    },
1866    static_libs: [
1867        "libdl",
1868    ],
1869    cflags: [
1870        "-O2",
1871        "-pthread",
1872    ],
1873    c_std: "gnu99",
1874    static_executable: true,
1875    defaults: ["kselftest_template_defaults"],
1876}
1877
1878cc_test {
1879    name: "kselftest_x86_tests_syscall_arg_fault",
1880    stem: "syscall_arg_fault",
1881    relative_install_path: "vts_linux_kselftest/x86",
1882    srcs: [
1883        "tools/testing/selftests/x86/syscall_arg_fault.c",
1884    ],
1885    enabled: false,
1886    arch: {
1887        x86_64: {
1888            enabled: true,
1889        },
1890        x86: {
1891            enabled: true,
1892        },
1893    },
1894    static_libs: [
1895        "libdl",
1896    ],
1897    cflags: [
1898        "-O2",
1899        "-pthread",
1900    ],
1901    c_std: "gnu99",
1902    static_executable: true,
1903    defaults: ["kselftest_template_defaults"],
1904}
1905
1906cc_test {
1907    name: "kselftest_x86_tests_entry_from_vm86",
1908    stem: "entry_from_vm86",
1909    relative_install_path: "vts_linux_kselftest/x86",
1910    srcs: [
1911        "tools/testing/selftests/x86/entry_from_vm86.c",
1912    ],
1913    enabled: false,  //missing sys/vm86.h
1914    static_libs: [
1915        "libdl",
1916    ],
1917    cflags: [
1918        "-O2",
1919        "-pthread",
1920    ],
1921    c_std: "gnu99",
1922    static_executable: true,
1923    defaults: ["kselftest_template_defaults"],
1924}
1925
1926cc_test {
1927    name: "kselftest_x86_tests_unwind_vdso",
1928    stem: "unwind_vdso",
1929    relative_install_path: "vts_linux_kselftest/x86",
1930    srcs: [
1931        "tools/testing/selftests/x86/unwind_vdso.c",
1932    ],
1933    compile_multilib: "32",
1934    enabled: false,
1935    arch: {
1936        x86: {
1937            enabled: true,
1938        },
1939    },
1940    static_libs: [
1941        "libdl",
1942    ],
1943    cflags: [
1944        "-O2",
1945        "-pthread",
1946    ],
1947    c_std: "gnu99",
1948    static_executable: true,
1949    defaults: ["kselftest_template_defaults"],
1950}
1951
1952cc_test {
1953    name: "kselftest_x86_tests_test_FCMOV",
1954    stem: "test_FCMOV",
1955    relative_install_path: "vts_linux_kselftest/x86",
1956    srcs: [
1957        "tools/testing/selftests/x86/test_FCMOV.c",
1958    ],
1959    compile_multilib: "32",
1960    enabled: false,
1961    arch: {
1962        x86: {
1963            enabled: true,
1964        },
1965    },
1966    static_libs: [
1967        "libdl",
1968    ],
1969    cflags: [
1970        "-O2",
1971        "-pthread",
1972    ],
1973    c_std: "gnu99",
1974    static_executable: true,
1975    defaults: ["kselftest_template_defaults"],
1976}
1977
1978cc_test {
1979    name: "kselftest_x86_tests_test_FCOMI",
1980    stem: "test_FCOMI",
1981    relative_install_path: "vts_linux_kselftest/x86",
1982    srcs: [
1983        "tools/testing/selftests/x86/test_FCOMI.c",
1984    ],
1985    compile_multilib: "32",
1986    enabled: false,
1987    arch: {
1988        x86: {
1989            enabled: true,
1990        },
1991    },
1992    static_libs: [
1993        "libdl",
1994    ],
1995    cflags: [
1996        "-O2",
1997        "-pthread",
1998    ],
1999    c_std: "gnu99",
2000    static_executable: true,
2001    defaults: ["kselftest_template_defaults"],
2002}
2003
2004cc_test {
2005    name: "kselftest_x86_tests_test_FISTTP",
2006    stem: "test_FISTTP",
2007    relative_install_path: "vts_linux_kselftest/x86",
2008    srcs: [
2009        "tools/testing/selftests/x86/test_FISTTP.c",
2010    ],
2011    compile_multilib: "32",
2012    enabled: false,
2013    arch: {
2014        x86: {
2015            enabled: true,
2016        },
2017    },
2018    static_libs: [
2019        "libdl",
2020    ],
2021    cflags: [
2022        "-O2",
2023        "-pthread",
2024    ],
2025    c_std: "gnu99",
2026    static_executable: true,
2027    defaults: ["kselftest_template_defaults"],
2028}
2029
2030cc_test {
2031    name: "kselftest_x86_tests_vdso_restorer",
2032    stem: "vdso_restorer",
2033    relative_install_path: "vts_linux_kselftest/x86",
2034    srcs: [
2035        "tools/testing/selftests/x86/vdso_restorer.c",
2036    ],
2037    compile_multilib: "32",
2038    enabled: false,
2039    arch: {
2040        x86: {
2041            enabled: true,
2042        },
2043    },
2044    static_libs: [
2045        "libdl",
2046    ],
2047    cflags: [
2048        "-O2",
2049        "-pthread",
2050    ],
2051    c_std: "gnu99",
2052    static_executable: true,
2053    defaults: ["kselftest_template_defaults"],
2054}
2055
2056cc_test {
2057    name: "kselftest_x86_check_initial_reg_state",
2058    stem: "check_initial_reg_state",
2059    relative_install_path: "vts_linux_kselftest/x86",
2060    srcs: [
2061        "tools/testing/selftests/x86/check_initial_reg_state.c",
2062    ],
2063    enabled: false,
2064    arch: {
2065        x86: {
2066            enabled: true,
2067        },
2068        x86_64: {
2069            enabled: true,
2070        },
2071    },
2072    cflags: [
2073        "-O2",
2074        "-pthread",
2075    ],
2076    c_std: "gnu99",
2077    // check_initial_reg_state is special: it needs a custom entry, and it needs to be static so
2078    // that its interpreter doesn't destroy its initial state.
2079    ldflags: ["-Wl,-ereal_start"],
2080    static_executable: true,
2081    defaults: ["kselftest_template_defaults"],
2082}
2083
2084cc_test {
2085    name: "kselftest_x86_ptrace_syscall",
2086    stem: "ptrace_syscall",
2087    relative_install_path: "vts_linux_kselftest/x86",
2088    srcs: [
2089        "tools/testing/selftests/x86/ptrace_syscall.c",
2090    ],
2091    cflags: [
2092        "-O2",
2093        "-pthread",
2094        "-fomit-frame-pointer",
2095    ],
2096    c_std: "gnu99",
2097    defaults: ["kselftest_template_defaults"],
2098    enabled: false,
2099    arch: {
2100        x86: {
2101            enabled: true,
2102            srcs: [
2103                "tools/testing/selftests/x86/raw_syscall_helper_32.S",
2104            ],
2105        },
2106        x86_64: {
2107            enabled: true,
2108        },
2109    },
2110}
2111
2112cc_test {
2113    name: "kselftest_x86_test_sysret_ss_attrs",
2114    stem: "sysret_ss_attrs",
2115    relative_install_path: "vts_linux_kselftest/x86",
2116    srcs: [
2117        "tools/testing/selftests/x86/sysret_ss_attrs.c",
2118    ],
2119    cflags: [
2120        "-O2",
2121        "-pthread",
2122    ],
2123    c_std: "gnu99",
2124    static_executable: true,
2125    defaults: ["kselftest_template_defaults"],
2126    enabled: false,
2127    arch: {
2128        x86: {
2129            enabled: true,
2130            srcs: [
2131                "tools/testing/selftests/x86/thunks_32.S",
2132            ],
2133        },
2134        x86_64: {
2135            enabled: true,
2136            srcs: [
2137                "tools/testing/selftests/x86/thunks.S",
2138            ],
2139        },
2140    },
2141}
2142
2143cc_test {
2144    name: "kselftest_x86_test_syscall_vdso",
2145    stem: "test_syscall_vdso",
2146    relative_install_path: "vts_linux_kselftest/x86",
2147    srcs: [
2148        "tools/testing/selftests/x86/test_syscall_vdso.c",
2149        "tools/testing/selftests/x86/thunks_32.S",
2150    ],
2151    cflags: [
2152        "-O2",
2153        "-pthread",
2154    ],
2155    c_std: "gnu99",
2156    static_executable: true,
2157    defaults: ["kselftest_template_defaults"],
2158    compile_multilib: "32",
2159    enabled: false,
2160    arch: {
2161        x86: {
2162            enabled: true,
2163        },
2164    },
2165}
2166
2167// zram tests
2168sh_test {
2169    name: "kselftest_zram_zram.sh",
2170    sub_dir: "vts_linux_kselftest/zram",
2171    src: "tools/testing/selftests/zram/zram.sh",
2172    filename_from_src: true,
2173    compile_multilib: "both",
2174}
2175
2176sh_test {
2177    name: "kselftest_zram_zram01.sh",
2178    sub_dir: "vts_linux_kselftest/zram",
2179    src: "tools/testing/selftests/zram/zram01.sh",
2180    filename_from_src: true,
2181    compile_multilib: "both",
2182}
2183
2184sh_test {
2185    name: "kselftest_zram_zram02.sh",
2186    sub_dir: "vts_linux_kselftest/zram",
2187    src: "tools/testing/selftests/zram/zram02.sh",
2188    filename_from_src: true,
2189    compile_multilib: "both",
2190}
2191
2192sh_test {
2193    name: "kselftest_zram_zram_lib.sh",
2194    sub_dir: "vts_linux_kselftest/zram",
2195    src: "tools/testing/selftests/zram/zram_lib.sh",
2196    filename_from_src: true,
2197    compile_multilib: "both",
2198}
2199