1*cf84ac9aSAndroid Build Coastguard Worker /* Generated by ./xlat/gen.sh from ./xlat/nbd_ioctl_flags.in; do not edit. */ 2*cf84ac9aSAndroid Build Coastguard Worker 3*cf84ac9aSAndroid Build Coastguard Worker #include "gcc_compat.h" 4*cf84ac9aSAndroid Build Coastguard Worker #include "static_assert.h" 5*cf84ac9aSAndroid Build Coastguard Worker 6*cf84ac9aSAndroid Build Coastguard Worker #if defined(NBD_FLAG_HAS_FLAGS) || (defined(HAVE_DECL_NBD_FLAG_HAS_FLAGS) && HAVE_DECL_NBD_FLAG_HAS_FLAGS) 7*cf84ac9aSAndroid Build Coastguard Worker DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE 8*cf84ac9aSAndroid Build Coastguard Worker static_assert((NBD_FLAG_HAS_FLAGS) == ((1 << 0)), "NBD_FLAG_HAS_FLAGS != (1 << 0)"); 9*cf84ac9aSAndroid Build Coastguard Worker DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE 10*cf84ac9aSAndroid Build Coastguard Worker #else 11*cf84ac9aSAndroid Build Coastguard Worker # define NBD_FLAG_HAS_FLAGS (1 << 0) 12*cf84ac9aSAndroid Build Coastguard Worker #endif 13*cf84ac9aSAndroid Build Coastguard Worker #if defined(NBD_FLAG_READ_ONLY) || (defined(HAVE_DECL_NBD_FLAG_READ_ONLY) && HAVE_DECL_NBD_FLAG_READ_ONLY) 14*cf84ac9aSAndroid Build Coastguard Worker DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE 15*cf84ac9aSAndroid Build Coastguard Worker static_assert((NBD_FLAG_READ_ONLY) == ((1 << 1)), "NBD_FLAG_READ_ONLY != (1 << 1)"); 16*cf84ac9aSAndroid Build Coastguard Worker DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE 17*cf84ac9aSAndroid Build Coastguard Worker #else 18*cf84ac9aSAndroid Build Coastguard Worker # define NBD_FLAG_READ_ONLY (1 << 1) 19*cf84ac9aSAndroid Build Coastguard Worker #endif 20*cf84ac9aSAndroid Build Coastguard Worker #if defined(NBD_FLAG_SEND_FLUSH) || (defined(HAVE_DECL_NBD_FLAG_SEND_FLUSH) && HAVE_DECL_NBD_FLAG_SEND_FLUSH) 21*cf84ac9aSAndroid Build Coastguard Worker DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE 22*cf84ac9aSAndroid Build Coastguard Worker static_assert((NBD_FLAG_SEND_FLUSH) == ((1 << 2)), "NBD_FLAG_SEND_FLUSH != (1 << 2)"); 23*cf84ac9aSAndroid Build Coastguard Worker DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE 24*cf84ac9aSAndroid Build Coastguard Worker #else 25*cf84ac9aSAndroid Build Coastguard Worker # define NBD_FLAG_SEND_FLUSH (1 << 2) 26*cf84ac9aSAndroid Build Coastguard Worker #endif 27*cf84ac9aSAndroid Build Coastguard Worker #if defined(NBD_FLAG_SEND_FUA) || (defined(HAVE_DECL_NBD_FLAG_SEND_FUA) && HAVE_DECL_NBD_FLAG_SEND_FUA) 28*cf84ac9aSAndroid Build Coastguard Worker DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE 29*cf84ac9aSAndroid Build Coastguard Worker static_assert((NBD_FLAG_SEND_FUA) == ((1 << 3)), "NBD_FLAG_SEND_FUA != (1 << 3)"); 30*cf84ac9aSAndroid Build Coastguard Worker DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE 31*cf84ac9aSAndroid Build Coastguard Worker #else 32*cf84ac9aSAndroid Build Coastguard Worker # define NBD_FLAG_SEND_FUA (1 << 3) 33*cf84ac9aSAndroid Build Coastguard Worker #endif 34*cf84ac9aSAndroid Build Coastguard Worker #if defined(NBD_FLAG_ROTATIONAL) || (defined(HAVE_DECL_NBD_FLAG_ROTATIONAL) && HAVE_DECL_NBD_FLAG_ROTATIONAL) 35*cf84ac9aSAndroid Build Coastguard Worker DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE 36*cf84ac9aSAndroid Build Coastguard Worker static_assert((NBD_FLAG_ROTATIONAL) == ((1 << 4)), "NBD_FLAG_ROTATIONAL != (1 << 4)"); 37*cf84ac9aSAndroid Build Coastguard Worker DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE 38*cf84ac9aSAndroid Build Coastguard Worker #else 39*cf84ac9aSAndroid Build Coastguard Worker # define NBD_FLAG_ROTATIONAL (1 << 4) 40*cf84ac9aSAndroid Build Coastguard Worker #endif 41*cf84ac9aSAndroid Build Coastguard Worker #if defined(NBD_FLAG_SEND_TRIM) || (defined(HAVE_DECL_NBD_FLAG_SEND_TRIM) && HAVE_DECL_NBD_FLAG_SEND_TRIM) 42*cf84ac9aSAndroid Build Coastguard Worker DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE 43*cf84ac9aSAndroid Build Coastguard Worker static_assert((NBD_FLAG_SEND_TRIM) == ((1 << 5)), "NBD_FLAG_SEND_TRIM != (1 << 5)"); 44*cf84ac9aSAndroid Build Coastguard Worker DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE 45*cf84ac9aSAndroid Build Coastguard Worker #else 46*cf84ac9aSAndroid Build Coastguard Worker # define NBD_FLAG_SEND_TRIM (1 << 5) 47*cf84ac9aSAndroid Build Coastguard Worker #endif 48*cf84ac9aSAndroid Build Coastguard Worker #if defined(NBD_FLAG_SEND_WRITE_ZEROES) || (defined(HAVE_DECL_NBD_FLAG_SEND_WRITE_ZEROES) && HAVE_DECL_NBD_FLAG_SEND_WRITE_ZEROES) 49*cf84ac9aSAndroid Build Coastguard Worker DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE 50*cf84ac9aSAndroid Build Coastguard Worker static_assert((NBD_FLAG_SEND_WRITE_ZEROES) == ((1 << 6)), "NBD_FLAG_SEND_WRITE_ZEROES != (1 << 6)"); 51*cf84ac9aSAndroid Build Coastguard Worker DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE 52*cf84ac9aSAndroid Build Coastguard Worker #else 53*cf84ac9aSAndroid Build Coastguard Worker # define NBD_FLAG_SEND_WRITE_ZEROES (1 << 6) 54*cf84ac9aSAndroid Build Coastguard Worker #endif 55*cf84ac9aSAndroid Build Coastguard Worker #if defined(NBD_FLAG_SEND_DF) || (defined(HAVE_DECL_NBD_FLAG_SEND_DF) && HAVE_DECL_NBD_FLAG_SEND_DF) 56*cf84ac9aSAndroid Build Coastguard Worker DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE 57*cf84ac9aSAndroid Build Coastguard Worker static_assert((NBD_FLAG_SEND_DF) == ((1 << 7)), "NBD_FLAG_SEND_DF != (1 << 7)"); 58*cf84ac9aSAndroid Build Coastguard Worker DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE 59*cf84ac9aSAndroid Build Coastguard Worker #else 60*cf84ac9aSAndroid Build Coastguard Worker # define NBD_FLAG_SEND_DF (1 << 7) 61*cf84ac9aSAndroid Build Coastguard Worker #endif 62*cf84ac9aSAndroid Build Coastguard Worker #if defined(NBD_FLAG_CAN_MULTI_CONN) || (defined(HAVE_DECL_NBD_FLAG_CAN_MULTI_CONN) && HAVE_DECL_NBD_FLAG_CAN_MULTI_CONN) 63*cf84ac9aSAndroid Build Coastguard Worker DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE 64*cf84ac9aSAndroid Build Coastguard Worker static_assert((NBD_FLAG_CAN_MULTI_CONN) == ((1 << 8)), "NBD_FLAG_CAN_MULTI_CONN != (1 << 8)"); 65*cf84ac9aSAndroid Build Coastguard Worker DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE 66*cf84ac9aSAndroid Build Coastguard Worker #else 67*cf84ac9aSAndroid Build Coastguard Worker # define NBD_FLAG_CAN_MULTI_CONN (1 << 8) 68*cf84ac9aSAndroid Build Coastguard Worker #endif 69*cf84ac9aSAndroid Build Coastguard Worker #if defined(NBD_FLAG_SEND_RESIZE) || (defined(HAVE_DECL_NBD_FLAG_SEND_RESIZE) && HAVE_DECL_NBD_FLAG_SEND_RESIZE) 70*cf84ac9aSAndroid Build Coastguard Worker DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE 71*cf84ac9aSAndroid Build Coastguard Worker static_assert((NBD_FLAG_SEND_RESIZE) == ((1 << 9)), "NBD_FLAG_SEND_RESIZE != (1 << 9)"); 72*cf84ac9aSAndroid Build Coastguard Worker DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE 73*cf84ac9aSAndroid Build Coastguard Worker #else 74*cf84ac9aSAndroid Build Coastguard Worker # define NBD_FLAG_SEND_RESIZE (1 << 9) 75*cf84ac9aSAndroid Build Coastguard Worker #endif 76*cf84ac9aSAndroid Build Coastguard Worker #if defined(NBD_FLAG_SEND_CACHE) || (defined(HAVE_DECL_NBD_FLAG_SEND_CACHE) && HAVE_DECL_NBD_FLAG_SEND_CACHE) 77*cf84ac9aSAndroid Build Coastguard Worker DIAG_PUSH_IGNORE_TAUTOLOGICAL_COMPARE 78*cf84ac9aSAndroid Build Coastguard Worker static_assert((NBD_FLAG_SEND_CACHE) == ((1 << 10)), "NBD_FLAG_SEND_CACHE != (1 << 10)"); 79*cf84ac9aSAndroid Build Coastguard Worker DIAG_POP_IGNORE_TAUTOLOGICAL_COMPARE 80*cf84ac9aSAndroid Build Coastguard Worker #else 81*cf84ac9aSAndroid Build Coastguard Worker # define NBD_FLAG_SEND_CACHE (1 << 10) 82*cf84ac9aSAndroid Build Coastguard Worker #endif 83*cf84ac9aSAndroid Build Coastguard Worker 84*cf84ac9aSAndroid Build Coastguard Worker #ifndef XLAT_MACROS_ONLY 85*cf84ac9aSAndroid Build Coastguard Worker 86*cf84ac9aSAndroid Build Coastguard Worker # ifdef IN_MPERS 87*cf84ac9aSAndroid Build Coastguard Worker 88*cf84ac9aSAndroid Build Coastguard Worker # error static const struct xlat nbd_ioctl_flags in mpers mode 89*cf84ac9aSAndroid Build Coastguard Worker 90*cf84ac9aSAndroid Build Coastguard Worker # else 91*cf84ac9aSAndroid Build Coastguard Worker 92*cf84ac9aSAndroid Build Coastguard Worker static 93*cf84ac9aSAndroid Build Coastguard Worker const struct xlat nbd_ioctl_flags[] = { 94*cf84ac9aSAndroid Build Coastguard Worker /* 95*cf84ac9aSAndroid Build Coastguard Worker * Some flags are not defined in <linux/nbd.h>, but are passed anyway. 96*cf84ac9aSAndroid Build Coastguard Worker * These flags are sent from nbd-server to the client, and the client 97*cf84ac9aSAndroid Build Coastguard Worker * passes them to the kernel unmodified after parsing. Both the client 98*cf84ac9aSAndroid Build Coastguard Worker * and the kernel ignore flags unknown to them. 99*cf84ac9aSAndroid Build Coastguard Worker */ 100*cf84ac9aSAndroid Build Coastguard Worker 101*cf84ac9aSAndroid Build Coastguard Worker 102*cf84ac9aSAndroid Build Coastguard Worker XLAT(NBD_FLAG_HAS_FLAGS), 103*cf84ac9aSAndroid Build Coastguard Worker 104*cf84ac9aSAndroid Build Coastguard Worker XLAT(NBD_FLAG_READ_ONLY), 105*cf84ac9aSAndroid Build Coastguard Worker 106*cf84ac9aSAndroid Build Coastguard Worker XLAT(NBD_FLAG_SEND_FLUSH), 107*cf84ac9aSAndroid Build Coastguard Worker 108*cf84ac9aSAndroid Build Coastguard Worker XLAT(NBD_FLAG_SEND_FUA), 109*cf84ac9aSAndroid Build Coastguard Worker 110*cf84ac9aSAndroid Build Coastguard Worker XLAT(NBD_FLAG_ROTATIONAL), 111*cf84ac9aSAndroid Build Coastguard Worker 112*cf84ac9aSAndroid Build Coastguard Worker XLAT(NBD_FLAG_SEND_TRIM), 113*cf84ac9aSAndroid Build Coastguard Worker 114*cf84ac9aSAndroid Build Coastguard Worker XLAT(NBD_FLAG_SEND_WRITE_ZEROES), 115*cf84ac9aSAndroid Build Coastguard Worker 116*cf84ac9aSAndroid Build Coastguard Worker XLAT(NBD_FLAG_SEND_DF), 117*cf84ac9aSAndroid Build Coastguard Worker 118*cf84ac9aSAndroid Build Coastguard Worker XLAT(NBD_FLAG_CAN_MULTI_CONN), 119*cf84ac9aSAndroid Build Coastguard Worker 120*cf84ac9aSAndroid Build Coastguard Worker XLAT(NBD_FLAG_SEND_RESIZE), 121*cf84ac9aSAndroid Build Coastguard Worker 122*cf84ac9aSAndroid Build Coastguard Worker XLAT(NBD_FLAG_SEND_CACHE), 123*cf84ac9aSAndroid Build Coastguard Worker XLAT_END 124*cf84ac9aSAndroid Build Coastguard Worker }; 125*cf84ac9aSAndroid Build Coastguard Worker 126*cf84ac9aSAndroid Build Coastguard Worker # endif /* !IN_MPERS */ 127*cf84ac9aSAndroid Build Coastguard Worker 128*cf84ac9aSAndroid Build Coastguard Worker #endif /* !XLAT_MACROS_ONLY */ 129