1*4882a593Smuzhiyun // SPDX-License-Identifier: GPL-2.0+ 2*4882a593Smuzhiyun /* 3*4882a593Smuzhiyun * xarray.c: Userspace shim for XArray test-suite 4*4882a593Smuzhiyun * Copyright (c) 2018 Matthew Wilcox <willy@infradead.org> 5*4882a593Smuzhiyun */ 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun #define XA_DEBUG 8*4882a593Smuzhiyun #include "test.h" 9*4882a593Smuzhiyun 10*4882a593Smuzhiyun #define module_init(x) 11*4882a593Smuzhiyun #define module_exit(x) 12*4882a593Smuzhiyun #define MODULE_AUTHOR(x) 13*4882a593Smuzhiyun #define MODULE_LICENSE(x) 14*4882a593Smuzhiyun #define dump_stack() assert(0) 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun #include "../../../lib/xarray.c" 17*4882a593Smuzhiyun #undef XA_DEBUG 18*4882a593Smuzhiyun #include "../../../lib/test_xarray.c" 19*4882a593Smuzhiyun xarray_tests(void)20*4882a593Smuzhiyunvoid xarray_tests(void) 21*4882a593Smuzhiyun { 22*4882a593Smuzhiyun xarray_checks(); 23*4882a593Smuzhiyun xarray_exit(); 24*4882a593Smuzhiyun } 25*4882a593Smuzhiyun main(void)26*4882a593Smuzhiyunint __weak main(void) 27*4882a593Smuzhiyun { 28*4882a593Smuzhiyun rcu_register_thread(); 29*4882a593Smuzhiyun radix_tree_init(); 30*4882a593Smuzhiyun xarray_tests(); 31*4882a593Smuzhiyun radix_tree_cpu_dead(1); 32*4882a593Smuzhiyun rcu_barrier(); 33*4882a593Smuzhiyun if (nr_allocated) 34*4882a593Smuzhiyun printf("nr_allocated = %d\n", nr_allocated); 35*4882a593Smuzhiyun rcu_unregister_thread(); 36*4882a593Smuzhiyun return 0; 37*4882a593Smuzhiyun } 38