On Fri, Oct 5, 2018 at 11:39 PM Miguel Ojeda <miguel.ojeda.sandonis@xxxxxxxxx> wrote: > > On Fri, Oct 5, 2018 at 2:11 PM Souptick Joarder <jrdr.linux@xxxxxxxxx> wrote: > > > > On Fri, Oct 5, 2018 at 4:19 PM Miguel Ojeda > > <miguel.ojeda.sandonis@xxxxxxxxx> wrote: > > > > > > 1. Introduce the vmf_* API > > > 2. Change all PF-users users to that (leaving all non-PF ones > > > untouched!) -- if this is too big, you can split this patch into > > > several patches, one per subsystem, etc. > > > > We are done with step 2. All the PF-users are converted to use > > vmf_insert_page. ( Ref - linux-next-20181005) > > They are not supposed to be "steps". You did it with 70+ commits (!!) > over the course of several months. Why a tree wasn't created, stuff > developed there, and when done, submitted it for review? Because we already have a plan for entire vm_fault_t migration and the * instruction * was to send one patch per driver. > > > > > > > Otherwise, if you want to pursue Matthew's idea: > > > > > > 4. Introduce the vm_insert_range (possibly leveraging > > > vm_insert_page, or not; you have to see what is best). > > > 5. Replace those callers that can take advantage of vm_insert_range > > > 6. Remove vm_insert_page and replace callers with vm_insert_range > > > (only if it is not worth to keep vm_insert_range, again justifying it > > > *on its own merits*) > > > > Step 4 to 6, going to do it. It is part of plan now :-) > > > > Fine, but you haven't answered to the other parts of my email: you > don't explain why you choose one alternative over the others, you > simply keep changing the approach. We are going in circles here. That you want to convert vm_insert_page to vmf_insert_page for the PF case is fine and understood. However, you don't *need* to introduce a new name for the remaining non-PF cases if the function is going to be the exact same thing as before. You say "The final goal is to remove vm_insert_page", but you haven't justified *why* you need to remove that name. I think I have given that answer. If we don't remove vm_insert_page, future #PF caller will have option to use it. But those should be restricted. How are we going to restrict vm_insert_page in one half of kernel when other half is still using it ?? Is there any way ? ( I don't know)