public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: ebiederm@xmission.com (Eric W. Biederman)
To: USB development list <linux-usb-devel@lists.sourceforge.net>
Cc: Greg KH <gregkh@suse.de>, "Lu, Yinghai" <yinghai.lu@amd.com>,
	Stefan Reinauer <stepan@coresystems.de>,
	Peter Stuge <stuge-linuxbios@cdy.org>,
	linuxbios@linuxbios.org, linux-kernel@vger.kernel.org,
	Andi Kleen <ak@suse.de>
Subject: [RFC][PATCH 1/2] x86_64:  Preallocate the fixmap pud and pmd entries.
Date: Sun, 03 Dec 2006 22:13:57 -0700	[thread overview]
Message-ID: <m1d570utt6.fsf_-_@ebiederm.dsl.xmission.com> (raw)
In-Reply-To: <m1hcwcuu17.fsf_-_@ebiederm.dsl.xmission.com> (Eric W. Biederman's message of "Sun, 03 Dec 2006 22:09:08 -0700")


To use the debug device I need to work through a port so I need
to call ioreamp or similar.  Since we are doing this very early
I chose to use a fixmap (because we are unlikely to free the mapping)
and because it is simple.  If we preallocate the fixmap pud and pmd
entries the existing fixmap codes works anytime from power up without
modifications or memory allocations.  So we don't need a special case.

---
 arch/x86_64/kernel/head.S |   11 ++++++++++-
 1 files changed, 10 insertions(+), 1 deletions(-)

diff --git a/arch/x86_64/kernel/head.S b/arch/x86_64/kernel/head.S
index 2f65469..4004965 100644
--- a/arch/x86_64/kernel/head.S
+++ b/arch/x86_64/kernel/head.S
@@ -271,7 +271,16 @@ NEXT_PAGE(level3_kernel_pgt)
 	.fill	510,8,0
 	/* (2^48-(2*1024*1024*1024)-((2^39)*511))/(2^30) = 510 */
 	.quad	phys_level2_kernel_pgt | 0x007
-	.fill	1,8,0
+	.quad	phys_level2_fixmap_pgt | 0x007
+
+NEXT_PAGE(level2_fixmap_pgt)
+	.fill	506,8,0
+	.quad	phys_level1_fixmap_pgt | 0x007
+	/* 8MB reserved for vsyscalls + a 2MB hole = 4 + 1 entries */
+	.fill	5,8,0
+
+NEXT_PAGE(level1_fixmap_pgt)
+	.fill	512,8,0
 
 NEXT_PAGE(level2_ident_pgt)
 	/* 40MB for bootup. 	*/
-- 
1.4.2.rc3.g7e18e-dirty


  reply	other threads:[~2006-12-04  5:16 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-12-01 18:55 [LinuxBIOS] #57: libusb host program for PLX NET20DC debug device Lu, Yinghai
2006-12-01 19:19 ` Greg KH
2006-12-01 20:42   ` Peter Stuge
2006-12-01 21:15     ` Eric W. Biederman
2006-12-01 21:46       ` Peter Stuge
2006-12-01 23:02         ` Eric W. Biederman
2006-12-03 17:00           ` Peter Stuge
2006-12-03 23:03             ` Eric W. Biederman
2006-12-01 23:13   ` Eric W. Biederman
2006-12-03 15:49   ` Eric W. Biederman
2006-12-04  5:09     ` [RFC][PATCH 0/2] x86_64 Early usb debug port support Eric W. Biederman
2006-12-04  5:13       ` Eric W. Biederman [this message]
2006-12-04  5:18         ` [RFC][PATCH 2/2] x86_64: earlyprintk usb debug device support Eric W. Biederman
     [not found]       ` <200612042001.09808.david-b@pacbell.net>
2006-12-05 11:01         ` [linux-usb-devel] [RFC][PATCH 0/2] x86_64 Early usb debug port support Eric W. Biederman
2006-12-06 17:31           ` Andi Kleen
2006-12-05 11:18         ` Eric W. Biederman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=m1d570utt6.fsf_-_@ebiederm.dsl.xmission.com \
    --to=ebiederm@xmission.com \
    --cc=ak@suse.de \
    --cc=gregkh@suse.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb-devel@lists.sourceforge.net \
    --cc=linuxbios@linuxbios.org \
    --cc=stepan@coresystems.de \
    --cc=stuge-linuxbios@cdy.org \
    --cc=yinghai.lu@amd.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox