Xiao Yang <yangx.jy@xxxxxxxxxxxxxx> writes: > [root@RHEL6U9GA_Intel64 blktests]# make > make -C src all > make[1]: Entering directory `/root/blktests/src' > cc -Wall -o sg/syzkaller1 -O2 sg/syzkaller1.c > sg/syzkaller1.c: In function ‘segv_handler’: > sg/syzkaller1.c:118: warning: implicit declaration of function > ‘__atomic_load_n’ > sg/syzkaller1.c:118: error: ‘__ATOMIC_RELAXED’ undeclared (first use > in this function) > sg/syzkaller1.c:118: error: (Each undeclared identifier is reported > only once > sg/syzkaller1.c:118: error: for each function it appears in.) > sg/syzkaller1.c: In function ‘syz_open_dev’: > sg/syzkaller1.c:204: warning: implicit declaration of function > ‘__atomic_fetch_add’ > sg/syzkaller1.c:204: error: ‘__ATOMIC_SEQ_CST’ undeclared (first use > in this function) > sg/syzkaller1.c:204: warning: implicit declaration of function > ‘__atomic_fetch_sub’ > sg/syzkaller1.c: In function ‘test’: > sg/syzkaller1.c:406: error: ‘__ATOMIC_SEQ_CST’ undeclared (first use > in this function) > make[1]: *** [sg/syzkaller1] Error 1 > make[1]: Leaving directory `/root/blktests/src' > make: *** [all] Error 2 > ----------------------------------------------------------------------------------------------------------------------- > > It seems that __atomic_* functions are not available, and could you > tell me how to fix > the compiler error? It seems like gcc 4.4 is too old to handle __ATOMIC_*. The oldest version of gcc I tried was 4.8 which could handle this code perfectly fine. I think we need hacks in the makefile to see which compiler version we have and conditionally compile the code. Byte, Johannes -- Johannes Thumshirn Storage jthumshirn@xxxxxxx +49 911 74053 689 SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: Felix Imendörffer, Jane Smithard, Graham Norton HRB 21284 (AG Nürnberg) Key fingerprint = EC38 9CAB C2C4 F25D 8600 D0D0 0393 969D 2D76 0850