Thanks Valdis,
I thought similar way and it's clearer. Probably bit 0 of the sys_call_table 
contains whether it's using fast syscal.
But I couldn't find the code setting bit 0. I'll try later when I'm done with 
more urgent things.
Thank you!
Chan
________________________________
From : "[email protected]" <[email protected]>
Sent : 2014-03-28 22:36:27 ( +09:00 )
To : Chan Kim <[email protected]>
Cc : [email protected] <[email protected]>
Subject : Re: in sparc linux system call entry assembly code

On Fri, 28 Mar 2014 07:25:37 -0000, 김찬 said:
> andcc %l7, 1, %g0
> bne linux_fast_syscall

> Then what is this "andcc %l7, 1, %g0" doing?

Well, I'm not an expert on Sparc assembler, but.. 'andcc' looks like it's
doing an and, and setting the cc (condition code). Then 'bne' branch not
equal. Looks to me like it's testing a bit in the just-loaded address
to see if it's flagged as using the fast_syscall code. Go check the code
that generates the table and see if there is something different about the
way they generate some entries.
_______________________________________________
Kernelnewbies mailing list
[email protected]
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

Reply via email to