1. You'll need the latest version of odin3 and the USB drivers for Windows. jutley's post on debranding the phone has links to both: http://forum.xda-developers.com/show....php?t=1064894
2. Grab the kernel. It is a tar file for odin with the overclocked kernel and a initramfs with proper modules for the kernel: http://setcpu.com/files/galaxysii_oc_v1.tar
3. Reboot the phone into download mode using ADB:
adb reboot download
4. Flash the kernel using odin3 by placing the tar file in the PDA section and pressing "Start."
5. The phone will reboot automatically.
6. Use SuperOneClick to root your phone if you haven't already. ADB should have root access with this kernel so it'll just work.
7. Grab SetCPU and try 1.504GHz.
Source code (with relevant commit for the overclock. I also enabled the interactive governor in the config): https://github.com/coolbho3k/galaxysii_oc
I haven't gone crazy on the voltages - 1.504GHz is stable at 1375mV on my device. Depending on your device, there may be even more headroom. I've gotten speeds of up to 2GHz to boot with instability (my unstable 1.8GHz Linpack run is currently in the Linpack top 10), but at very high voltages and temperatures. Leave it up to other developers to give you higher/more dangerous frequencies and voltages. If you stress the CPU a ton the phone will become hot to touch (though it does to a certain extent even at stock frequencies - there is not much thermal insulation between the processor and your hands in such a thin phone).
Current features in this kernel: Added 1.504GHz overclocking step (default frequency is still 1.2GHz for safety - use SetCPU to safely raise the frequency) and relevant modifications, 800MHz sleep death fix, interactive governor, ro.secure = 0.
The usual disclaimers apply here. Only do this if you know what you're doing. Though the long term stability/reliability of similar overclocks on other Android based ARM devices is known, this software is provided with no warranty, and I can't be held responsible if you fry your device.
A 1.504MHz overclock:
...breaks over 4000 points in Quadrant:
...and almost 60 MFLOPS in Linpack:
Since Linpack and Quadrant aren't (sufficiently?) multithreaded, you won't see that much improvement over single core Cortex A8 devices at the same clock. But these are dual core phones!
Developers: keep in mind that the Galaxy S II source currently "fixes" voltages on this revision of the Exynos to be 25mV less than what is in the table. Upon boot, the driver will actually print the real voltages at each level (look for ASV voltage_table in the kernel log) if you don't know which chipset revision a particular phone has. The overclock itself is controlled in the s5pv310_apll_pms_table.