LVS
lvs-devel
Google
 
Web LinuxVirtualServer.org

Re: [RFC PATCH 1/9] ipvs network name space aware

To: Hans Schillstrom <hans.schillstrom@xxxxxxxxxxxx>
Subject: Re: [RFC PATCH 1/9] ipvs network name space aware
Cc: "paulmck@xxxxxxxxxxxxxxxxxx" <paulmck@xxxxxxxxxxxxxxxxxx>, Daniel Lezcano <daniel.lezcano@xxxxxxx>, "lvs-devel@xxxxxxxxxxxxxxx" <lvs-devel@xxxxxxxxxxxxxxx>, "netdev@xxxxxxxxxxxxxxx" <netdev@xxxxxxxxxxxxxxx>, "netfilter-devel@xxxxxxxxxxxxxxx" <netfilter-devel@xxxxxxxxxxxxxxx>, "horms@xxxxxxxxxxxx" <horms@xxxxxxxxxxxx>, "ja@xxxxxx" <ja@xxxxxx>, "wensong@xxxxxxxxxxxx" <wensong@xxxxxxxxxxxx>
From: Eric Dumazet <eric.dumazet@xxxxxxxxx>
Date: Thu, 21 Oct 2010 10:01:12 +0200
Le jeudi 21 octobre 2010 à 09:45 +0200, Hans Schillstrom a écrit :
> I do have this (and some debuging)
> __rcu_read_lock()
> => 0xffffffff8108bcf3 <+0>:   push   %rbp
>    0xffffffff8108bcf4 <+1>:   mov    %rsp,%rbp
>    0xffffffff8108bcf7 <+4>:   nopl   0x0(%rax,%rax,1)
>    0xffffffff8108bcfc <+9>:   mov    %gs:0xb540,%rax
>    0xffffffff8108bd05 <+18>:  mov    0x108(%rax),%edx
>    0xffffffff8108bd0b <+24>:  inc    %edx
>    0xffffffff8108bd0d <+26>:  mov    %edx,0x108(%rax)
>    0xffffffff8108bd13 <+32>:  leaveq
>    0xffffffff8108bd14 <+33>:  retq
> 
> which is not that many, actually imprerssing few instructions :-)

nopl   0x0(%rax,%rax,1) is a filler because of extra instrumentation in
your kernel.

Maybe you could find out why your compiler dont use

        incl 0x108(%rax)

instead of

        mov    0x108(%rax),%edx
        inc    %edx
        mov    %edx,0x108(%rax)


So rcu_read_lock() is really _two_ instructions.

I agree with Paul with the "few" qualification... :-)



--
To unsubscribe from this list: send the line "unsubscribe lvs-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

<Prev in Thread] Current Thread [Next in Thread>