Messages in this thread |  | | Subject | Re: [PATCH] x86: create array based interface to change page attribute | From | Dave Airlie <> | Date | Wed, 02 Apr 2008 11:35:34 +1000 |
| |
On Mon, 2008-03-31 at 13:46 +0200, Andi Kleen wrote: > On Mon, Mar 31, 2008 at 09:21:19PM +1000, Dave Airlie wrote: > > On Mon, Mar 31, 2008 at 5:25 PM, Andi Kleen <andi@firstfloor.org> wrote: > > > Dave Airlie <airlied@redhat.com> writes: > > > > > > > > +#define CPA_FLUSHTLB 1 > > > > +#define CPA_ARRAY 2 > > > > > > I don't think CPA_ARRAY should be a separate case. Rather single > > > page flushing should be an array with only a single entry. pageattr > > > is already very complex, no need to make add more special cases. > > > > I thought about this but the current interface takes a start address > > and number of pages from that point to cpa, > > the array interface takes an array of page sized pages. > > > > I don't really think we need to generate an array in the first case > > with all the pages in it.. > > Just put the length into the array members too.
I can only think to do this by maybe stealing some bits, and having the caller provide a pfn + length in one 64-bit dword.
As otherwise I'm going to end up with the largest use case for this having to allocate a large array of 64-bit dwords all containing 1.
This isn't worth it IMHO and the array doesn't add that much more complexity.
Dave.
|  |