In an SMP and with a fair scheduling algorithm I'd expect all physical cores of a machine to get used evenly by linux. In theory I believe this is the case, but in practice I suspect not.
Does anyone have any good explanations why an average linux setup might favour core 0 for certain processes? Is that realistically possible? You may assume that processor affinity for all user space processes is bitmasked to 0xFFFFFFFF. No custom changes made to the kernel either.