On 02/20/2012 11:34 PM, Dmitry V. Levin wrote:
> On Tue, Feb 07, 2012 at 02:14:11PM +0100, Denys Vlasenko wrote:
>> On 02/07/2012 01:17 PM, Dmitry V. Levin wrote:
>>>> I noticed that this structure member is used only if
>>>> we have more than one personality.
>>>
>>> This native_scno thing is not so much used in the code than before.
>>> For example, there are 21 initialized native_scno entries in
>>> linux/i386/syscallent.h:
>>>
>>>     { 1,    TP,     sys_exit,               "_exit", SYS_exit }, /* 1 */
>>>     { 0,    TP,     sys_fork,               "fork", SYS_fork }, /* 2 */
>>>     { 3,    TD,     sys_read,               "read", SYS_read }, /* 3 */
>>>     { 3,    TD,     sys_write,              "write", SYS_write }, /* 4 */
>>>     { 3,    TP,     sys_waitpid,            "waitpid", SYS_wait4 }, /* 7 */
>>>     { 3,    TF|TP,  sys_execve,             "execve", SYS_execve }, /* 11 */
>>>     { 2,    TD,     sys_socketcall,         "socketcall", SYS_socketcall }, 
>>> /* 102 */
>>>     { 4,    TP,     sys_wait4,              "wait4", SYS_wait4 }, /* 114 */
>>>     { 6,    TI,     sys_ipc,                "ipc", SYS_ipc }, /* 117 */
>>>     { 5,    TP,     sys_clone,              "clone", SYS_clone }, /* 120 */
>>>     { 3,    0,      sys_sysfs,              "sysfs", SYS_sysfs }, /* 135 */
>>>     { 3,    TD,     sys_readv,              "readv", SYS_readv }, /* 145 */
>>>     { 3,    TD,     sys_writev,             "writev", SYS_writev }, /* 146 
>>> */
>>>     { 5,    TD,     sys_pread,              "pread64", SYS_read }, /* 180 */
>>>     { 5,    TD,     sys_pwrite,             "pwrite64", SYS_write }, /* 181 
>>> */
>>>     { 0,    TP,     sys_vfork,              "vfork", SYS_vfork }, /* 190 */
>>>     { 5,    TP,     sys_waitid,             "waitid", SYS_waitid }, /* 284 
>>> */
>>>     { 4,    TN,     sys_send,               "send", SYS_sub_send }, /* 409 
>>> */
>>>     { 4,    TN,     sys_recv,               "recv", SYS_sub_recv }, /* 410 
>>> */
>>>     { 6,    TN,     sys_sendto,             "sendto", SYS_sub_sendto }, /* 
>>> 411 */
>>>     { 6,    TN,     sys_recvfrom,           "recvfrom", SYS_sub_recvfrom }, 
>>> /* 412 */
>>
>> Hmm... in fact it's the only arch which has them....
>
> The only arch that uses this feature is x86-64; other two (x86 and ia64)
> where this code is also compiled have no benefits from it.
>
>>> Most of them are no longer used, and I guess all the rest could be
>>> replaced by sys_func checks.
>
> Here it is, tested on x86 and x86-64, please give it a try:
> http://strace.git.sourceforge.net/git/gitweb.cgi?p=strace/strace;a=shortlog;h=ldv/master

Looks good to me.

-- 
vda


------------------------------------------------------------------------------
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d
_______________________________________________
Strace-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/strace-devel

Reply via email to