This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 2/2] Enable ILP32 mode on aarch64


On Wed, Nov 30, 2016 at 04:39:11PM -0800, Steve Ellcey wrote:
> On Wed, 2016-11-30 at 10:06 +0100, Andreas Schwab wrote:
> > ../sysdeps/unix/sysv/linux/generic/rename.c: In function ‘rename’:
> > ../sysdeps/unix/sysv/linux/aarch64/sysdep.h:41:32: error:
> > ‘__NR_renameat’ undeclared (first use in this function)
> >  #define SYS_ify(syscall_name) (__NR_##syscall_name)
> >                                 ^
> > 
> > Andreas.
> 
> Were you able to build a normal aarch64 glibc before?  I do not
> understand what is going on but to fix this I edited my
> /usr/include/aarch64-linux-gnu/asm/unistd.h file to include
> 
> #define __ARCH_WANT_RENAMEAT
> 
> Without this change, even if I build with older non-modified glibc
> sources I am hitting the bug you got above.  I was able to build those
> sources on the same system, with the same compiler before.  I don't
> know why things changed.  My /usr/include/asm/unistd.h header file
> already had that, I am not sure why the two header files were
> different, but my best guess is that somehow that define got removed
> from my kernel header file, but I don't know how that would happen
> since I never changed it.
> 
> Steve Ellcey
> sellcey@caviumnetworks.com

You should also update kernel headers before build.
__ARCH_WANT_RENAMEAT is introduced in kernel series for ILP3 and it makes
a choice to use or not __NR_renameat properly.
https://patchwork.kernel.org/patch/9390105/

Yury


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]