Messages in this thread | | | Date | Tue, 24 Apr 2007 10:38:44 -0700 (PDT) | From | Christoph Lameter <> | Subject | Re: Pagecache: find_or_create_page does not call a proper page allocator function |
| |
On Tue, 24 Apr 2007, Hugh Dickins wrote:
> I've not yet looked at the patch under discussion, but this remark > prompts me... a couple of days ago I got very worried by the various > hard-wired GFP_HIGHUSER allocations in mm/migrate.c and mm/mempolicy.c, > and wondered how those would work out if someone has a blockdev mmap'ed.
Hmmm.... These not that critical given that 32 bit NUMA systems are a bit rare. And if a page is in the wrong area then it can be bounced before I/O is performed on it. > (If vma->vm_file is non-NULL, we can be sure vma->vm_file->f_mapping > is non-NULL, can't we? Some common code assumes that, some does not: > I've avoided cargo-cult safety below, but don't let me make it unsafe.) > > > Is there a problem with page migration to HIGHMEM, if pages were > mapped from a GFP_USER block device? I failed to demonstrate any > problem, but here's a quick fix if needed.
If a page is migrated into a different zone and then a write attempt is made on it then the page will be bounced into a zone from which the device can write from. - 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/
| |