Displaying 20 results from an estimated 70 matches for "pageanon".
2009 Feb 02
5
[PATCH] btrfs: call mark_inode_dirty when i_size is updated
Hi Chris.
I think it is needed to call mark_inode_dirty() when file size expands
in order to flush metadata updates to HDD through sync() syscall or
background_writeout().
Thanks.
Signed-off-by: Hisashi Hifumi <hifumi.hisashi@oss.ntt.co.jp>
diff -Nrup linux-2.6.29-rc3.org/fs/btrfs/file.c linux-2.6.29-rc3/fs/btrfs/file.c
--- linux-2.6.29-rc3.org/fs/btrfs/file.c 2009-02-02
2020 Jun 21
2
[PATCH 13/16] mm: support THP migration to device private memory
...@@ -1663,23 +1663,35 @@ int zap_huge_pmd(struct mmu_gather *tlb, struct vm_area_struct *vma,
> } else {
> struct page *page = NULL;
> int flush_needed = 1;
> + bool is_anon = false;
>
> if (pmd_present(orig_pmd)) {
> page = pmd_page(orig_pmd);
> + is_anon = PageAnon(page);
> page_remove_rmap(page, true);
> VM_BUG_ON_PAGE(page_mapcount(page) < 0, page);
> VM_BUG_ON_PAGE(!PageHead(page), page);
> } else if (thp_migration_supported()) {
> swp_entry_t entry;
>
> - VM_BUG_ON(!is_pmd_migration_entry(orig_pmd));
> e...
2020 Jun 22
2
[PATCH 13/16] mm: support THP migration to device private memory
...ct vm_area_struct *vma,
>>> } else {
>>> struct page *page = NULL;
>>> int flush_needed = 1;
>>> + bool is_anon = false;
>>>
>>> if (pmd_present(orig_pmd)) {
>>> page = pmd_page(orig_pmd);
>>> + is_anon = PageAnon(page);
>>> page_remove_rmap(page, true);
>>> VM_BUG_ON_PAGE(page_mapcount(page) < 0, page);
>>> VM_BUG_ON_PAGE(!PageHead(page), page);
>>> } else if (thp_migration_supported()) {
>>> swp_entry_t entry;
>>>
>>>...
2020 Jun 19
0
[PATCH 13/16] mm: support THP migration to device private memory
.../huge_memory.c
+++ b/mm/huge_memory.c
@@ -1663,23 +1663,35 @@ int zap_huge_pmd(struct mmu_gather *tlb, struct vm_area_struct *vma,
} else {
struct page *page = NULL;
int flush_needed = 1;
+ bool is_anon = false;
if (pmd_present(orig_pmd)) {
page = pmd_page(orig_pmd);
+ is_anon = PageAnon(page);
page_remove_rmap(page, true);
VM_BUG_ON_PAGE(page_mapcount(page) < 0, page);
VM_BUG_ON_PAGE(!PageHead(page), page);
} else if (thp_migration_supported()) {
swp_entry_t entry;
- VM_BUG_ON(!is_pmd_migration_entry(orig_pmd));
entry = pmd_to_swp_entry(orig_pmd);
-...
2020 Jun 22
2
[PATCH 13/16] mm: support THP migration to device private memory
...;>> struct page *page = NULL;
>>>>> int flush_needed = 1;
>>>>> + bool is_anon = false;
>>>>>
>>>>> if (pmd_present(orig_pmd)) {
>>>>> page = pmd_page(orig_pmd);
>>>>> + is_anon = PageAnon(page);
>>>>> page_remove_rmap(page, true);
>>>>> VM_BUG_ON_PAGE(page_mapcount(page) < 0, page);
>>>>> VM_BUG_ON_PAGE(!PageHead(page), page);
>>>>> } else if (thp_migration_supported()) {
>>>>>...
2007 Apr 18
2
[patch 4/9] Guest page hinting: volatile swap cache.
...swap.h>
#include "internal.h"
@@ -32,7 +33,8 @@ static inline int __page_discardable(str
*/
if (PageDirty(page) || PageReserved(page) || PageWriteback(page) ||
PageLocked(page) || PagePrivate(page) || PageDiscarded(page) ||
- !PageUptodate(page) || !PageLRU(page) || PageAnon(page))
+ !PageUptodate(page) || !PageLRU(page) ||
+ (PageAnon(page) && !PageSwapCache(page)))
return 0;
/*
@@ -149,15 +151,21 @@ static void __page_discard(struct page *
}
spin_unlock_irq(&zone->lru_lock);
- /* We can't handle swap cache pages (yet). */
- BUG...
2007 Apr 18
2
[patch 4/9] Guest page hinting: volatile swap cache.
...swap.h>
#include "internal.h"
@@ -32,7 +33,8 @@ static inline int __page_discardable(str
*/
if (PageDirty(page) || PageReserved(page) || PageWriteback(page) ||
PageLocked(page) || PagePrivate(page) || PageDiscarded(page) ||
- !PageUptodate(page) || !PageLRU(page) || PageAnon(page))
+ !PageUptodate(page) || !PageLRU(page) ||
+ (PageAnon(page) && !PageSwapCache(page)))
return 0;
/*
@@ -149,15 +151,21 @@ static void __page_discard(struct page *
}
spin_unlock_irq(&zone->lru_lock);
- /* We can't handle swap cache pages (yet). */
- BUG...
2020 Nov 06
0
[PATCH v3 3/6] mm: support THP migration to device private memory
.../huge_memory.c
+++ b/mm/huge_memory.c
@@ -1682,23 +1682,35 @@ int zap_huge_pmd(struct mmu_gather *tlb, struct vm_area_struct *vma,
} else {
struct page *page = NULL;
int flush_needed = 1;
+ bool is_anon = false;
if (pmd_present(orig_pmd)) {
page = pmd_page(orig_pmd);
+ is_anon = PageAnon(page);
page_remove_rmap(page, true);
VM_BUG_ON_PAGE(page_mapcount(page) < 0, page);
VM_BUG_ON_PAGE(!PageHead(page), page);
} else if (thp_migration_supported()) {
swp_entry_t entry;
- VM_BUG_ON(!is_pmd_migration_entry(orig_pmd));
entry = pmd_to_swp_entry(orig_pmd);
-...
2016 May 27
2
[PATCH v6 02/12] mm: migrate: support non-lru movable page migration
...AGE_MAPPING_ANON | PAGE_MAPPING_KSM)
> +#define PAGE_MAPPING_ANON 0x1
> +#define PAGE_MAPPING_MOVABLE 0x2
> +#define PAGE_MAPPING_KSM (PAGE_MAPPING_ANON | PAGE_MAPPING_MOVABLE)
> +#define PAGE_MAPPING_FLAGS (PAGE_MAPPING_ANON | PAGE_MAPPING_MOVABLE)
>
> -static __always_inline int PageAnonHead(struct page *page)
> +static __always_inline int PageMappingFlag(struct page *page)
PageMappingFlags()?
[...]
> diff --git a/mm/compaction.c b/mm/compaction.c
> index 1427366ad673..2d6862d0df60 100644
> --- a/mm/compaction.c
> +++ b/mm/compaction.c
> @@ -81,6 +81,41 @@ stat...
2016 May 27
2
[PATCH v6 02/12] mm: migrate: support non-lru movable page migration
...AGE_MAPPING_ANON | PAGE_MAPPING_KSM)
> +#define PAGE_MAPPING_ANON 0x1
> +#define PAGE_MAPPING_MOVABLE 0x2
> +#define PAGE_MAPPING_KSM (PAGE_MAPPING_ANON | PAGE_MAPPING_MOVABLE)
> +#define PAGE_MAPPING_FLAGS (PAGE_MAPPING_ANON | PAGE_MAPPING_MOVABLE)
>
> -static __always_inline int PageAnonHead(struct page *page)
> +static __always_inline int PageMappingFlag(struct page *page)
PageMappingFlags()?
[...]
> diff --git a/mm/compaction.c b/mm/compaction.c
> index 1427366ad673..2d6862d0df60 100644
> --- a/mm/compaction.c
> +++ b/mm/compaction.c
> @@ -81,6 +81,41 @@ stat...
2020 Jun 22
0
[PATCH 13/16] mm: support THP migration to device private memory
...pmd(struct mmu_gather *tlb, struct vm_area_struct *vma,
>> } else {
>> struct page *page = NULL;
>> int flush_needed = 1;
>> + bool is_anon = false;
>>
>> if (pmd_present(orig_pmd)) {
>> page = pmd_page(orig_pmd);
>> + is_anon = PageAnon(page);
>> page_remove_rmap(page, true);
>> VM_BUG_ON_PAGE(page_mapcount(page) < 0, page);
>> VM_BUG_ON_PAGE(!PageHead(page), page);
>> } else if (thp_migration_supported()) {
>> swp_entry_t entry;
>>
>> - VM_BUG_ON(!is_pmd_migra...
2016 May 30
0
[PATCH v6 02/12] mm: migrate: support non-lru movable page migration
...APPING_KSM)
> >+#define PAGE_MAPPING_ANON 0x1
> >+#define PAGE_MAPPING_MOVABLE 0x2
> >+#define PAGE_MAPPING_KSM (PAGE_MAPPING_ANON | PAGE_MAPPING_MOVABLE)
> >+#define PAGE_MAPPING_FLAGS (PAGE_MAPPING_ANON | PAGE_MAPPING_MOVABLE)
> >
> >-static __always_inline int PageAnonHead(struct page *page)
> >+static __always_inline int PageMappingFlag(struct page *page)
>
> PageMappingFlags()?
Yeb.
>
> [...]
>
> >diff --git a/mm/compaction.c b/mm/compaction.c
> >index 1427366ad673..2d6862d0df60 100644
> >--- a/mm/compaction.c
> &g...
2008 Sep 19
2
[PATCH 0/5] bio-cgroup: Introduction
Hi everyone,
Here are new releases of bio-cgroup.
Changes from the previous version are as follows:
- Accurate dirty-page tracking
Support migrating pages between bio-cgroups with minimum overhead,
but I think such a situation is quite rare.
- Fix a bug of swapcache page handling
Sometimes, "bad page state" is occurred since the memory controller
has temporarily changed the
2008 Sep 19
2
[PATCH 0/5] bio-cgroup: Introduction
Hi everyone,
Here are new releases of bio-cgroup.
Changes from the previous version are as follows:
- Accurate dirty-page tracking
Support migrating pages between bio-cgroups with minimum overhead,
but I think such a situation is quite rare.
- Fix a bug of swapcache page handling
Sometimes, "bad page state" is occurred since the memory controller
has temporarily changed the
2008 Sep 19
2
[PATCH 0/5] bio-cgroup: Introduction
Hi everyone,
Here are new releases of bio-cgroup.
Changes from the previous version are as follows:
- Accurate dirty-page tracking
Support migrating pages between bio-cgroups with minimum overhead,
but I think such a situation is quite rare.
- Fix a bug of swapcache page handling
Sometimes, "bad page state" is occurred since the memory controller
has temporarily changed the
2020 Jun 22
0
[PATCH 13/16] mm: support THP migration to device private memory
...gt; } else {
>>>> struct page *page = NULL;
>>>> int flush_needed = 1;
>>>> + bool is_anon = false;
>>>>
>>>> if (pmd_present(orig_pmd)) {
>>>> page = pmd_page(orig_pmd);
>>>> + is_anon = PageAnon(page);
>>>> page_remove_rmap(page, true);
>>>> VM_BUG_ON_PAGE(page_mapcount(page) < 0, page);
>>>> VM_BUG_ON_PAGE(!PageHead(page), page);
>>>> } else if (thp_migration_supported()) {
>>>> swp_entry_t entry;...
2020 Jun 22
0
[PATCH 13/16] mm: support THP migration to device private memory
...eded = 1;
> >>>>> + bool is_anon = false;
> >>>>>
> >>>>> if (pmd_present(orig_pmd)) {
> >>>>> page = pmd_page(orig_pmd);
> >>>>> + is_anon = PageAnon(page);
> >>>>> page_remove_rmap(page, true);
> >>>>> VM_BUG_ON_PAGE(page_mapcount(page) < 0, page);
> >>>>> VM_BUG_ON_PAGE(!PageHead(page), page);
> >>>...
2019 Aug 09
6
[RFC PATCH v6 71/92] mm: add support for remote mapping
...G_MOVABLE)
-#define PAGE_MAPPING_FLAGS (PAGE_MAPPING_ANON | PAGE_MAPPING_MOVABLE)
+#define PAGE_MAPPING_FLAGS (PAGE_MAPPING_ANON | PAGE_MAPPING_MOVABLE | \
+ PAGE_MAPPING_REMOTE)
static __always_inline int PageMappingFlags(struct page *page)
{
@@ -431,6 +433,11 @@ static __always_inline int PageAnon(struct page *page)
return ((unsigned long)page->mapping & PAGE_MAPPING_ANON) != 0;
}
+static __always_inline int PageRemote(struct page *page)
+{
+ return ((unsigned long)page->mapping & PAGE_MAPPING_REMOTE) != 0;
+}
+
static __always_inline int __PageMovable(struct page *page)...
2016 May 31
0
[PATCH v6v3 02/12] mm: migrate: support non-lru movable page migration
...define PAGE_MAPPING_FLAGS (PAGE_MAPPING_ANON | PAGE_MAPPING_KSM)
+#define PAGE_MAPPING_ANON 0x1
+#define PAGE_MAPPING_MOVABLE 0x2
+#define PAGE_MAPPING_KSM (PAGE_MAPPING_ANON | PAGE_MAPPING_MOVABLE)
+#define PAGE_MAPPING_FLAGS (PAGE_MAPPING_ANON | PAGE_MAPPING_MOVABLE)
-static __always_inline int PageAnonHead(struct page *page)
+static __always_inline int PageMappingFlags(struct page *page)
{
- return ((unsigned long)page->mapping & PAGE_MAPPING_ANON) != 0;
+ return ((unsigned long)page->mapping & PAGE_MAPPING_FLAGS) != 0;
}
static __always_inline int PageAnon(struct page *page)...
2016 May 30
5
PATCH v6v2 02/12] mm: migrate: support non-lru movable page migration
...define PAGE_MAPPING_FLAGS (PAGE_MAPPING_ANON | PAGE_MAPPING_KSM)
+#define PAGE_MAPPING_ANON 0x1
+#define PAGE_MAPPING_MOVABLE 0x2
+#define PAGE_MAPPING_KSM (PAGE_MAPPING_ANON | PAGE_MAPPING_MOVABLE)
+#define PAGE_MAPPING_FLAGS (PAGE_MAPPING_ANON | PAGE_MAPPING_MOVABLE)
-static __always_inline int PageAnonHead(struct page *page)
+static __always_inline int PageMappingFlags(struct page *page)
{
- return ((unsigned long)page->mapping & PAGE_MAPPING_ANON) != 0;
+ return ((unsigned long)page->mapping & PAGE_MAPPING_FLAGS) != 0;
}
static __always_inline int PageAnon(struct page *page)...