1. 12 Nov, 2016 4 commits
    • Kir Kolyshkin's avatar
      fix asm syntax to be clang-compatible · 6c7eb2ee
      Kir Kolyshkin authored
      I'm unsure where all these %%s before register names comes from,
      but they confuse clang, like this:
      
      > criu/arch/arm/parasite-head.S:6:6: error: unexpected token in operand
      >  sub %r2, %pc, #8 @ get the address of this instruction
      >     ^
      
      This patch looks scary, but all it does is removing %s before
      register names, fixing a few "many spaces instead of a tab" issues
      along the way.
      
      travis-ci: success for Fixes to compile on arm with clang
      Cc: Christopher Covington <cov@codeaurora.org>
      Dmitry Safonov <dsafonov@virtuozzo.com>
      Signed-off-by: 's avatarKir Kolyshkin <kir@openvz.org>
      Reviewed-by: 's avatarChristopher Covington <cov@codeaurora.org>
      Signed-off-by: 's avatarPavel Emelyanov <xemul@virtuozzo.com>
      6c7eb2ee
    • Kir Kolyshkin's avatar
      Use rlim_t where appropriate · d6d034a9
      Kir Kolyshkin authored
      I got the following then trying to compile CRIU on ARM with clang:
      
      > criu/cr-restore.c:2476:22: error: implicit conversion from 'unsigned
      > long long' to 'unsigned long' changes value from 18446744073709551615 to
      > 4294967295 [-Werror,-Wconstant-conversion]
      >         return ival == -1 ? RLIM_INFINITY : ival;
      >         ~~~~~~              ^~~~~~~~~~~~~
      > /usr/include/arm-linux-gnueabihf/bits/resource.h:117:24: note: expanded
      > from macro 'RLIM_INFINITY'
      > # define RLIM_INFINITY 0xffffffffffffffffuLL
      >                        ^~~~~~~~~~~~~~~~~~~~~
      > 1 error generated.
      
      Fix by using provided rlim_t type in this and similar places.
      
      travis-ci: success for Fixes to compile on arm with clang
      Signed-off-by: 's avatarKir Kolyshkin <kir@openvz.org>
      Signed-off-by: 's avatarPavel Emelyanov <xemul@virtuozzo.com>
      d6d034a9
    • Kir Kolyshkin's avatar
      arm: rm -Wa from CFLAGS · 70e3b465
      Kir Kolyshkin authored
      Somehow clang doesn't always like -Wa flags, for example when making
      dependencies (see commit 9303ed3 ("Makefiles: move -Wa,--noexecstack
      out of CFLAGS"), which causes build break, scary error messages, and
      even hair loss.
      
      There are many ways to solve this. This patch employs the one
      that is simple and clean.
      
      The -Wa,-mimplicit-it=always flag was added by commit 79c4b747
      ("arm: fix compilation on ARMv7"). The reason is, ARM needs an IT
      instruction before certain conditionals. Those IT instructions are
      almost always automatically generated by assembler itself, but in some
      cases a special assembler flag (like the one above) is needed.
      
      As there is only one place in the code that need IT, it's easy to patch
      it (add explicit IT) and remove the flag. Note that "IT" generates
      no machine code per se, so there should not be any functional change
      (although I haven't checked it).
      
      For more info on IT, see http://tinyurl.com/z3ldsdr
      
      Hope for a review from our ARM experts.
      
      travis-ci: success for Fixes to compile on arm with clang
      Cc: Christopher Covington <cov@codeaurora.org>
      Cc: Dmitry Safonov <dsafonov@virtuozzo.com>
      Cc: Cyrill Gorcunov <gorcunov@openvz.org>
      Signed-off-by: 's avatarKir Kolyshkin <kir@openvz.org>
      Signed-off-by: 's avatarPavel Emelyanov <xemul@virtuozzo.com>
      70e3b465
    • Kir Kolyshkin's avatar
      criu(8): typos · 1dc67ae8
      Kir Kolyshkin authored
      A couple of typos.
      Signed-off-by: 's avatarKir Kolyshkin <kir@openvz.org>
      Signed-off-by: 's avatarPavel Emelyanov <xemul@virtuozzo.com>
      1dc67ae8
  2. 08 Nov, 2016 1 commit
  3. 04 Nov, 2016 1 commit
  4. 03 Nov, 2016 34 commits