On Thu, Mar 29, 2007 at 10:10:10AM -0700, Andrew Morton wrote: > > Platform: s390 > > -------------- > > s390 prefers following layout: > > > > int fallocate(int fd, loff_t offset, loff_t len, int mode) > > > > For details on why and how "int, int, loff_t, loff_t" is a problem on > > s390, please see Heiko's mail on 16th March. Here is the link: > > http://www.mail-archive.com/linux-kernel@xxxxxxxxxxxxxxx/msg133595.html > > > > Platform: ppc, arm > > ------------------ > > ppc (32 bit) has a problem with "int, loff_t, loff_t, int" layout, > > since this will result in a pad between fd and offset, making seven > > arguments total - which is not supported by ppc32. It supports only > > 6 arguments. Thus the desired layout by ppc32 is: > > > > int fallocate(int fd, int mode, loff_t offset, loff_t len) > > > > Even ARM prefers above kind of layout. For details please see the > > definition of sys_arm_sync_file_range(). > > This is a clean-looking option. Can s390 be changed to support seven-arg > syscalls? Wouldn't int fallocate(loff_t offset, loff_t len, int fd, int mode) work on both s390 and ppc/arm? glibc will certainly wrap it and reorder the arguments as needed, so there is no need to keep fd first. Jakub - To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html