lkml.org 
[lkml]   [2004]   [Mar]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: do we want to kill VM_RESERVED or not? [was Re: 2.6.5-rc1-aa3]
On Sun, Mar 21, 2004 at 01:00:05PM +0100, Andrea Arcangeli wrote:
> On Sun, Mar 21, 2004 at 12:49:39PM +0100, Andrea Arcangeli wrote:
> > the additional hardness you could remove the BUG_ON on in memory.c at line
>
> I now discovered that WARN_ON exists too, so probably the best is to
> simply change that to a WARN_ON (or to a printk). If one will ever do a
> pagetable walk again, one has to change that to a BUG_ON by that time.
> Kernel will work stable regardless of that condition triggering.
>
> --- x/mm/memory.c.~1~ 2004-03-20 22:12:43.000000000 +0100
> +++ x/mm/memory.c 2004-03-21 12:59:05.331923016 +0100
> @@ -1429,7 +1429,7 @@ retry:
> * real anonymous pages, they're "device" reserved pages instead.
> */
> reserved = !!(vma->vm_flags & VM_RESERVED);
> - BUG_ON(reserved == pageable);
> + WARN_ON(reserved == pageable);
>
> /*
> * Should we do an early C-O-W break?

and here the vmware proper fix:

--- vmmon-only/linux/driver.c.~1~ 2004-03-21 13:07:02.869326296 +0100
+++ vmmon-only/linux/driver.c 2004-03-21 13:07:28.320457136 +0100
@@ -1083,6 +1083,7 @@ static int LinuxDriverMmap(struct file *
}
/* Clear VM_IO, otherwise SuSE's kernels refuse to do get_user_pages */
vma->vm_flags &= ~VM_IO;
+ vma->vm_flags |= VM_RESERVED;
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 2, 3)
vma->vm_file = filp;
filp->f_count++;

You should apply both (though just applying one of the two will fix it).
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 14:01    [W:0.066 / U:0.060 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site