From owner-freebsd-hackers@freebsd.org Thu Aug 6 10:09:13 2015 Return-Path: Delivered-To: freebsd-hackers@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2F73D9B5887 for ; Thu, 6 Aug 2015 10:09:13 +0000 (UTC) (envelope-from tjmaillists@gmx.com) Received: from mout.gmx.net (mout.gmx.net [212.227.17.21]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mout.gmx.net", Issuer "TeleSec ServerPass DE-1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BD526C94 for ; Thu, 6 Aug 2015 10:09:12 +0000 (UTC) (envelope-from tjmaillists@gmx.com) Received: from [151.28.139.29] by 3capp-mailcom-bs01.server.lan (via HTTP); Thu, 6 Aug 2015 12:09:05 +0200 MIME-Version: 1.0 Message-ID: From: "TJ Lee" To: freebsd-hackers@freebsd.org Subject: Trying to understand kernel trap code Content-Type: text/plain; charset=UTF-8 Date: Thu, 6 Aug 2015 12:09:05 +0200 Importance: normal Sensitivity: Normal X-Priority: 3 X-Provags-ID: V03:K0:2TKzMijC80nKhwspf2dY2MgICiKb9Q9Slf9hvr9hvVd JaGH1kWr3bT9/PdJ+HpQWWRVZdP1CfVr5K0S5eFOQ9ubJgxJiV pdmPLEflzvnGKoqhq/Oojf+3goQ1k3NyQO0KmdsQ6e/Hz0OPsV Hrxm+yPM7oDBHke22yvVamF++OtpprKkpLQc4VyPfJvdJbwiw2 TZ6or8+3D8vNKEP2G+t7rY2bVhpSoIWCo9PyE6XpgRCWXFrW1z POz5SJiA4doiNqYkpnXlnpNA6K31E8I5YunCCvVC0+8VknSuOF yHc2/KZO8/Ay/j3EwMHvD2NA9kZ X-UI-Out-Filterresults: notjunk:1;V01:K0:jw4fzeKIEDg=:2dQTyGBKbYSHMxrYkD8ume DpfcTpRsHImgQbi+hUy5Okco28uZu762hPORqG/ChTP/JT32GW5qi+2MyDOe3UGbJG8KL0tJN gYxvV/LAeE8uooE+JpCAB5kYFh7FIVotQ+R7ND2Z9C7BiafYnmHrRdbiRwj3B6e6uF0WspWLs Y2Cdtm0ZcaLTcaNaU9d34abs06+GUC4Nc8iZ2yX8b5CWD/PN2qr3yrgTE0oh4la8vhOeFZSBp GXddLFiUqNnmdl2RnEKUwxHiluKwKTbRIbwsP+u/SFXTuXqOIVHR0WQgMVLLWgc12/L9U1nBn CGjlTTL2hEnIT7nBbw0U7QLxogqE4D1Jv69nX5IOPysZOVpoE0dslXWGGHSgKQ293FS/I42J8 Vv7Owh4njXCKJz7q/B8vyARIbZjIeffRg5dBVH+S2rPRpXleQjPMQ5V0vcCmomLXlLtNvnpeO p6lM7ucg1A== X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Aug 2015 10:09:13 -0000 Hi, I just started looking at FreeBSD kernel code in more detail and want to understand the low-level entry points into the kernel on a x86-64 CPU. What I'd like to know is precisely what happens when I execute a "syscall" instruction in user-land. More specifically, what instruction in what assembly source file is RIP/CS loaded with on executing syscall? Also where in the source code do we load the MSRs with these values? - tj