Re: [PATCH 5/5] Swapless V2: Revise main migration logic

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, 15 Apr 2006 10:41:59 -0700 (PDT)
Christoph Lameter <[email protected]> wrote:

> Note that there is an issue with your approach. If a migration entry is 
> copied during fork then SWP_MIGRATION_WRITE must become SWP_MIGRATION_READ 
> for some cases. Would you look into fixing this?
> 

Thank you for pointing out the issue.

In my understanding, copy_page_range() is used at fork().
This finally calls copy_one_pte() and copies ptes one by one.

Maybe, I'll do like this.
==
 438         if (unlikely(!pte_present(pte)) {
 439                 if (!pte_file(pte)) {
 440                         swap_duplicate(pte_to_swp_entry(pte));
 			     entry = pte_to_swp_entry(pte);
#ifdef CONFIG_MIGRATION
			     if (is_migration_entry(entry)) {
				......always copy as MIGRATION_READ.
			     }
#endif
 441                         /* make sure dst_mm is on swapoff's mmlist. */
 442                         if (unlikely(list_empty(&dst_mm->mmlist))) {
 443                                 spin_lock(&mmlist_lock);
 444                                 if (list_empty(&dst_mm->mmlist))
 445                                         list_add(&dst_mm->mmlist,
 446                                                  &src_mm->mmlist);
 447                                 spin_unlock(&mmlist_lock);
 448                         }
 449                 }
 450                 goto out_set_pte;
 451         }
==

Thanks,
-Kame

-
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/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux