Skip to contentSkip to conversation

fstatat64 and newfstatat syscalls

parisc-linux Helge Deller 4 participants 5 messages Dec 22, 2006 – Dec 27, 2006 4 messages not in the archive

lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): [email protected]

#1 lore raw
Quoted 4 lines · Helge Deller

Hi Grant,

I think we have some wrong assignments with above $TOPIC syscalls.

Quoted 8 lines

I found this mail and CVS patch from you:
http://lists.parisc-linux.org/pipermail/parisc-linux-cvs/2006-February/036543.html
http://cvs.parisc-linux.org/linux-2.6/arch/parisc/kernel/syscall_table.S.diff?cvsroot=&r1=1.22&r2=1.23

but currently we have:
arch/parisc/kernel/syscall_table.S: ENTRY_SAME(fstatat64) /* 280 */
while in:
include/asm-parisc/unistd.h: #define __NR_newfstatat (__NR_Linux + 280)

I think the right solution is to change current line in unistd.h to this:
include/asm-parisc/unistd.h: #define __NR_fstatat64 (__NR_Linux + 280)

The fstatat testcase from LTP passes with then this change as well...

Helge
_______________________________________________
parisc-linux mailing list
[email protected]
http://lists.parisc-linux.org/mailman/listinfo/parisc-linux

A message that is not in the archive (sent off-list or not yet received): [email protected]

#3 lore raw
Quoted 7 lines · Helge Deller
Quoted 6 lines · Helge Deller

Hi Grant,

I think we have some wrong assignments with above $TOPIC syscalls.

I found this mail and CVS patch from you:
http://lists.parisc-linux.org/pipermail/parisc-linux-cvs/2006-February/036543.html

Yeah - I wasn't that confident in that change. My main goal was to get the build working again. I didn't have any way to prove it was correct.

Quoted 9 lines
Quoted 6 lines

http://cvs.parisc-linux.org/linux-2.6/arch/parisc/kernel/syscall_table.S.diff?cvsroot=&r1=1.22&r2=1.23

but currently we have:
arch/parisc/kernel/syscall_table.S: ENTRY_SAME(fstatat64) /* 280 */
while in:
include/asm-parisc/unistd.h: #define __NR_newfstatat (__NR_Linux + 280)

I think the right solution is to change current line in unistd.h to this:
include/asm-parisc/unistd.h: #define __NR_fstatat64 (__NR_Linux + 280)

Yeah. That looks better to me too.
I suspect I assumed fstatat64 and newfsatat would be equivalent in all contexts.

Quoted 1 line

The fstatat testcase from LTP passes with then this change as well...

Excellent - thanks for fixing!

grant

Quoted 6 lines

Helge
_______________________________________________
parisc-linux mailing list
[email protected]
http://lists.parisc-linux.org/mailman/listinfo/parisc-linux

#4 lore raw
In reply to a message not in the archive
Quoted 7 lines · Helge Deller
Quoted 4 lines

but currently we have:
arch/parisc/kernel/syscall_table.S: ENTRY_SAME(fstatat64) /* 280 */
while in:
include/asm-parisc/unistd.h: #define __NR_newfstatat (__NR_Linux + 280)

I think the right solution is to change current line in unistd.h to this:
include/asm-parisc/unistd.h: #define __NR_fstatat64 (__NR_Linux + 280)

Umm, isn't this a public ABI change? would it be better to assign a new syscall number and cope correctly with the old one?

I'm wondering what this means to things that are already compiled...

Signature · 1 line
Jeff Bailey - http://www.raspberryginger.com/jbailey/

A message that is not in the archive (sent off-list or not yet received): [email protected]

#6 lore raw
Quoted 4 lines · Jeff Bailey

Umm, isn't this a public ABI change? would it be better to assign a new syscall number and cope correctly with the old one?

Meh. I doubt it will be a problem.

A message that is not in the archive (sent off-list or not yet received): [email protected]

#8 lore raw
Quoted 22 lines · Grant Grundler
Quoted 7 lines · Helge Deller
Quoted 6 lines · Helge Deller

Hi Grant,

I think we have some wrong assignments with above $TOPIC syscalls.

I found this mail and CVS patch from you:
http://lists.parisc-linux.org/pipermail/parisc-linux-cvs/2006-February/036543.html

Yeah - I wasn't that confident in that change. My main goal was to get the build working again. I didn't have any way to prove it was correct.

Quoted 9 lines
Quoted 6 lines

http://cvs.parisc-linux.org/linux-2.6/arch/parisc/kernel/syscall_table.S.diff?cvsroot=&r1=1.22&r2=1.23

but currently we have:
arch/parisc/kernel/syscall_table.S: ENTRY_SAME(fstatat64) /* 280 */
while in:
include/asm-parisc/unistd.h: #define __NR_newfstatat (__NR_Linux + 280)

I think the right solution is to change current line in unistd.h to this:
include/asm-parisc/unistd.h: #define __NR_fstatat64 (__NR_Linux + 280)

Quoted 6 lines

Yeah. That looks better to me too.
I suspect I assumed fstatat64 and newfsatat would be equivalent in all contexts.

Quoted 1 line

The fstatat testcase from LTP passes with then this change as well...

Excellent - thanks for fixing!

I just committed this change...

Helge
_______________________________________________
parisc-linux mailing list
[email protected]
http://lists.parisc-linux.org/mailman/listinfo/parisc-linux