lkml.org 
[lkml]   [2008]   [Jan]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCHv2] x86: Use v8086_mode helper, trivial unification
From
Date
On Fri, 2008-01-18 at 10:12 +0100, Ingo Molnar wrote:
> * Harvey Harrison <harvey.harrison@gmail.com> wrote:
>
> > Use v8086_mode inline in fault_32.c, no functional change also ifdef
> > the section for 32-bit only and add to fault_64.c
>
> > - if (regs->flags & VM_MASK) {
> > + if (v8086_mode(regs)) {
>
> > --- a/arch/x86/mm/fault_64.c
> > +++ b/arch/x86/mm/fault_64.c
> > @@ -551,6 +551,16 @@ good_area:
> > tsk->maj_flt++;
> > else
> > tsk->min_flt++;
> > +
> > + /*
> > + * Did it hit the DOS screen memory VA from vm86 mode?
> > + */
> > + if (v8086_mode(regs)) {
> > + unsigned long bit = (address - 0xA0000) >> PAGE_SHIFT;
> > + if (bit < 32)
> > + tsk->thread.screen_bitmap |= 1 << bit;
> > + }
>
> hm, is there even vm86 mode in 64-bit? Anyway, gcc will eliminate it i
> guess. I've applied your patch.
>

No, it doesn't mean anything to 64-bit, but helps make the diff a little
bit smaller, getting pretty close now.

Still needs a bit of work to introduce oops_begin/end from 64-bit to
32-bit in traps_32.c and introduce a bad_pgtable-like function to
32bit, then we're down to small differences between 32/64 bit
do_page_fault and vmalloc_sync_all that should be relatively clean
to harmonize.

Got distracted with the ptrace stuff today, but patch coming soon.

Harvey



\
 
 \ /
  Last update: 2008-01-18 10:25    [W:1.241 / U:0.936 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site