[Kos-dev] Semaphores sous Linux

David Decotigny david.decotigny at free.fr
Thu Jun 24 13:03:28 CEST 2004


Thomas Petazzoni wrote:
> Mais pour une instruction, ça vaut le coup de rendre le code aussi peu
> lisible et aussi imbitable ?

Ce n'est pas 1 instruction en plus, et qu'on peut eviter par ailleurs 
(jmp 3f) qui pollue le cache. C'est la serie d'instructions qui appelle 
down_write_failed qui le polluerait, et qui est evité avec leur solution :

     1c74:       51                      push   %ecx
     1c75:       e8 fc ff ff ff          call   1c76 <.text.lock.fork+0x2>
     1c7a:       59                      pop    %ecx
     1c7b:       e9 72 e8 ff ff          jmp    4f2 <copy_mm+0x12a>

Soit 12 octets en moins ! Ce qui correspond presque a 1 ligne de cache 
sur les vieux pentiums.

Enfin, j'aimerais bien connaitre la vraie raison, car c'est peut-etre 
pas celle-la.

-- 
David Decotigny -- http://david.decotigny.free.fr


More information about the Kos-dev mailing list