Re: 2.5.74-mm1

William Lee Irwin III (wli@holomorphy.com)
Thu, 3 Jul 2003 13:48:06 -0700


This is a MIME-formatted message. If you see this text it means that your
E-mail software does not support MIME-formatted messages.

--=_courier-4746-1057265375-0001-2
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

On Thu, Jul 03, 2003 at 01:25:37PM -0700, William Lee Irwin III wrote:
> Here's a resync of highpmd, the big PAE resource scalability patch that
> saves 12KB per process of lowmem. It adds pmd accessors analogous to
> pte_offset_map() etc., i.e. pmd_offset_map(), pmd_unmap(), etc.

And here's a resync of the right version of the thing:

-- wli

--=_courier-4746-1057265375-0001-2
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
Content-Description: highpmd-2.5.74-mm1-1.bz2
Content-Disposition: attachment; filename="mm1-2.5.74-2.bz2"

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
uSKcKEg/bbpkgA==

--=_courier-4746-1057265375-0001-2--