search for: online_page_callback_t

Displaying 20 results from an estimated 33 matches for "online_page_callback_t".

2019 Oct 16
3
[PATCH RFC v3 6/9] mm: Allow to offline PageOffline() pages with a reference count of 0
...ining is permitted. > > > > Few questions. I do not see onlining code to take care of this special > > case. What should happen when offline && online? > > Once offline, the memmap is garbage. When onlining again: > > a) memmap will be re-initialized > b) online_page_callback_t will be called for every page in the section. The > driver can mark them offline again and not give them to the buddy. > c) section will be marked online. But we can skip those pages when onlining and keep them in the offline state right? We do not poison offlined pages. There is state stor...
2019 Oct 16
3
[PATCH RFC v3 6/9] mm: Allow to offline PageOffline() pages with a reference count of 0
...ining is permitted. > > > > Few questions. I do not see onlining code to take care of this special > > case. What should happen when offline && online? > > Once offline, the memmap is garbage. When onlining again: > > a) memmap will be re-initialized > b) online_page_callback_t will be called for every page in the section. The > driver can mark them offline again and not give them to the buddy. > c) section will be marked online. But we can skip those pages when onlining and keep them in the offline state right? We do not poison offlined pages. There is state stor...
2019 Oct 16
0
[PATCH RFC v3 6/9] mm: Allow to offline PageOffline() pages with a reference count of 0
...t;> >>> Few questions. I do not see onlining code to take care of this special >>> case. What should happen when offline && online? >> >> Once offline, the memmap is garbage. When onlining again: >> >> a) memmap will be re-initialized >> b) online_page_callback_t will be called for every page in the section. The >> driver can mark them offline again and not give them to the buddy. >> c) section will be marked online. > > But we can skip those pages when onlining and keep them in the offline > state right? We do not poison offlined page...
2019 Oct 16
0
[PATCH RFC v3 6/9] mm: Allow to offline PageOffline() pages with a reference count of 0
...other sign in the struct page that offlining is permitted. > > Few questions. I do not see onlining code to take care of this special > case. What should happen when offline && online? Once offline, the memmap is garbage. When onlining again: a) memmap will be re-initialized b) online_page_callback_t will be called for every page in the section. The driver can mark them offline again and not give them to the buddy. c) section will be marked online. The driver that marked these pages to be skipped when offlining is responsible for registering the online_page_callback_t callback where these p...
2020 Mar 10
1
[PATCH v1 06/11] mm: Allow to offline unmovable PageOffline() pages via MEM_GOING_OFFLINE
...mply be migrated. > > Note 1: If offlining fails, a driver has to increment the reference > count again in MEM_CANCEL_OFFLINE. > > Note 2: A driver that makes use of this has to be aware that re-onlining > the memory block has to be handled by hooking into onlining code > (online_page_callback_t), resetting the page PageOffline() and > not giving them to the buddy. > > Cc: Andrew Morton <akpm at linux-foundation.org> > Cc: Juergen Gross <jgross at suse.com> > Cc: Konrad Rzeszutek Wilk <konrad.wilk at oracle.com> > Cc: Pavel Tatashin <pavel.tatashin...
2019 Oct 16
4
[PATCH RFC v3 6/9] mm: Allow to offline PageOffline() pages with a reference count of 0
On Thu 19-09-19 16:22:25, David Hildenbrand wrote: > virtio-mem wants to allow to offline memory blocks of which some parts > were unplugged, especially, to later offline and remove completely > unplugged memory blocks. The important part is that PageOffline() has > to remain set until the section is offline, so these pages will never > get accessed (e.g., when dumping). The pages
2019 Oct 16
4
[PATCH RFC v3 6/9] mm: Allow to offline PageOffline() pages with a reference count of 0
On Thu 19-09-19 16:22:25, David Hildenbrand wrote: > virtio-mem wants to allow to offline memory blocks of which some parts > were unplugged, especially, to later offline and remove completely > unplugged memory blocks. The important part is that PageOffline() has > to remain set until the section is offline, so these pages will never > get accessed (e.g., when dumping). The pages
2020 Mar 02
0
[PATCH v1 06/11] mm: Allow to offline unmovable PageOffline() pages via MEM_GOING_OFFLINE
...Offline() pages), the pages will simply be migrated. Note 1: If offlining fails, a driver has to increment the reference count again in MEM_CANCEL_OFFLINE. Note 2: A driver that makes use of this has to be aware that re-onlining the memory block has to be handled by hooking into onlining code (online_page_callback_t), resetting the page PageOffline() and not giving them to the buddy. Cc: Andrew Morton <akpm at linux-foundation.org> Cc: Juergen Gross <jgross at suse.com> Cc: Konrad Rzeszutek Wilk <konrad.wilk at oracle.com> Cc: Pavel Tatashin <pavel.tatashin at microsoft.com> Cc: Alexa...
2020 Mar 11
0
[PATCH v2 05/10] mm: Allow to offline unmovable PageOffline() pages via MEM_GOING_OFFLINE
...Offline() pages), the pages will simply be migrated. Note 1: If offlining fails, a driver has to increment the reference count again in MEM_CANCEL_OFFLINE. Note 2: A driver that makes use of this has to be aware that re-onlining the memory block has to be handled by hooking into onlining code (online_page_callback_t), resetting the page PageOffline() and not giving them to the buddy. Reviewed-by: Alexander Duyck <alexander.h.duyck at linux.intel.com> Acked-by: Michal Hocko <mhocko at suse.com> Cc: Andrew Morton <akpm at linux-foundation.org> Cc: Juergen Gross <jgross at suse.com> Cc:...
2020 May 07
0
[PATCH v3 05/15] mm: Allow to offline unmovable PageOffline() pages via MEM_GOING_OFFLINE
...Offline() pages), the pages will simply be migrated. Note 1: If offlining fails, a driver has to increment the reference count again in MEM_CANCEL_OFFLINE. Note 2: A driver that makes use of this has to be aware that re-onlining the memory block has to be handled by hooking into onlining code (online_page_callback_t), resetting the page PageOffline() and not giving them to the buddy. Reviewed-by: Alexander Duyck <alexander.h.duyck at linux.intel.com> Acked-by: Michal Hocko <mhocko at suse.com> Tested-by: Pankaj Gupta <pankaj.gupta.linux at gmail.com> Cc: Andrew Morton <akpm at linux-foun...
2020 Apr 14
1
[PATCH v2 05/10] mm: Allow to offline unmovable PageOffline() pages via MEM_GOING_OFFLINE
...mply be migrated. > > Note 1: If offlining fails, a driver has to increment the reference > count again in MEM_CANCEL_OFFLINE. > > Note 2: A driver that makes use of this has to be aware that re-onlining > the memory block has to be handled by hooking into onlining code > (online_page_callback_t), resetting the page PageOffline() and > not giving them to the buddy. > > Reviewed-by: Alexander Duyck <alexander.h.duyck at linux.intel.com> > Acked-by: Michal Hocko <mhocko at suse.com> > Cc: Andrew Morton <akpm at linux-foundation.org> > Cc: Juergen Gross &...
2019 Oct 23
2
[PATCH RFC v3 6/9] mm: Allow to offline PageOffline() pages with a reference count of 0
...page, it > has to synchronize against memory onlining/offlining (e.g., using memory > notifiers) while incrementing the reference count. Also, a driver that > relies in this feature is aware that re-onlining the memory will require > to re-set the pages PageOffline() - e.g., via the online_page_callback_t." OK [...] > d) __put_page() is modified to not return pages to the buddy in any > case as a safety net. We might be able to get rid of that. I do not like exactly this part > What I think you suggest: > > a) has_unmovable_pages() skips over all PageOffline() pages. &gt...
2019 Oct 23
2
[PATCH RFC v3 6/9] mm: Allow to offline PageOffline() pages with a reference count of 0
...page, it > has to synchronize against memory onlining/offlining (e.g., using memory > notifiers) while incrementing the reference count. Also, a driver that > relies in this feature is aware that re-onlining the memory will require > to re-set the pages PageOffline() - e.g., via the online_page_callback_t." OK [...] > d) __put_page() is modified to not return pages to the buddy in any > case as a safety net. We might be able to get rid of that. I do not like exactly this part > What I think you suggest: > > a) has_unmovable_pages() skips over all PageOffline() pages. &gt...
2019 Oct 18
0
[PATCH RFC v3 6/9] mm: Allow to offline PageOffline() pages with a reference count of 0
...PC CMM, it makes much more sense to switch to balloon compaction instead (because that's what it really is, a balloon driver). I could imagine that HyperV might want to use that in the future. And it should be possible to make them play with the rules. They already use memory notifiers and online_page_callback_t. > >>> for that - MEM_GOING_OFFLINE notification. This sounds like a good place >>> for the driver to decide whether it is safe to let the page go or not. >> >> As I explained, this is too late and fragile. I post again what I posted >> before with some furt...
2019 Oct 24
2
[PATCH RFC v3 6/9] mm: Allow to offline PageOffline() pages with a reference count of 0
On Wed 23-10-19 12:03:51, David Hildenbrand wrote: > >Do you see any downsides? > > The only downside I see is that we get more false negatives on > has_unmovable_pages(), eventually resulting in the offlining stage after > isolation to loop forever (as some PageOffline() pages are not movable > (especially, XEN balloon, HyperV balloon), there won't be progress). >
2019 Oct 24
2
[PATCH RFC v3 6/9] mm: Allow to offline PageOffline() pages with a reference count of 0
On Wed 23-10-19 12:03:51, David Hildenbrand wrote: > >Do you see any downsides? > > The only downside I see is that we get more false negatives on > has_unmovable_pages(), eventually resulting in the offlining stage after > isolation to loop forever (as some PageOffline() pages are not movable > (especially, XEN balloon, HyperV balloon), there won't be progress). >
2019 Oct 23
0
[PATCH RFC v3 6/9] mm: Allow to offline PageOffline() pages with a reference count of 0
...has to synchronize against memory onlining/offlining (e.g., using memory >> notifiers) while incrementing the reference count. Also, a driver that >> relies in this feature is aware that re-onlining the memory will require >> to re-set the pages PageOffline() - e.g., via the online_page_callback_t." > > OK > > [...] >> d) __put_page() is modified to not return pages to the buddy in any >> case as a safety net. We might be able to get rid of that. > > I do not like exactly this part Yeah, and I think I can drop it from this patch. > >> W...
2019 Oct 22
2
[PATCH RFC v3 6/9] mm: Allow to offline PageOffline() pages with a reference count of 0
On Fri 18-10-19 14:35:06, David Hildenbrand wrote: > On 18.10.19 13:20, Michal Hocko wrote: > > On Fri 18-10-19 10:50:24, David Hildenbrand wrote: > > > On 18.10.19 10:15, Michal Hocko wrote: [...] > > > > for that - MEM_GOING_OFFLINE notification. This sounds like a good place > > > > for the driver to decide whether it is safe to let the page go or not.
2019 Oct 22
2
[PATCH RFC v3 6/9] mm: Allow to offline PageOffline() pages with a reference count of 0
On Fri 18-10-19 14:35:06, David Hildenbrand wrote: > On 18.10.19 13:20, Michal Hocko wrote: > > On Fri 18-10-19 10:50:24, David Hildenbrand wrote: > > > On 18.10.19 10:15, Michal Hocko wrote: [...] > > > > for that - MEM_GOING_OFFLINE notification. This sounds like a good place > > > > for the driver to decide whether it is safe to let the page go or not.
2019 Oct 18
0
[PATCH RFC v3 6/9] mm: Allow to offline PageOffline() pages with a reference count of 0
...ts to revive such a page, it has to synchronize against memory onlining/offlining (e.g., using memory notifiers) while incrementing the reference count. Also, a driver that relies in this feature is aware that re-onlining the memory will require to re-set the pages PageOffline() - e.g., via the online_page_callback_t. > for that - MEM_GOING_OFFLINE notification. This sounds like a good place > for the driver to decide whether it is safe to let the page go or not. As I explained, this is too late and fragile. I post again what I posted before with some further explanations __offline_pages() works like...