Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Dear all, I was wondering where the trampoline code went. It is referenced here, and I could find some code in an earlier distro, but I can't find it in the 2.6.38 kernel. Can you explain to me the path of execution, if trampoline.S is not there anymore? Thanks.

share|improve this question
up vote 4 down vote accepted

When the x86_64 a.k.a. amd64 architecture was introduced in the Linux kernel tree, it was in a separate subtree from i386. So there was arch/i386/kernel/trampoline.S on one side and arch/x86_64/kernel/trampoline.S on the other side.

The two architectures were merged in 2.6.24. This was done because there was a lot of code in common — after all, all x86-64 processors are x86 processors. At the time, ppc and ppc64 were already together, and it was decided to merge x86 and x86-64 as well, into a single x86 architecture.

Some files are specific to one or the other subarchitectures, so the two versions remain alongside each other: arch/x86/kernel/trampoline_32.S moved from arch/i386/kernel/trampoline.S, and arch/x86/kernel/trampoline_64.S moved from arch/x86_64/kernel/trampoline.S.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.