Hi, i am sure but it works for me. actually, it little strange, because, after modification, first time, it getting segfaults, later, it works fine. flags in util-linux-2.23 was created automatically. musl linux system could be set by this method: https://github.com/pikhq/bootstrap-linux/issues/8 https://github.com/pikhq/bootstrap-linux/issues/9 http://plan9assembler.wordpress.com/2013/04/26/bootstrap-linux-musl-cross/ gcc-4.8 CC = gcc -std=gnu99 CCDEPMODE = depmode=gcc3 CFLAGS = -g -O2 CPP = gcc -E TIA On Mon, May 27, 2013 at 11:29 PM, Szabolcs Nagy wrote: > * plan9assembler [2013-05-27 23:05:37 +0900]: > > util-linux-2.23 mount segfault error seems to be solved. > > no more segfault error, when i test mount binary. > > > > i modified follow macros in musl /include/bits/ioctl.h and musl libc > > reinstalled. > > > > - #define _IOR(a,b,c) _IOC(2,(a),(b),sizeof(c)) > > - #define _IOWR(a,b,c) _IOC(3,(a),(b),sizeof(c)) > > > > + #define _IOR(a,b,c) _IOC(2U,(a),(b),sizeof(c)) > > + #define _IOWR(a,b,c) _IOC(3U,(a),(b),sizeof(c)) > > > > hm are you sure this was the change that solved the segfault? > > that would be scary since the linux headers have signed > int left shift overflows in many places > (and as far as i know users of those headers dont use > special compilation flags to make signed overflow > well-defined like gcc -fwrapv) > > which compiler did you use and with what flags? > (this could break a lot of legacy code) >