This fixes a race in migration_thread which results in a deadlock on
boot for some SMP systems. The fix is to to disable preemption inside
of set_cpus_allowed.
Andrew Morton first noticed the problem and provided the following patch
a few weeks back. I was not affected until the recent migration_init
fix, for some odd reason. Neither Andrew nor I think this is actually
kernel preemption's fault but perhaps a race in the tricky behavior of
the migration code.