Re: [PATCH v5 2/5] mm,compaction: Let isolate_migratepages_{range,block} return error codes

2021-03-19 Thread Oscar Salvador
On Fri, Mar 19, 2021 at 11:14:25AM +0100, Vlastimil Babka wrote: > No I meant this: > > --- a/mm/internal.h > +++ b/mm/internal.h > @@ -225,7 +225,13 @@ struct compact_control { > unsigned int nr_freepages; /* Number of isolated free pages */ > unsigned int nr_migratepages;

Re: [PATCH v5 2/5] mm,compaction: Let isolate_migratepages_{range,block} return error codes

2021-03-19 Thread Vlastimil Babka
On 3/19/21 10:57 AM, Oscar Salvador wrote: > On Thu, Mar 18, 2021 at 12:36:52PM +0100, Michal Hocko wrote: >> Yeah, makes sense. I am not a fan of the above form of documentation. >> Btw. maybe renaming the field would be even better, both from the >> intention and review all existing users. I

Re: [PATCH v5 2/5] mm,compaction: Let isolate_migratepages_{range,block} return error codes

2021-03-19 Thread Oscar Salvador
On Thu, Mar 18, 2021 at 12:36:52PM +0100, Michal Hocko wrote: > Yeah, makes sense. I am not a fan of the above form of documentation. > Btw. maybe renaming the field would be even better, both from the > intention and review all existing users. I would go with pfn_iter or > something that wouldn't

Re: [PATCH v5 2/5] mm,compaction: Let isolate_migratepages_{range,block} return error codes

2021-03-18 Thread Michal Hocko
On Thu 18-03-21 12:10:14, Vlastimil Babka wrote: > On 3/18/21 11:22 AM, Michal Hocko wrote: [...] > > E.g. something like the following > > diff --git a/mm/internal.h b/mm/internal.h > > index 1432feec62df..6c5a9066adf0 100644 > > --- a/mm/internal.h > > +++ b/mm/internal.h > > @@ -225,7 +225,13

Re: [PATCH v5 2/5] mm,compaction: Let isolate_migratepages_{range,block} return error codes

2021-03-18 Thread Vlastimil Babka
On 3/18/21 11:22 AM, Michal Hocko wrote: > On Thu 18-03-21 10:50:38, Vlastimil Babka wrote: >> On 3/17/21 3:59 PM, Michal Hocko wrote: >> > On Wed 17-03-21 15:38:35, Oscar Salvador wrote: >> >> On Wed, Mar 17, 2021 at 03:12:29PM +0100, Michal Hocko wrote: >> >> > > Since isolate_migratepages_block

Re: [PATCH v5 2/5] mm,compaction: Let isolate_migratepages_{range,block} return error codes

2021-03-18 Thread Michal Hocko
On Thu 18-03-21 10:50:38, Vlastimil Babka wrote: > On 3/17/21 3:59 PM, Michal Hocko wrote: > > On Wed 17-03-21 15:38:35, Oscar Salvador wrote: > >> On Wed, Mar 17, 2021 at 03:12:29PM +0100, Michal Hocko wrote: > >> > > Since isolate_migratepages_block will stop returning the next pfn to be > >> >

Re: [PATCH v5 2/5] mm,compaction: Let isolate_migratepages_{range,block} return error codes

2021-03-18 Thread Vlastimil Babka
On 3/17/21 3:59 PM, Michal Hocko wrote: > On Wed 17-03-21 15:38:35, Oscar Salvador wrote: >> On Wed, Mar 17, 2021 at 03:12:29PM +0100, Michal Hocko wrote: >> > > Since isolate_migratepages_block will stop returning the next pfn to be >> > > scanned, we reuse the cc->migrate_pfn field to keep track

Re: [PATCH v5 2/5] mm,compaction: Let isolate_migratepages_{range,block} return error codes

2021-03-17 Thread Michal Hocko
On Wed 17-03-21 15:38:35, Oscar Salvador wrote: > On Wed, Mar 17, 2021 at 03:12:29PM +0100, Michal Hocko wrote: > > > Since isolate_migratepages_block will stop returning the next pfn to be > > > scanned, we reuse the cc->migrate_pfn field to keep track of that. > > > > This looks hakish and I

Re: [PATCH v5 2/5] mm,compaction: Let isolate_migratepages_{range,block} return error codes

2021-03-17 Thread Oscar Salvador
On Wed, Mar 17, 2021 at 03:12:29PM +0100, Michal Hocko wrote: > > Since isolate_migratepages_block will stop returning the next pfn to be > > scanned, we reuse the cc->migrate_pfn field to keep track of that. > > This looks hakish and I cannot really tell that users of cc->migrate_pfn > work as

Re: [PATCH v5 2/5] mm,compaction: Let isolate_migratepages_{range,block} return error codes

2021-03-17 Thread Michal Hocko
On Wed 17-03-21 12:12:48, Oscar Salvador wrote: > Currently, isolate_migratepages_{range,block} and their callers use > a pfn == 0 vs pfn != 0 scheme to let the caller know whether there was > any error during isolation. > This does not work as soon as we need to start reporting different error >

[PATCH v5 2/5] mm,compaction: Let isolate_migratepages_{range,block} return error codes

2021-03-17 Thread Oscar Salvador
Currently, isolate_migratepages_{range,block} and their callers use a pfn == 0 vs pfn != 0 scheme to let the caller know whether there was any error during isolation. This does not work as soon as we need to start reporting different error codes and make sure we pass them down the chain, so they