Still think this special casing is not that good. One can also disable migration by providing a migration function that always fails. One such function exists in mm/migrate.c: /* Always fail migration. Used for mappings that are not movable */ int fail_migrate_page(struct address_space *mapping, struct page *newpage, struct page *page) { return -EIO; } EXPORT_SYMBOL(fail_migrate_page); The migration function is specified in vma->vm_ops->migrate If that is set to fail_migrate_page() then the pages in the vma will never be migrated. XFS uses it f.e. to avoid page migration: STATIC int xfs_mapping_buftarg( xfs_buftarg_t *btp, struct block_device *bdev) { struct backing_dev_info *bdi; struct inode *inode; struct address_space *mapping; static const struct address_space_operations mapping_aops = { .sync_page = block_sync_page, .migratepage = fail_migrate_page, }; Would it not be possible to do something similar for the temporary stack? -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>