Hi Ingo, Here is the update to the jump patching optimization taking care of Peter's comments about register liveliness and instruction re-use by gcc optimizations. A good thing : it actually simplifies the code. Unfortunately, it adds 3 bytes to the instructions in i-cache because I now have to use a 5-bytes mov instruction so I can replace it with a 5-bytes jump. Therefore, 9 bytes are added to rather small functions (5-bytes mov + 2-bytes test + 2 bytes conditional branch) and 13 bytes are added to larger functions which needs a 6 bytes conditional branch at the branch site. Instead of having to execute a sequence of nop, nop and jump, we now only have to execute the near jump, which jumps either at the address following the conditional branch or at the target address of the conditional branch, depending on the immediate value variable state. Thanks to Peter for the review. Those two patches apply on top of sched-devel.git. Mathieu -- Mathieu Desnoyers Computer Engineering Ph.D. Student, Ecole Polytechnique de Montreal OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68 --
| Fred . | Please add ZFS support (from GPL sources) |
| Kristen Carlson Accardi | Re: PCIe Hotplug: NFG unless I boot with card already inserted. |
| Chuck Ebbert | Why do so many machines need "noapic"? |
| Linus Torvalds | Re: [GIT]: Networking |
git: | |
| Petr Baudis | Re: Cogito: cg-clone doesn't like packed tag objects |
| Andreas Ericsson | Re: [PATCH] git-merge: add option --no-ff |
| Junio C Hamano | GIT 0.99.6 |
| Wayne Scott | git-diff-tree rename detection bug |
| Unix Fan | Re: Vulnerability Note VU#800113 - Multiple DNS implementations vulnerable to cach... |
| Edd Barrett | Iwi, wireless bad behavior |
| jose thomas | Resume - Mumps Developer |
| Girish Venkatachalam | Ethernet jumbo frames? |
| Gregory McGarry | Re: Lock benchmarks |
| Perry E. Metzger | Re: HEADS UP: kqueue support merged |
| Frederick Bruckman | Re: POSIX timer_settime() dosn't set timer in some cases (lost accuracy) |
| jonathan | Re: Interrupt, interrupt threads, continuations, and kernel lwps |
