![]() | |||||||||||||
Messages in this thread |
On Wed, Jan 26, 2005 at 12:49:04PM -0200, Marcelo Tosatti wrote: > > There is also a misinformative comment in fs/proc/array.c > > in proc_pid_stat where it says > > mm ? mm->rss : 0, /* you might want to shift this left 3 */ > > the number 3 should probably be PAGE_SHIFT-10. Don't forget the comment (it's still there in 2.6) :-) > Amazing that this has never been noticed before - I bet not many people use RSS > limits with madvise(). Neither do we. :-) I just found it when trying to figure out if the kernel actually used any of the rlimits and if so how. (Trying to make PBS work correctly) > This transform the rlimit in pages before the comparison, can you please test > it. > > --- a/mm/filemap.c.orig 2004-11-17 09:54:22.000000000 -0200 > +++ b/mm/filemap.c 2005-01-26 15:21:10.614842296 -0200 > @@ -2609,6 +2609,9 @@ > error = -EIO; > rlim_rss = current->rlim ? current->rlim[RLIMIT_RSS].rlim_cur : > LONG_MAX; /* default: see resource.h */ > + > + rlim_rss = (rlim_rss & PAGE_MASK) >> PAGE_SHIFT; > + > if ((vma->vm_mm->rss + (end - start)) > rlim_rss) > return error; Since we don't use it i can't really test it, but a visual inspection is good enough in this simple case. And since this is the only place in 2.4 that RLIMIT_RSS is used, the problem is solved. BTW do you know if there is any plans for 2.6++ to actually use RLIMIT_RSS? I saw a hint in that direction in mm/thrash.c grab_swap_token but it is commented out and only skeleton code... I'm asking since the above code piece has been removed. -- Ake Sandgren, HPC2N, Umea University, S-90187 Umea, Sweden Internet: ake@hpc2n.umu.se Phone: +46 90 7866134 Fax: +46 90 7866126 Mobile: +46 70 7716134 WWW: http://www.hpc2n.umu.se - 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:09 [from the cache] ©2003-2008 | |||||||||||||