This is the mail archive of the libc-alpha@sources.redhat.com 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]

open64 on alpha


The kernel automatically forces O_LARGEFILE for 64-bit targets.
Thus the following should also apply to others as well.

Question: Seems like just smushing all the open64 names on the
end of the open syscall changes behaviour wrt __libc_open64.
It goes from a strong name to a weak name.  So I implemented a
"!" notation that allows strong names to be added to the syscall
list as well.  Is this useful, or am I paranoid?

Ok?


r~


	* sysdeps/unix/make-syscalls.sh: Implement ! prefix for strong aliases.
	* sysdeps/unix/sysv/linux/alpha/syscalls.list (open, open64): New.

Index: sysdeps/unix/make-syscalls.sh
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/unix/make-syscalls.sh,v
retrieving revision 1.35
diff -c -p -d -r1.35 make-syscalls.sh
*** sysdeps/unix/make-syscalls.sh	26 Mar 2003 22:49:15 -0000	1.35
--- sysdeps/unix/make-syscalls.sh	20 Jun 2003 16:54:19 -0000
*************** shared-only-routines += $file
*** 202,207 ****
--- 202,212 ----
  	fi
  	echo "	 echo 'symbol_version($source, $base, $ver)'; \\"
  	;;
+       !*)
+ 	name=`echo $name | sed 's/.//'`
+ 	echo "	 echo 'strong_alias ($strong, $name)'; \\"
+ 	echo "	 echo 'libc_hidden_def ($name)'; \\"
+ 	;;
        *)
  	echo "	 echo 'weak_alias ($strong, $name)'; \\"
  	echo "	 echo 'libc_hidden_weak ($name)'; \\"
Index: sysdeps/unix/sysv/linux/alpha/syscalls.list
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/unix/sysv/linux/alpha/syscalls.list,v
retrieving revision 1.57
diff -c -p -d -r1.57 syscalls.list
*** sysdeps/unix/sysv/linux/alpha/syscalls.list	20 Jun 2003 16:24:36 -0000	1.57
--- sysdeps/unix/sysv/linux/alpha/syscalls.list	20 Jun 2003 16:54:20 -0000
*************** ftruncate	-	ftruncate	2	__ftruncate	ftru
*** 32,37 ****
--- 32,39 ----
  truncate	-	truncate	2	truncate	truncate64
  readahead	-	readahead	3	__readahead	readahead
  sendfile	-	sendfile	i:iipi	sendfile	sendfile64
+ open		-	open		Ci:siv	__libc_open	__open open !__libc_open64 __open64 open64
+ open64		open	-
  
  # proper socket implementations:
  accept		-	accept		Ci:iBN	__libc_accept	__accept accept


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