<br><br><div class="gmail_quote">2012/5/18 HWSW Development <span dir="ltr"><<a href="mailto:hwsw.development@googlemail.com" target="_blank">hwsw.development@googlemail.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
The macro is defined in arch/x86/include/asm/calling.h<br><br>Regards,<br>Rooney<div class="HOEnZb"><div class="h5"><br><br><div class="gmail_quote">2012/5/18 Bill Traynor <span dir="ltr"><<a href="mailto:wmat@alphatroop.com" target="_blank">wmat@alphatroop.com</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br><br><div class="gmail_quote"><div><div>On Thu, May 17, 2012 at 10:37 PM, ÍõÕÜ <span dir="ltr"><<a href="mailto:wangzhe5004@gmail.com" target="_blank">wangzhe5004@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br><br><div class="gmail_quote"><div><div>2012/5/17 Javier Martinez Canillas <span dir="ltr"><<a href="mailto:martinez.javier@gmail.com" target="_blank">martinez.javier@gmail.com</a>></span><br><blockquote style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid" class="gmail_quote">
<div><div>On Thu, May 17, 2012 at 3:59 PM, ÍõÕÜ <<a href="mailto:wangzhe5004@gmail.com" target="_blank">wangzhe5004@gmail.com</a>> wrote:<br>
> Hi all:<br>
> i am a kernelnewbies.during studying the linux system call,and<br>
> analysis the following code (linux kernel 2.6.38)<br>
><br>
> 529ENTRY(system_call)<br>
> 530 RING0_INT_FRAME # can't unwind into user space anyway<br>
> 531 pushl %eax # save orig_eax<br>
> 532 CFI_ADJUST_CFA_OFFSET 4<br>
> 533 SAVE_ALL<br>
> 534 GET_THREAD_INFO(%ebp)<br>
> 535 # system call tracing in operation / emulation<br>
> 536 testl $_TIF_WORK_SYSCALL_ENTRY,TI_flags(%ebp)<br>
> 537 jnz syscall_trace_entry<br>
> 538 cmpl $(nr_syscalls), %eax<br>
> 539 jae syscall_badsys<br>
> 540syscall_call:<br>
> 541 call *sys_call_table(,%eax,4)<br>
> 542 movl %eax,PT_EAX(%esp) # store the return value<br>
><br>
> Question:<br>
> i want to see what the SAVE_ALL have done.and can't find the<br>
> Macro SAVE_ALL<br>
> if anyone knows please help </div></div></blockquote></div></div></div></blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_quote"><div>
<div><blockquote style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid" class="gmail_quote"><div><div>
><br>
> Thanks<br>
><br>
</div></div>> _______________________________________________<br>
> Kernelnewbies mailing list<br>
> <a href="mailto:Kernelnewbies@kernelnewbies.org" target="_blank">Kernelnewbies@kernelnewbies.org</a><br>
> <a href="http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies" target="_blank">http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies</a><br>
><br>
<br>
<a href="http://lxr.free-electrons.com/ident?i=SAVE_ALL" target="_blank">http://lxr.free-electrons.com/ident?i=SAVE_ALL</a><br>
<br></blockquote></div></div><div> Thank you Javier Martinez Canillas for reply!</div><div> but the rearch result :</div><div> Defined as a preprocessor macro in:</div><ul><li><a href="http://lxr.free-electrons.com/source/arch/cris/include/arch-v32/arch/irq.h#L32" target="_blank">arch/cris/include/arch-v32/arch/irq.h, line 32</a></li>
<li>
<a href="http://lxr.free-electrons.com/source/arch/cris/include/arch-v10/arch/irq.h#L85" target="_blank">arch/cris/include/arch-v10/arch/irq.h, line 85</a></li><li><a href="http://lxr.free-electrons.com/source/arch/sparc/include/asm/asmmacro.h#L27" target="_blank">arch/sparc/include/asm/asmmacro.h, line 27</a></li>
</ul><p> is not in x86 Architecture. </p></div></blockquote><div><br></div></div></div><div>Couldn't you find it by doing something like this? In your kernel source tree:</div><div><br></div><div>$cd arch/x86</div>
<div>$grep -ircl ".macro SAVE_ALL" *</div>
<div><br></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="gmail_quote"><div><blockquote style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid" class="gmail_quote">
Best regards,<br>
<span><font color="#888888"><br>
--<br>
Javier Mart¨ªnez Canillas<br>
<a href="tel:%28%2B34%29%20682%2039%2081%2069" value="+34682398169" target="_blank">(+34) 682 39 81 69</a><br>
Barcelona, Spain<br>
</font></span></blockquote></div></div><br>
<br></div><div>_______________________________________________<br>
Kernelnewbies mailing list<br>
<a href="mailto:Kernelnewbies@kernelnewbies.org" target="_blank">Kernelnewbies@kernelnewbies.org</a><br>
<a href="http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies" target="_blank">http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies</a><br>
<br></div></blockquote></div><br>
<br>_______________________________________________<br>
Kernelnewbies mailing list<br>
<a href="mailto:Kernelnewbies@kernelnewbies.org" target="_blank">Kernelnewbies@kernelnewbies.org</a><br>
<a href="http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies" target="_blank">http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies</a><br>
<br></blockquote></div> Thanks for all. <br></div></div></blockquote><div> I have sloved the problem. this macro is written with assembly £¬not c .<br> No wonder that i don't search it out in the <a href="http://lxr.linux.no">lxr.linux.no</a><br>
<br> arch/x86/kernel/entry_32.s<br> <br> 192 .macro SAVE_ALL<br> 193 cld<br> 194 PUSH_GS<br> 195 pushl_cfi %fs<br> 196 /*CFI_REL_OFFSET fs, 0;*/<br> 197 pushl_cfi %es<br> 198 /*CFI_REL_OFFSET es, 0;*/<br>
199 pushl_cfi %ds<br> 200 /*CFI_REL_OFFSET ds, 0;*/<br> 201 pushl_cfi %eax<br> 202 CFI_REL_OFFSET eax, 0<br> 203 pushl_cfi %ebp<br> 204 CFI_REL_OFFSET ebp, 0<br> 205 pushl_cfi %edi<br>
206 CFI_REL_OFFSET edi, 0<br> 207 pushl_cfi %esi<br> 208 CFI_REL_OFFSET esi, 0<br> 209 pushl_cfi %edx<br> 210 CFI_REL_OFFSET edx, 0<br> 211 pushl_cfi %ecx<br> 212 CFI_REL_OFFSET ecx, 0<br>
213 pushl_cfi %ebx<br> 214 CFI_REL_OFFSET ebx, 0<br> 215 movl $(__USER_DS), %edx<br> 216 movl %edx, %ds<br> 217 movl %edx, %es<br> 218 movl $(__KERNEL_PERCPU), %edx<br> 219 movl %edx, %fs<br>
220 SET_KERNEL_GS %edx<br> 221 .endm<br> <br></div></div><br><br clear="all"><br>-- <br><div>----------------------------------------------------------------------------------------------</div><div>WangZhe Xi'an Shanxi CHINA</div>
<div>qq 785924174</div><div>blog <a href="http://blog.163.com/zhe_wang_2009" target="_blank">blog.163.com/zhe_wang_2009</a></div><div>----------------------------------------------------------------------------------------------</div>
<br>