On Wed, 2007-12-12 at 15:57 +1100, Nick Piggin wrote: > On Tuesday 11 December 2007 08:30, Dave Kleikamp wrote:
> > Nick, > > I've played with the fast_gup patch a bit. I was able to find a problem > > in follow_hugetlb_page() that Adam Litke fixed. I'm haven't been brave > > enough to implement it on any other architectures, but I did add a > > default that takes mmap_sem and calls the normal get_user_pages() if the > > architecture doesn't define fast_gup(). I put it in linux/mm.h, for > > lack of a better place, but it's a little kludgy since I didn't want > > mm.h to have to include sched.h. This patch is against 2.6.24-rc4. > > It's not ready for inclusion yet, of course. > > Hi Dave, > > Thanks so much. This makes it much more a complete patch (although > still missing the "normal page" detection). > > I think I missed -- or forgot -- what was the follow_hugetlb_page > problem? Badari found a problem running some tests and handed it off to me to look at. I didn't share it publicly. Anyway, we were finding that fastgup was taking the slow path almost all the time with huge pages. The problem was that follow_hugetlb_page was failing to fault on a non-writable page when it needed a writable one. So we'd keep seeing a non-writable page over and over. This is fixed in 2.6.24-rc5. > Anyway, I am hoping that someone will one day and test if this and > find it helps their workload, but on the other hand, if it doesn't > help anyone then we don't have to worry about adding it to the > kernel ;) I don't have any real setups that hammers DIO with threads. > I'm guessing DB2 and/or Oracle does? I'll try to get someone to run a DB2 benchmark and see what it looks like. -- David Kleikamp IBM Linux Technology Center -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/