From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?Christian_K=c3=b6nig?= Date: Thu, 13 Oct 2016 07:32:51 +0000 Subject: Re: [PATCH 00/10] mm: adjust get_user_pages* functions to explicitly pass FOLL_* flags Message-Id: <914b917f-6871-2ba3-95ba-981dd2855743@amd.com> List-Id: References: <20161013002020.3062-1-lstoakes@gmail.com> In-Reply-To: <20161013002020.3062-1-lstoakes@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable To: Lorenzo Stoakes , linux-mm@kvack.org Cc: linux-mips@linux-mips.org, linux-fbdev@vger.kernel.org, Jan Kara , kvm@vger.kernel.org, linux-sh@vger.kernel.org, Dave Hansen , dri-devel@lists.freedesktop.org, sparclinux@vger.kernel.org, linux-ia64@vger.kernel.org, linux-s390@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-scsi@vger.kernel.org, linux-rdma@vger.kernel.org, x86@kernel.org, Hugh Dickins , linux-media@vger.kernel.org, Rik van Riel , intel-gfx@lists.freedesktop.org, adi-buildroot-devel@lists.sourceforge.net, ceph-devel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Mel Gorman , linux-cris-kernel@axis.com, netdev@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, linux-security-module@vger.kernel.org, linux-alpha@vger.kernel.org, linux-fsdevel@vger.kernel.org Am 13.10.2016 um 02:20 schrieb Lorenzo Stoakes: > This patch series adjusts functions in the get_user_pages* family such th= at > desired FOLL_* flags are passed as an argument rather than implied by fla= gs. > > The purpose of this change is to make the use of FOLL_FORCE explicit so i= t is > easier to grep for and clearer to callers that this flag is being used. T= he use > of FOLL_FORCE is an issue as it overrides missing VM_READ/VM_WRITE flags = for the > VMA whose pages we are reading from/writing to, which can result in surpr= ising > behaviour. > > The patch series came out of the discussion around commit 38e0885, which > addressed a BUG_ON() being triggered when a page was faulted in with PROT= _NONE > set but having been overridden by FOLL_FORCE. do_numa_page() was run on t= he > assumption the page _must_ be one marked for NUMA node migration as an ac= tual > PROT_NONE page would have been dealt with prior to this code path, however > FOLL_FORCE introduced a situation where this assumption did not hold. > > See https://marc.info/?l=3Dlinux-mm&m=147585445805166 for the patch propo= sal. > > Lorenzo Stoakes (10): > mm: remove write/force parameters from __get_user_pages_locked() > mm: remove write/force parameters from __get_user_pages_unlocked() > mm: replace get_user_pages_unlocked() write/force parameters with gup_= flags > mm: replace get_user_pages_locked() write/force parameters with gup_fl= ags > mm: replace get_vaddr_frames() write/force parameters with gup_flags > mm: replace get_user_pages() write/force parameters with gup_flags > mm: replace get_user_pages_remote() write/force parameters with gup_fl= ags > mm: replace __access_remote_vm() write parameter with gup_flags > mm: replace access_remote_vm() write parameter with gup_flags > mm: replace access_process_vm() write parameter with gup_flags Patch number 6 in this series (which touches drivers I co-maintain) is=20 Acked-by: Christian K=C3=B6nig . In general looks like a very nice cleanup to me, but I'm not enlightened=20 enough to full judge. Regards, Christian. > > arch/alpha/kernel/ptrace.c | 9 ++-- > arch/blackfin/kernel/ptrace.c | 5 ++- > arch/cris/arch-v32/drivers/cryptocop.c | 4 +- > arch/cris/arch-v32/kernel/ptrace.c | 4 +- > arch/ia64/kernel/err_inject.c | 2 +- > arch/ia64/kernel/ptrace.c | 14 +++--- > arch/m32r/kernel/ptrace.c | 15 ++++--- > arch/mips/kernel/ptrace32.c | 5 ++- > arch/mips/mm/gup.c | 2 +- > arch/powerpc/kernel/ptrace32.c | 5 ++- > arch/s390/mm/gup.c | 3 +- > arch/score/kernel/ptrace.c | 10 +++-- > arch/sh/mm/gup.c | 3 +- > arch/sparc/kernel/ptrace_64.c | 24 +++++++---- > arch/sparc/mm/gup.c | 3 +- > arch/x86/kernel/step.c | 3 +- > arch/x86/mm/gup.c | 2 +- > arch/x86/mm/mpx.c | 5 +-- > arch/x86/um/ptrace_32.c | 3 +- > arch/x86/um/ptrace_64.c | 3 +- > drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 7 ++- > drivers/gpu/drm/etnaviv/etnaviv_gem.c | 7 ++- > drivers/gpu/drm/exynos/exynos_drm_g2d.c | 3 +- > drivers/gpu/drm/i915/i915_gem_userptr.c | 6 ++- > drivers/gpu/drm/radeon/radeon_ttm.c | 3 +- > drivers/gpu/drm/via/via_dmablit.c | 4 +- > drivers/infiniband/core/umem.c | 6 ++- > drivers/infiniband/core/umem_odp.c | 7 ++- > drivers/infiniband/hw/mthca/mthca_memfree.c | 2 +- > drivers/infiniband/hw/qib/qib_user_pages.c | 3 +- > drivers/infiniband/hw/usnic/usnic_uiom.c | 5 ++- > drivers/media/pci/ivtv/ivtv-udma.c | 4 +- > drivers/media/pci/ivtv/ivtv-yuv.c | 5 ++- > drivers/media/platform/omap/omap_vout.c | 2 +- > drivers/media/v4l2-core/videobuf-dma-sg.c | 7 ++- > drivers/media/v4l2-core/videobuf2-memops.c | 6 ++- > drivers/misc/mic/scif/scif_rma.c | 3 +- > drivers/misc/sgi-gru/grufault.c | 2 +- > drivers/platform/goldfish/goldfish_pipe.c | 3 +- > drivers/rapidio/devices/rio_mport_cdev.c | 3 +- > drivers/scsi/st.c | 5 +-- > .../interface/vchiq_arm/vchiq_2835_arm.c | 3 +- > .../vc04_services/interface/vchiq_arm/vchiq_arm.c | 3 +- > drivers/video/fbdev/pvr2fb.c | 4 +- > drivers/virt/fsl_hypervisor.c | 4 +- > fs/exec.c | 9 +++- > fs/proc/base.c | 19 +++++--- > include/linux/mm.h | 18 ++++---- > kernel/events/uprobes.c | 6 ++- > kernel/ptrace.c | 16 ++++--- > mm/frame_vector.c | 9 ++-- > mm/gup.c | 50 ++++++++++-----= ------- > mm/memory.c | 16 ++++--- > mm/mempolicy.c | 2 +- > mm/nommu.c | 38 +++++++--------- > mm/process_vm_access.c | 7 ++- > mm/util.c | 8 ++-- > net/ceph/pagevec.c | 2 +- > security/tomoyo/domain.c | 2 +- > virt/kvm/async_pf.c | 3 +- > virt/kvm/kvm_main.c | 11 +++-- > 61 files changed, 260 insertions(+), 187 deletions(-) > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?Christian_K=c3=b6nig?= Subject: Re: [PATCH 00/10] mm: adjust get_user_pages* functions to explicitly pass FOLL_* flags Date: Thu, 13 Oct 2016 09:32:51 +0200 Message-ID: <914b917f-6871-2ba3-95ba-981dd2855743@amd.com> References: <20161013002020.3062-1-lstoakes@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20161013002020.3062-1-lstoakes@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Lorenzo Stoakes , linux-mm@kvack.org Cc: linux-mips@linux-mips.org, linux-fbdev@vger.kernel.org, Jan Kara , kvm@vger.kernel.org, linux-sh@vger.kernel.org, Dave Hansen , dri-devel@lists.freedesktop.org, sparclinux@vger.kernel.org, linux-ia64@vger.kernel.org, linux-s390@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-scsi@vger.kernel.org, linux-rdma@vger.kernel.org, x86@kernel.org, Hugh Dickins , linux-media@vger.kernel.org, Rik van Riel , intel-gfx@lists.freedesktop.org, adi-buildroot-devel@lists.sourceforge.net, ceph-devel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Mel Gorman , linux-cris-kernel@axis.com, netdev@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, linux-security-module@vger.kernel.org, linux-alpha@vger.kernel.org, linux-fsdevel@vger.kernel.org List-Id: linux-rdma@vger.kernel.org QW0gMTMuMTAuMjAxNiB1bSAwMjoyMCBzY2hyaWViIExvcmVuem8gU3RvYWtlczoKPiBUaGlzIHBh dGNoIHNlcmllcyBhZGp1c3RzIGZ1bmN0aW9ucyBpbiB0aGUgZ2V0X3VzZXJfcGFnZXMqIGZhbWls eSBzdWNoIHRoYXQKPiBkZXNpcmVkIEZPTExfKiBmbGFncyBhcmUgcGFzc2VkIGFzIGFuIGFyZ3Vt ZW50IHJhdGhlciB0aGFuIGltcGxpZWQgYnkgZmxhZ3MuCj4KPiBUaGUgcHVycG9zZSBvZiB0aGlz IGNoYW5nZSBpcyB0byBtYWtlIHRoZSB1c2Ugb2YgRk9MTF9GT1JDRSBleHBsaWNpdCBzbyBpdCBp cwo+IGVhc2llciB0byBncmVwIGZvciBhbmQgY2xlYXJlciB0byBjYWxsZXJzIHRoYXQgdGhpcyBm bGFnIGlzIGJlaW5nIHVzZWQuIFRoZSB1c2UKPiBvZiBGT0xMX0ZPUkNFIGlzIGFuIGlzc3VlIGFz IGl0IG92ZXJyaWRlcyBtaXNzaW5nIFZNX1JFQUQvVk1fV1JJVEUgZmxhZ3MgZm9yIHRoZQo+IFZN QSB3aG9zZSBwYWdlcyB3ZSBhcmUgcmVhZGluZyBmcm9tL3dyaXRpbmcgdG8sIHdoaWNoIGNhbiBy ZXN1bHQgaW4gc3VycHJpc2luZwo+IGJlaGF2aW91ci4KPgo+IFRoZSBwYXRjaCBzZXJpZXMgY2Ft ZSBvdXQgb2YgdGhlIGRpc2N1c3Npb24gYXJvdW5kIGNvbW1pdCAzOGUwODg1LCB3aGljaAo+IGFk ZHJlc3NlZCBhIEJVR19PTigpIGJlaW5nIHRyaWdnZXJlZCB3aGVuIGEgcGFnZSB3YXMgZmF1bHRl ZCBpbiB3aXRoIFBST1RfTk9ORQo+IHNldCBidXQgaGF2aW5nIGJlZW4gb3ZlcnJpZGRlbiBieSBG T0xMX0ZPUkNFLiBkb19udW1hX3BhZ2UoKSB3YXMgcnVuIG9uIHRoZQo+IGFzc3VtcHRpb24gdGhl IHBhZ2UgX211c3RfIGJlIG9uZSBtYXJrZWQgZm9yIE5VTUEgbm9kZSBtaWdyYXRpb24gYXMgYW4g YWN0dWFsCj4gUFJPVF9OT05FIHBhZ2Ugd291bGQgaGF2ZSBiZWVuIGRlYWx0IHdpdGggcHJpb3Ig dG8gdGhpcyBjb2RlIHBhdGgsIGhvd2V2ZXIKPiBGT0xMX0ZPUkNFIGludHJvZHVjZWQgYSBzaXR1 YXRpb24gd2hlcmUgdGhpcyBhc3N1bXB0aW9uIGRpZCBub3QgaG9sZC4KPgo+IFNlZSBodHRwczov L21hcmMuaW5mby8/bD1saW51eC1tbSZtPTE0NzU4NTQ0NTgwNTE2NiBmb3IgdGhlIHBhdGNoIHBy b3Bvc2FsLgo+Cj4gTG9yZW56byBTdG9ha2VzICgxMCk6Cj4gICAgbW06IHJlbW92ZSB3cml0ZS9m b3JjZSBwYXJhbWV0ZXJzIGZyb20gX19nZXRfdXNlcl9wYWdlc19sb2NrZWQoKQo+ICAgIG1tOiBy ZW1vdmUgd3JpdGUvZm9yY2UgcGFyYW1ldGVycyBmcm9tIF9fZ2V0X3VzZXJfcGFnZXNfdW5sb2Nr ZWQoKQo+ICAgIG1tOiByZXBsYWNlIGdldF91c2VyX3BhZ2VzX3VubG9ja2VkKCkgd3JpdGUvZm9y Y2UgcGFyYW1ldGVycyB3aXRoIGd1cF9mbGFncwo+ICAgIG1tOiByZXBsYWNlIGdldF91c2VyX3Bh Z2VzX2xvY2tlZCgpIHdyaXRlL2ZvcmNlIHBhcmFtZXRlcnMgd2l0aCBndXBfZmxhZ3MKPiAgICBt bTogcmVwbGFjZSBnZXRfdmFkZHJfZnJhbWVzKCkgd3JpdGUvZm9yY2UgcGFyYW1ldGVycyB3aXRo IGd1cF9mbGFncwo+ICAgIG1tOiByZXBsYWNlIGdldF91c2VyX3BhZ2VzKCkgd3JpdGUvZm9yY2Ug cGFyYW1ldGVycyB3aXRoIGd1cF9mbGFncwo+ICAgIG1tOiByZXBsYWNlIGdldF91c2VyX3BhZ2Vz X3JlbW90ZSgpIHdyaXRlL2ZvcmNlIHBhcmFtZXRlcnMgd2l0aCBndXBfZmxhZ3MKPiAgICBtbTog cmVwbGFjZSBfX2FjY2Vzc19yZW1vdGVfdm0oKSB3cml0ZSBwYXJhbWV0ZXIgd2l0aCBndXBfZmxh Z3MKPiAgICBtbTogcmVwbGFjZSBhY2Nlc3NfcmVtb3RlX3ZtKCkgd3JpdGUgcGFyYW1ldGVyIHdp dGggZ3VwX2ZsYWdzCj4gICAgbW06IHJlcGxhY2UgYWNjZXNzX3Byb2Nlc3Nfdm0oKSB3cml0ZSBw YXJhbWV0ZXIgd2l0aCBndXBfZmxhZ3MKClBhdGNoIG51bWJlciA2IGluIHRoaXMgc2VyaWVzICh3 aGljaCB0b3VjaGVzIGRyaXZlcnMgSSBjby1tYWludGFpbikgaXMgCkFja2VkLWJ5OiBDaHJpc3Rp YW4gS8O2bmlnIDxjaHJpc3RpYW4ua29lbmlnQGFtZC5jb20+LgoKSW4gZ2VuZXJhbCBsb29rcyBs aWtlIGEgdmVyeSBuaWNlIGNsZWFudXAgdG8gbWUsIGJ1dCBJJ20gbm90IGVubGlnaHRlbmVkIApl bm91Z2ggdG8gZnVsbCBqdWRnZS4KClJlZ2FyZHMsCkNocmlzdGlhbi4KCj4KPiAgIGFyY2gvYWxw aGEva2VybmVsL3B0cmFjZS5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDkgKystLQo+ICAg YXJjaC9ibGFja2Zpbi9rZXJuZWwvcHRyYWNlLmMgICAgICAgICAgICAgICAgICAgICAgfCAgNSAr Ky0KPiAgIGFyY2gvY3Jpcy9hcmNoLXYzMi9kcml2ZXJzL2NyeXB0b2NvcC5jICAgICAgICAgICAg IHwgIDQgKy0KPiAgIGFyY2gvY3Jpcy9hcmNoLXYzMi9rZXJuZWwvcHRyYWNlLmMgICAgICAgICAg ICAgICAgIHwgIDQgKy0KPiAgIGFyY2gvaWE2NC9rZXJuZWwvZXJyX2luamVjdC5jICAgICAgICAg ICAgICAgICAgICAgIHwgIDIgKy0KPiAgIGFyY2gvaWE2NC9rZXJuZWwvcHRyYWNlLmMgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgMTQgKysrLS0tCj4gICBhcmNoL20zMnIva2VybmVsL3B0cmFj ZS5jICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE1ICsrKystLS0KPiAgIGFyY2gvbWlwcy9r ZXJuZWwvcHRyYWNlMzIuYyAgICAgICAgICAgICAgICAgICAgICAgIHwgIDUgKystCj4gICBhcmNo L21pcHMvbW0vZ3VwLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyICstCj4g ICBhcmNoL3Bvd2VycGMva2VybmVsL3B0cmFjZTMyLmMgICAgICAgICAgICAgICAgICAgICB8ICA1 ICsrLQo+ICAgYXJjaC9zMzkwL21tL2d1cC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgfCAgMyArLQo+ICAgYXJjaC9zY29yZS9rZXJuZWwvcHRyYWNlLmMgICAgICAgICAgICAgICAg ICAgICAgICAgfCAxMCArKystLQo+ICAgYXJjaC9zaC9tbS9ndXAuYyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgfCAgMyArLQo+ICAgYXJjaC9zcGFyYy9rZXJuZWwvcHRyYWNlXzY0 LmMgICAgICAgICAgICAgICAgICAgICAgfCAyNCArKysrKysrLS0tLQo+ICAgYXJjaC9zcGFyYy9t bS9ndXAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMyArLQo+ICAgYXJjaC94 ODYva2VybmVsL3N0ZXAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMyArLQo+ICAg YXJjaC94ODYvbW0vZ3VwLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMiAr LQo+ICAgYXJjaC94ODYvbW0vbXB4LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg fCAgNSArLS0KPiAgIGFyY2gveDg2L3VtL3B0cmFjZV8zMi5jICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHwgIDMgKy0KPiAgIGFyY2gveDg2L3VtL3B0cmFjZV82NC5jICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgIDMgKy0KPiAgIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdw dV90dG0uYyAgICAgICAgICAgIHwgIDcgKystCj4gICBkcml2ZXJzL2dwdS9kcm0vZXRuYXZpdi9l dG5hdml2X2dlbS5jICAgICAgICAgICAgICB8ICA3ICsrLQo+ICAgZHJpdmVycy9ncHUvZHJtL2V4 eW5vcy9leHlub3NfZHJtX2cyZC5jICAgICAgICAgICAgfCAgMyArLQo+ICAgZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9nZW1fdXNlcnB0ci5jICAgICAgICAgICAgfCAgNiArKy0KPiAgIGRyaXZl cnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX3R0bS5jICAgICAgICAgICAgICAgIHwgIDMgKy0KPiAg IGRyaXZlcnMvZ3B1L2RybS92aWEvdmlhX2RtYWJsaXQuYyAgICAgICAgICAgICAgICAgIHwgIDQg Ky0KPiAgIGRyaXZlcnMvaW5maW5pYmFuZC9jb3JlL3VtZW0uYyAgICAgICAgICAgICAgICAgICAg IHwgIDYgKystCj4gICBkcml2ZXJzL2luZmluaWJhbmQvY29yZS91bWVtX29kcC5jICAgICAgICAg ICAgICAgICB8ICA3ICsrLQo+ICAgZHJpdmVycy9pbmZpbmliYW5kL2h3L210aGNhL210aGNhX21l bWZyZWUuYyAgICAgICAgfCAgMiArLQo+ICAgZHJpdmVycy9pbmZpbmliYW5kL2h3L3FpYi9xaWJf dXNlcl9wYWdlcy5jICAgICAgICAgfCAgMyArLQo+ICAgZHJpdmVycy9pbmZpbmliYW5kL2h3L3Vz bmljL3VzbmljX3Vpb20uYyAgICAgICAgICAgfCAgNSArKy0KPiAgIGRyaXZlcnMvbWVkaWEvcGNp L2l2dHYvaXZ0di11ZG1hLmMgICAgICAgICAgICAgICAgIHwgIDQgKy0KPiAgIGRyaXZlcnMvbWVk aWEvcGNpL2l2dHYvaXZ0di15dXYuYyAgICAgICAgICAgICAgICAgIHwgIDUgKystCj4gICBkcml2 ZXJzL21lZGlhL3BsYXRmb3JtL29tYXAvb21hcF92b3V0LmMgICAgICAgICAgICB8ICAyICstCj4g ICBkcml2ZXJzL21lZGlhL3Y0bDItY29yZS92aWRlb2J1Zi1kbWEtc2cuYyAgICAgICAgICB8ICA3 ICsrLQo+ICAgZHJpdmVycy9tZWRpYS92NGwyLWNvcmUvdmlkZW9idWYyLW1lbW9wcy5jICAgICAg ICAgfCAgNiArKy0KPiAgIGRyaXZlcnMvbWlzYy9taWMvc2NpZi9zY2lmX3JtYS5jICAgICAgICAg ICAgICAgICAgIHwgIDMgKy0KPiAgIGRyaXZlcnMvbWlzYy9zZ2ktZ3J1L2dydWZhdWx0LmMgICAg ICAgICAgICAgICAgICAgIHwgIDIgKy0KPiAgIGRyaXZlcnMvcGxhdGZvcm0vZ29sZGZpc2gvZ29s ZGZpc2hfcGlwZS5jICAgICAgICAgIHwgIDMgKy0KPiAgIGRyaXZlcnMvcmFwaWRpby9kZXZpY2Vz L3Jpb19tcG9ydF9jZGV2LmMgICAgICAgICAgIHwgIDMgKy0KPiAgIGRyaXZlcnMvc2NzaS9zdC5j ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDUgKy0tCj4gICAuLi4vaW50ZXJm YWNlL3ZjaGlxX2FybS92Y2hpcV8yODM1X2FybS5jICAgICAgICAgICB8ICAzICstCj4gICAuLi4v dmMwNF9zZXJ2aWNlcy9pbnRlcmZhY2UvdmNoaXFfYXJtL3ZjaGlxX2FybS5jICB8ICAzICstCj4g ICBkcml2ZXJzL3ZpZGVvL2ZiZGV2L3B2cjJmYi5jICAgICAgICAgICAgICAgICAgICAgICB8ICA0 ICstCj4gICBkcml2ZXJzL3ZpcnQvZnNsX2h5cGVydmlzb3IuYyAgICAgICAgICAgICAgICAgICAg ICB8ICA0ICstCj4gICBmcy9leGVjLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8ICA5ICsrKy0KPiAgIGZzL3Byb2MvYmFzZS5jICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgMTkgKysrKystLS0KPiAgIGluY2x1ZGUvbGludXgvbW0uaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMTggKysrKy0tLS0KPiAgIGtlcm5lbC9ldmVu dHMvdXByb2Jlcy5jICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDYgKystCj4gICBrZXJu ZWwvcHRyYWNlLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE2ICsrKyst LS0KPiAgIG1tL2ZyYW1lX3ZlY3Rvci5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgIDkgKystLQo+ICAgbW0vZ3VwLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfCA1MCArKysrKysrKysrLS0tLS0tLS0tLS0tCj4gICBtbS9tZW1vcnkuYyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE2ICsrKystLS0KPiAgIG1tL21l bXBvbGljeS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KPiAg IG1tL25vbW11LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMzgg KysrKysrKy0tLS0tLS0tLQo+ICAgbW0vcHJvY2Vzc192bV9hY2Nlc3MuYyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgNyArKy0KPiAgIG1tL3V0aWwuYyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgIDggKystLQo+ICAgbmV0L2NlcGgvcGFnZXZlYy5jICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMiArLQo+ICAgc2VjdXJpdHkvdG9tb3lv L2RvbWFpbi5jICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMiArLQo+ICAgdmlydC9rdm0v YXN5bmNfcGYuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMyArLQo+ICAgdmly dC9rdm0va3ZtX21haW4uYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAxMSArKyst LQo+ICAgNjEgZmlsZXMgY2hhbmdlZCwgMjYwIGluc2VydGlvbnMoKyksIDE4NyBkZWxldGlvbnMo LSkKPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+IGRy aS1kZXZlbCBtYWlsaW5nIGxpc3QKPiBkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4g aHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1n ZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752015AbcJMHtX (ORCPT ); Thu, 13 Oct 2016 03:49:23 -0400 Received: from mail-by2nam01on0063.outbound.protection.outlook.com ([104.47.34.63]:39648 "EHLO NAM01-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750822AbcJMHtQ (ORCPT ); Thu, 13 Oct 2016 03:49:16 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Christian.Koenig@amd.com; Subject: Re: [PATCH 00/10] mm: adjust get_user_pages* functions to explicitly pass FOLL_* flags To: Lorenzo Stoakes , References: <20161013002020.3062-1-lstoakes@gmail.com> CC: , , Jan Kara , , , "Dave Hansen" , , , , , , , , , , Hugh Dickins , , Rik van Riel , , , , , , "Linus Torvalds" , , , , , , Andrew Morton , Mel Gorman From: =?UTF-8?Q?Christian_K=c3=b6nig?= Message-ID: <914b917f-6871-2ba3-95ba-981dd2855743@amd.com> Date: Thu, 13 Oct 2016 09:32:51 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0 MIME-Version: 1.0 In-Reply-To: <20161013002020.3062-1-lstoakes@gmail.com> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 8bit X-Originating-IP: [2a02:908:1251:7981:cdda:efc6:6731:e0e1] X-ClientProxiedBy: VI1PR06CA0011.eurprd06.prod.outlook.com (10.162.116.149) To MWHPR12MB1309.namprd12.prod.outlook.com (10.169.205.21) X-MS-Office365-Filtering-Correlation-Id: 7f596959-dbf5-4441-3d93-08d3f33b3657 X-Microsoft-Exchange-Diagnostics: 1;MWHPR12MB1309;2:Ul69zh9/xFfeOzv6d+sxsm5476x6yNzUvgzN74jCIZNzpBF5tR3o555iWTYxUwt781IdHI07rOt28nrbgKbXReMq7fyYmMt750rrbprt+XTwxQM+58qYraVvBQuycyCe6EulAMnrg348YgwRea2Q+FJXur5/cZ1OZYL573bSfrcsorK8rQLCI7juErkZMVxmNgERTlqG0N/yFq4pAwWeeQ==;3:sfngFe8NbziVcJUsQV0hIjQybgT24VDvPTgxlC/PeeycDD1r4Ufzw8ykWOGu9NJyFzDnpJBOVxAIV7sYkl9zayPFqUFac2LEOl4xzFjdud7rE3pBPhOz1tifoHY+vC0myjdyS6Qk3eQrZ/pc4wKuow== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:MWHPR12MB1309; X-Microsoft-Exchange-Diagnostics: 1;MWHPR12MB1309;25:3vnDlytQDH8N13vkiJ9Z722wYWN3jvkiRvWgFiPBPWWbbxXAO4zMEDneqBXGo2hAcHQYBjvwnFZpUW/FNtGfw88ZrTl/AnR44B60QnqdQCTzRaUQJubIZy8QYaxQ59th/rOIC2nSK+rWSaqM7IqSddIm6hgnlRKHiPOAYgxCZemdQs/1Go1MIdP1dKKwSEfr3ZUP4c/7hpLigsqiisIgittcAwsGrqIl797SOAu+zemQQ0pK8ITmKU7SwhU0vYzCPaIxW3FBBzpsO1eQT+ktkDzMk1vighgQH+Oa+PLw9YKjSvw6+StVNavxbGP2MgCodw2oLugV2zV1p8daBUwQcCU3z/honrgA40FptaiZgZpBvbKtfiBYPF9VUbkv2YXWpJ0TOh6scDqDvcxl8+MUUZtEb8La1QJRn6myU0fnB7xG4SkaKypd4GXYmQ8b2LMKD2X19CnTnQ99iVtk1BytTT5O/SjUnesMSh2RWk5YAZxZZQ/+af/2VLufRoMMPhVNW3bQ+M2OCdnbGQKDImjOA5p4EziQVF6XcFrnyJyGjwU9hN0OjyxLGMKnN/MgKoiVK4I2kThdHyQmpeUyGtNwc+NCj51DIQpwRfGMj8tE7ZIdzcdBv9vm5fMhoivIhCszrQ/4eoMo22JBF4SaqTyIWRF6VIHMM4DqtHDbFYxa7r9m1eUd9cWactaJtO803Cmx7ZSb+nZQ/76mVwmQxSfA3xCzjmQNVftohYNK7UBe8o9p0gHtg37mPJtFX9IhdawI3Oqa/r60aTWaW7tWz4p8jhYgpnyrkmKXjLG14UdC4oF7/TQUX5UBpJwSzJ864DDy+qnzsteTsW6DSvSZgwFQdbrNjZf7/iccbEewLTUq8YdjuwlJWSfUOa7coCBgMZrG X-Microsoft-Exchange-Diagnostics: 1;MWHPR12MB1309;31:w5vU0cT5+wyqFLGEOIMauy4xaZjrQcgIswPoHbihzGOSecc0d5Mhn3c4pkmJAelIF5VTTMHxxnWOwnznk/7Zj6GyLdYy3xd6aveh+okjO9Jk9mZb/vm90crzV4Dm71FiC2BLmLQLRIz+grCbfMy+u+UfYpgT7VvWro8LJS6bmlY9ie3T494C68sGLkfGYg9vs7iPVo/lWg0snOIrx6s+Qk4IwYmm0DrUKGKB5T8FcCXmSK77ChmjpOt5iygCIdzv8Ei/P4Jn4NH502tYtHkbgvZ3z0aIIuJQS50KkeZf21E=;20:2xulnEnxGpbGsEL2DpWJGk6HFl1HyfQeiDm68ALIHywwMRpKWwmEVbv74O7oWUza9bf+tFIY3pTOBYppuL+nOLbERusLESPjH58NguwpWmzUtjMNhTH2ZDOGjQwLW4kgaPYRfagZ+gS+ltmlhQPWVCNdQvKkHjn4h89h2rO3B6D0Jt5qw/LPvDCPhkgA2EpwoQy0M8nZLnV9z/esg/p+O7ERn5NEDz2K9XKiePckeBR9YkjyvKNNizjmxbHgNtYq2zW4Sj49gTkmqYYnGxm04IPHpOxCACz6Bw67gIGGuGwro2kxIRQBI4SELijuw6bBWOzo8fhXnS+0D9Xpcs6rVFYusCKbsTHOpFdJGJ5oz+PbCxTmarY+u9sjHVeggVKPLuZhA2ZFAglrwlUjY8cK8PhPk1nhyQU+V2G2gQm6xlPfFM1pkK4QOhUOu9E8sFFLVgWg6F+iG83qSqSwwZPKTOt+VmrH36tlGDIvDnJyoUDroU12Ze8IdWIXd+dkP1NB X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(192374486261705)(767451399110)(788757137089)(217544274631240); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040176)(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001)(6055026);SRVR:MWHPR12MB1309;BCL:0;PCL:0;RULEID:;SRVR:MWHPR12MB1309; X-Microsoft-Exchange-Diagnostics: 1;MWHPR12MB1309;4:p7BL+8t8XdUI+6pzr+7oLJyFb9maRP+gd247iCBoqbsV5S4PrYD8a/2ZkXDMsQW/dgsvw+CsKpX4d6tpCsoov0VuErWDcBBe8XlNkODB/4StHnSBTEMghH0bx6bCDftV3lhIqeUYZzV1iVM1fiDJGYIs64pNhF7Yeyyi3WoCYyvoP988BtTGaOZwB35AFdbEUOjMOh5hghixQBZXQDTIhfYZmwDxea5CGwv714612LC2Wbes7aEuqFTx/yNZaV362UChLPpjKSExWStykUWcRGm6sj67ZtV9FGzjp+397mJMBIieldRvcNgswPhY61XVJKm+BbQ6pgyI37MIpb9JtqE4MHVza6oD5vGCwAIbdlFwDA2ZBV+PdCSNF6m2L/sq3yA6Q5ldnnbFCQk/QQm08VoaNmzSwM6WjNOdueP8dpaa7rqzyk2QjxnkZf7IUr2ythg5mBMTRRpPd3KpUZ65pYnlFaRmnVupO1Df5q4jO8loMKzmzDrXb3TO887iUDMo1OLV0Ee08m5fRShsGPj14i7w7C3BMhIHq5GoZuH8AMOa6RGlg+71Xyko4fardQHp X-Forefront-PRVS: 0094E3478A X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6009001)(7916002)(189002)(199003)(105586002)(4001350100001)(106356001)(65956001)(5001770100001)(97736004)(81166006)(81156014)(8676002)(19580395003)(6116002)(42186005)(305945005)(47776003)(83506001)(561944003)(31686004)(19580405001)(33646002)(2906002)(189998001)(4326007)(15975445007)(7406005)(23676002)(64126003)(50466002)(5660300001)(101416001)(7416002)(68736007)(36756003)(76176999)(86362001)(54356999)(2870700001)(2950100002)(50986999)(586003)(65806001)(7846002)(7736002)(92566002)(1706002)(65826007)(31696002)(77096005)(6666003)(3826002)(2101003)(6606295002);DIR:OUT;SFP:1101;SCL:1;SRVR:MWHPR12MB1309;H:[IPv6:2a02:908:1251:7981:cdda:efc6:6731:e0e1];FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtNV0hQUjEyTUIxMzA5OzIzOm1OT0IwcXFCSExyV2JjajhZMWd0aEIzeWgw?= =?utf-8?B?cVNIYllxWWhCRzF4S2VFMXg1cEFZMyt6NVYxelJVL2RGdHZSQVp5YzFHUjAr?= =?utf-8?B?bHhENnF4eCs2MUJJNm04U1VxMk5SWTZKQ011ZVBzRXl5WWVOZnloVXRCdVZG?= =?utf-8?B?aU12TWl6eXhsaVJ6bW9sQWNKb00zdXdPSUhMTEtKSmc1R2lNNnJkUEVGTERQ?= =?utf-8?B?c1dTQmpyYUtKRDVGeXhBb3RScThtWUFlWEVudkJoNHJVbXllU1djMUM2V25E?= =?utf-8?B?L3AzcXh5U25FZ1JUb3A1UVQxOVpvMkc2TkNRbUNWb3VtcFBWNjVneU1RT1o3?= =?utf-8?B?V3RRRU1KQ2Q2QzBOalNCVHRmVVg3ZWcrQzhudXdINlIrU2VyK1AyaVBoV1Ru?= =?utf-8?B?YVplM1h5MHNUZ1hvaUVtSngxQjlBRkNBTEFHMjU3TnhlK09wQzIrMnRYNzNr?= =?utf-8?B?U0MwSGdLem5qWC9oYkdkRkozOFV3cG50TDN6dTFVSFBxdjltaEl2WFZJS0Rm?= =?utf-8?B?Wmo5cEwwN1hmamg4anBFVitWNUh4M2N3Znc2S0w5a1ZFUlI5MEJPVExMV25M?= =?utf-8?B?VGw0TTRIYmU3VzZIUzVHZld0N053UWJ2UzF1WGFrRlBQZERkTUg4eGJSeXg4?= =?utf-8?B?NVpDSEtrd3BmSEUxVnBPRjhEWVdqQWM1eXhsR1RVZ3FPdXd0RmptN0ZGeW1R?= =?utf-8?B?T2NSR3BWOEpmNWJhbkdUbU5VRHFudHRuM2FlSXVoR2tIamJQVGdQazIxb2Rv?= =?utf-8?B?RDdNNkJhckVrSU5DTWxNOEkyZGhHUGNIWjd2NkV6YzBjSTRHUFYrSHpRdUtI?= =?utf-8?B?ZHdpMnkvRkY4VXB6Q2MvSXZaOVdXWjEyZUdlSzFXVWVjQUlHVlRXbWp3M29M?= =?utf-8?B?V0YraWlsUHhyV1doMU5oOWdzYmoyMXhrMWs4ZzhJcEdBOCs2OVhiVEw0REVN?= =?utf-8?B?czZ4amxaYlB2NVRpaW01UW9HZ3lwc0Nvb0pXWWFCbElOZ0RMcGVmZDRJdVZa?= =?utf-8?B?NUIyRWZ5R2JNTisvVEwrS2RWa25YcmR4UU12YnUzaDl5c2Z4YzY4bVVXTlRX?= =?utf-8?B?MVF5NEhGakFEMTc1U2xRTmk5eUdHVDh0a3NaN0tSRHQ1UmUrbDBPTUE4M3lj?= =?utf-8?B?dDRBTXJ2WmNJRm9jVk11cWliUDhRTVNRcUJET1lxQnZ6NnR4MmtwRDZWd1ZO?= =?utf-8?B?UDNQYXhSU2Evc2h6MGdKSUlIYjRydXNwbnY0K3ZpSVZVK1ZZZ251WlRURTZI?= =?utf-8?B?YTgvQnZCTEJuVGpVc3JYeFNvY250NTJLSmJnOHpoT29DRm1OQXN6VXRsN2cv?= =?utf-8?B?ZkRzdlNvamZ6bk1jMXhoQUZTVm0rdzdjaEcyU2dOOTRQZUZ1ZHc1ZGhIL0ZV?= =?utf-8?B?TWdqS1lvMjMzV0tNdS92SHFPUjExVnBrenRvcy9PVlFvdCtMdUp4aGs5NytS?= =?utf-8?B?Vi9JYWgxd2xKMnVkb3hLNG1OWXQrRW9jblBYcUM1RVp3cGZjZStTTmN5WWVq?= =?utf-8?B?Zjh2eFliNmdUZjJZeW0zQ2psQjcwVjVQV0QwVVY0REFrYjNSTVdJZENuVmVt?= =?utf-8?B?SXdMbWdNdStEb0Q1R2FRYlFlaHBaSlNOU2pQL0hGeVpmT1hWb0NpbDd2Q3pI?= =?utf-8?B?bHR3RWNWSHBmZ2NqR2FRNEtVd1htb1Q3SkswOStYVUcxRFJ6SmROR1VscG1F?= =?utf-8?B?azQ0bkFoWllaeGtjbmhXZ0pBR3ZRM1pGZDZhZWVTVVpqRFFjV2VNYjc1YWhP?= =?utf-8?B?N3Zwam1Xem9lRzdPNHNDTEpPT1U1bG9XaFZPVXJqZFpUMk4waWUvVlUrZHF2?= =?utf-8?B?bWFPSSswbGxaeUhDb0E4MmtqcTlvUE5oUmhSaGIzWlpDTTRPa2NqbExKOEVT?= =?utf-8?Q?aTnne52P0XGVsH53sP1cELe/09+aJIPn?= X-Microsoft-Exchange-Diagnostics: 1;MWHPR12MB1309;6:Ndold4bG3Xtj/W6vJzZDhwFplu0l8aSIN/HZqWBMpACMnvjZN+DtzT3qOpgI9GMyo3uwjmD6YaUpVTq7g8DnF3BtjXBoT+55Fo37YvGxG3d4LD3KX6a+/rsWSBOdGihpwvGlV8sTdKKa2nru8z+Dns2Hs/17UqDSjVxo3CE9hh1bw0b22N+XNlQh7viaJ9s2u9PcPeCWZeBtQW/t5vGKWTtdTxUH1jlcuZl0lTs9oA6Tm4wuy/qdkq7t3wWqAdsETTxvZ8p3vqV9qvCRwoxzBVL7OuagmAorTY+3CLAwBNktSpDAH1xGYOgozlM6GTCG6apR1qprJ8TbNlrlNlqrmw==;5:0jasrAeXugvvuVg0HV7wr7/VbtscSbhshJRx7WA1uS5fCzbCikbdrD0ZccgTt12Kye7OEQFNzgTUYqzV1D2CLhmDNjqHvxU21fWAc7tYRKoHQmTcZvkgNJ0p3veO24UsOHTmqlTkddPkFfjEa/jVYXF4sFZGG2xsRrVDItQ0wHU=;24:5jY9trklzQ6o6525IYKmCWOlYv2E0sRhtbC2Hojaxn7J+udLVMvb2da13DHrV2hqUzFUFRD96UKbAzBR06zEqi3s1FLLFZtp5iBu6jAAXbE= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;MWHPR12MB1309;7:uMtn35ZvQYCRFSyMFi0cwsLzWlobxy8QCUtVpPMNyE6VDO7KjuOcXjtb8rC3cnKCaI0hEjeWXRF9+y/17FG2qKfYPlK2mWRWeh44MkoYhJm2k2CqpcILy1DIxMQkiGa2iI5ouxIpSeMXwRRXMmA+2TUIT20lWeC55LnNIwNGzZw2ocL31PJJdmBh2iLpa46/VpX9NwK8jZo3HGg4TFZ217GoNLUwTfJWRQmwE5SE48snI8Z0NmA7URC5jPGr+HTZ1W+l4hXBznqXCmRRFxNKhuWmgJOBKZSepx7v4y+5c5AF9w7/XLV5x5BW1cise0ZDobWhPxSvtivGF01R6x1FmJZNRU8czvXwjDXuMPwHeII=;20:K84z9lKU67o6oNmXygnmk+FBLXLABZZzIvlxwuBwD4ReHcht+rmb452NWeZMudY7FPKlHAWgUZ9Jx+b5aVMSLRs/7C9/nj/PXJtUoiGq8rOJx/+a1uQxm0+TEDTntcC7SsZdaX6sw44By0bT0m1sabqdhm3xMGz9cBGLiOqD8x1BJNPPbAyn7yxMP+eEK6c0DmTml3hxACoS3OYQbn0BG17NL2l0Iz2G2qI2IdAR7xxUOZ/ES7Ynj6HXdi6YtuWa X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Oct 2016 07:33:15.5396 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR12MB1309 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Am 13.10.2016 um 02:20 schrieb Lorenzo Stoakes: > This patch series adjusts functions in the get_user_pages* family such that > desired FOLL_* flags are passed as an argument rather than implied by flags. > > The purpose of this change is to make the use of FOLL_FORCE explicit so it is > easier to grep for and clearer to callers that this flag is being used. The use > of FOLL_FORCE is an issue as it overrides missing VM_READ/VM_WRITE flags for the > VMA whose pages we are reading from/writing to, which can result in surprising > behaviour. > > The patch series came out of the discussion around commit 38e0885, which > addressed a BUG_ON() being triggered when a page was faulted in with PROT_NONE > set but having been overridden by FOLL_FORCE. do_numa_page() was run on the > assumption the page _must_ be one marked for NUMA node migration as an actual > PROT_NONE page would have been dealt with prior to this code path, however > FOLL_FORCE introduced a situation where this assumption did not hold. > > See https://marc.info/?l=linux-mm&m=147585445805166 for the patch proposal. > > Lorenzo Stoakes (10): > mm: remove write/force parameters from __get_user_pages_locked() > mm: remove write/force parameters from __get_user_pages_unlocked() > mm: replace get_user_pages_unlocked() write/force parameters with gup_flags > mm: replace get_user_pages_locked() write/force parameters with gup_flags > mm: replace get_vaddr_frames() write/force parameters with gup_flags > mm: replace get_user_pages() write/force parameters with gup_flags > mm: replace get_user_pages_remote() write/force parameters with gup_flags > mm: replace __access_remote_vm() write parameter with gup_flags > mm: replace access_remote_vm() write parameter with gup_flags > mm: replace access_process_vm() write parameter with gup_flags Patch number 6 in this series (which touches drivers I co-maintain) is Acked-by: Christian König . In general looks like a very nice cleanup to me, but I'm not enlightened enough to full judge. Regards, Christian. > > arch/alpha/kernel/ptrace.c | 9 ++-- > arch/blackfin/kernel/ptrace.c | 5 ++- > arch/cris/arch-v32/drivers/cryptocop.c | 4 +- > arch/cris/arch-v32/kernel/ptrace.c | 4 +- > arch/ia64/kernel/err_inject.c | 2 +- > arch/ia64/kernel/ptrace.c | 14 +++--- > arch/m32r/kernel/ptrace.c | 15 ++++--- > arch/mips/kernel/ptrace32.c | 5 ++- > arch/mips/mm/gup.c | 2 +- > arch/powerpc/kernel/ptrace32.c | 5 ++- > arch/s390/mm/gup.c | 3 +- > arch/score/kernel/ptrace.c | 10 +++-- > arch/sh/mm/gup.c | 3 +- > arch/sparc/kernel/ptrace_64.c | 24 +++++++---- > arch/sparc/mm/gup.c | 3 +- > arch/x86/kernel/step.c | 3 +- > arch/x86/mm/gup.c | 2 +- > arch/x86/mm/mpx.c | 5 +-- > arch/x86/um/ptrace_32.c | 3 +- > arch/x86/um/ptrace_64.c | 3 +- > drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 7 ++- > drivers/gpu/drm/etnaviv/etnaviv_gem.c | 7 ++- > drivers/gpu/drm/exynos/exynos_drm_g2d.c | 3 +- > drivers/gpu/drm/i915/i915_gem_userptr.c | 6 ++- > drivers/gpu/drm/radeon/radeon_ttm.c | 3 +- > drivers/gpu/drm/via/via_dmablit.c | 4 +- > drivers/infiniband/core/umem.c | 6 ++- > drivers/infiniband/core/umem_odp.c | 7 ++- > drivers/infiniband/hw/mthca/mthca_memfree.c | 2 +- > drivers/infiniband/hw/qib/qib_user_pages.c | 3 +- > drivers/infiniband/hw/usnic/usnic_uiom.c | 5 ++- > drivers/media/pci/ivtv/ivtv-udma.c | 4 +- > drivers/media/pci/ivtv/ivtv-yuv.c | 5 ++- > drivers/media/platform/omap/omap_vout.c | 2 +- > drivers/media/v4l2-core/videobuf-dma-sg.c | 7 ++- > drivers/media/v4l2-core/videobuf2-memops.c | 6 ++- > drivers/misc/mic/scif/scif_rma.c | 3 +- > drivers/misc/sgi-gru/grufault.c | 2 +- > drivers/platform/goldfish/goldfish_pipe.c | 3 +- > drivers/rapidio/devices/rio_mport_cdev.c | 3 +- > drivers/scsi/st.c | 5 +-- > .../interface/vchiq_arm/vchiq_2835_arm.c | 3 +- > .../vc04_services/interface/vchiq_arm/vchiq_arm.c | 3 +- > drivers/video/fbdev/pvr2fb.c | 4 +- > drivers/virt/fsl_hypervisor.c | 4 +- > fs/exec.c | 9 +++- > fs/proc/base.c | 19 +++++--- > include/linux/mm.h | 18 ++++---- > kernel/events/uprobes.c | 6 ++- > kernel/ptrace.c | 16 ++++--- > mm/frame_vector.c | 9 ++-- > mm/gup.c | 50 ++++++++++------------ > mm/memory.c | 16 ++++--- > mm/mempolicy.c | 2 +- > mm/nommu.c | 38 +++++++--------- > mm/process_vm_access.c | 7 ++- > mm/util.c | 8 ++-- > net/ceph/pagevec.c | 2 +- > security/tomoyo/domain.c | 2 +- > virt/kvm/async_pf.c | 3 +- > virt/kvm/kvm_main.c | 11 +++-- > 61 files changed, 260 insertions(+), 187 deletions(-) > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?Christian_K=c3=b6nig?= Subject: Re: [PATCH 00/10] mm: adjust get_user_pages* functions to explicitly pass FOLL_* flags Date: Thu, 13 Oct 2016 09:32:51 +0200 Message-ID: <914b917f-6871-2ba3-95ba-981dd2855743@amd.com> References: <20161013002020.3062-1-lstoakes@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Cc: linux-mips@linux-mips.org, linux-fbdev@vger.kernel.org, Jan Kara , kvm@vger.kernel.org, linux-sh@vger.kernel.org, Dave Hansen , dri-devel@lists.freedesktop.org, sparclinux@vger.kernel.org, linux-ia64@vger.kernel.org, linux-s390@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-scsi@vger.kernel.org, linux-rdma@vger.kernel.org, x86@kernel.org, Hugh Dickins , linux-media@vger.kernel.org, Rik van Riel , intel-gfx@lists.freedesktop.org, adi-buildroot-devel@lists.sourceforge.net, ceph-devel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Mel Gorman , linux-cris-kernel@axis.com, netdev@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, linux-security-module@vger.kernel.org, linux-alpha@vger.kernel.org, linux-fsdevel@vger.kernel.org To: Lorenzo Stoakes , Return-path: In-Reply-To: <20161013002020.3062-1-lstoakes@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" List-Id: netdev.vger.kernel.org QW0gMTMuMTAuMjAxNiB1bSAwMjoyMCBzY2hyaWViIExvcmVuem8gU3RvYWtlczoKPiBUaGlzIHBh dGNoIHNlcmllcyBhZGp1c3RzIGZ1bmN0aW9ucyBpbiB0aGUgZ2V0X3VzZXJfcGFnZXMqIGZhbWls eSBzdWNoIHRoYXQKPiBkZXNpcmVkIEZPTExfKiBmbGFncyBhcmUgcGFzc2VkIGFzIGFuIGFyZ3Vt ZW50IHJhdGhlciB0aGFuIGltcGxpZWQgYnkgZmxhZ3MuCj4KPiBUaGUgcHVycG9zZSBvZiB0aGlz IGNoYW5nZSBpcyB0byBtYWtlIHRoZSB1c2Ugb2YgRk9MTF9GT1JDRSBleHBsaWNpdCBzbyBpdCBp cwo+IGVhc2llciB0byBncmVwIGZvciBhbmQgY2xlYXJlciB0byBjYWxsZXJzIHRoYXQgdGhpcyBm bGFnIGlzIGJlaW5nIHVzZWQuIFRoZSB1c2UKPiBvZiBGT0xMX0ZPUkNFIGlzIGFuIGlzc3VlIGFz IGl0IG92ZXJyaWRlcyBtaXNzaW5nIFZNX1JFQUQvVk1fV1JJVEUgZmxhZ3MgZm9yIHRoZQo+IFZN QSB3aG9zZSBwYWdlcyB3ZSBhcmUgcmVhZGluZyBmcm9tL3dyaXRpbmcgdG8sIHdoaWNoIGNhbiBy ZXN1bHQgaW4gc3VycHJpc2luZwo+IGJlaGF2aW91ci4KPgo+IFRoZSBwYXRjaCBzZXJpZXMgY2Ft ZSBvdXQgb2YgdGhlIGRpc2N1c3Npb24gYXJvdW5kIGNvbW1pdCAzOGUwODg1LCB3aGljaAo+IGFk ZHJlc3NlZCBhIEJVR19PTigpIGJlaW5nIHRyaWdnZXJlZCB3aGVuIGEgcGFnZSB3YXMgZmF1bHRl ZCBpbiB3aXRoIFBST1RfTk9ORQo+IHNldCBidXQgaGF2aW5nIGJlZW4gb3ZlcnJpZGRlbiBieSBG T0xMX0ZPUkNFLiBkb19udW1hX3BhZ2UoKSB3YXMgcnVuIG9uIHRoZQo+IGFzc3VtcHRpb24gdGhl IHBhZ2UgX211c3RfIGJlIG9uZSBtYXJrZWQgZm9yIE5VTUEgbm9kZSBtaWdyYXRpb24gYXMgYW4g YWN0dWFsCj4gUFJPVF9OT05FIHBhZ2Ugd291bGQgaGF2ZSBiZWVuIGRlYWx0IHdpdGggcHJpb3Ig dG8gdGhpcyBjb2RlIHBhdGgsIGhvd2V2ZXIKPiBGT0xMX0ZPUkNFIGludHJvZHVjZWQgYSBzaXR1 YXRpb24gd2hlcmUgdGhpcyBhc3N1bXB0aW9uIGRpZCBub3QgaG9sZC4KPgo+IFNlZSBodHRwczov L21hcmMuaW5mby8/bD1saW51eC1tbSZtPTE0NzU4NTQ0NTgwNTE2NiBmb3IgdGhlIHBhdGNoIHBy b3Bvc2FsLgo+Cj4gTG9yZW56byBTdG9ha2VzICgxMCk6Cj4gICAgbW06IHJlbW92ZSB3cml0ZS9m b3JjZSBwYXJhbWV0ZXJzIGZyb20gX19nZXRfdXNlcl9wYWdlc19sb2NrZWQoKQo+ICAgIG1tOiBy ZW1vdmUgd3JpdGUvZm9yY2UgcGFyYW1ldGVycyBmcm9tIF9fZ2V0X3VzZXJfcGFnZXNfdW5sb2Nr ZWQoKQo+ICAgIG1tOiByZXBsYWNlIGdldF91c2VyX3BhZ2VzX3VubG9ja2VkKCkgd3JpdGUvZm9y Y2UgcGFyYW1ldGVycyB3aXRoIGd1cF9mbGFncwo+ICAgIG1tOiByZXBsYWNlIGdldF91c2VyX3Bh Z2VzX2xvY2tlZCgpIHdyaXRlL2ZvcmNlIHBhcmFtZXRlcnMgd2l0aCBndXBfZmxhZ3MKPiAgICBt bTogcmVwbGFjZSBnZXRfdmFkZHJfZnJhbWVzKCkgd3JpdGUvZm9yY2UgcGFyYW1ldGVycyB3aXRo IGd1cF9mbGFncwo+ICAgIG1tOiByZXBsYWNlIGdldF91c2VyX3BhZ2VzKCkgd3JpdGUvZm9yY2Ug cGFyYW1ldGVycyB3aXRoIGd1cF9mbGFncwo+ICAgIG1tOiByZXBsYWNlIGdldF91c2VyX3BhZ2Vz X3JlbW90ZSgpIHdyaXRlL2ZvcmNlIHBhcmFtZXRlcnMgd2l0aCBndXBfZmxhZ3MKPiAgICBtbTog cmVwbGFjZSBfX2FjY2Vzc19yZW1vdGVfdm0oKSB3cml0ZSBwYXJhbWV0ZXIgd2l0aCBndXBfZmxh Z3MKPiAgICBtbTogcmVwbGFjZSBhY2Nlc3NfcmVtb3RlX3ZtKCkgd3JpdGUgcGFyYW1ldGVyIHdp dGggZ3VwX2ZsYWdzCj4gICAgbW06IHJlcGxhY2UgYWNjZXNzX3Byb2Nlc3Nfdm0oKSB3cml0ZSBw YXJhbWV0ZXIgd2l0aCBndXBfZmxhZ3MKClBhdGNoIG51bWJlciA2IGluIHRoaXMgc2VyaWVzICh3 aGljaCB0b3VjaGVzIGRyaXZlcnMgSSBjby1tYWludGFpbikgaXMgCkFja2VkLWJ5OiBDaHJpc3Rp YW4gS8O2bmlnIDxjaHJpc3RpYW4ua29lbmlnQGFtZC5jb20+LgoKSW4gZ2VuZXJhbCBsb29rcyBs aWtlIGEgdmVyeSBuaWNlIGNsZWFudXAgdG8gbWUsIGJ1dCBJJ20gbm90IGVubGlnaHRlbmVkIApl bm91Z2ggdG8gZnVsbCBqdWRnZS4KClJlZ2FyZHMsCkNocmlzdGlhbi4KCj4KPiAgIGFyY2gvYWxw aGEva2VybmVsL3B0cmFjZS5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDkgKystLQo+ICAg YXJjaC9ibGFja2Zpbi9rZXJuZWwvcHRyYWNlLmMgICAgICAgICAgICAgICAgICAgICAgfCAgNSAr Ky0KPiAgIGFyY2gvY3Jpcy9hcmNoLXYzMi9kcml2ZXJzL2NyeXB0b2NvcC5jICAgICAgICAgICAg IHwgIDQgKy0KPiAgIGFyY2gvY3Jpcy9hcmNoLXYzMi9rZXJuZWwvcHRyYWNlLmMgICAgICAgICAg ICAgICAgIHwgIDQgKy0KPiAgIGFyY2gvaWE2NC9rZXJuZWwvZXJyX2luamVjdC5jICAgICAgICAg ICAgICAgICAgICAgIHwgIDIgKy0KPiAgIGFyY2gvaWE2NC9rZXJuZWwvcHRyYWNlLmMgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgMTQgKysrLS0tCj4gICBhcmNoL20zMnIva2VybmVsL3B0cmFj ZS5jICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE1ICsrKystLS0KPiAgIGFyY2gvbWlwcy9r ZXJuZWwvcHRyYWNlMzIuYyAgICAgICAgICAgICAgICAgICAgICAgIHwgIDUgKystCj4gICBhcmNo L21pcHMvbW0vZ3VwLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyICstCj4g ICBhcmNoL3Bvd2VycGMva2VybmVsL3B0cmFjZTMyLmMgICAgICAgICAgICAgICAgICAgICB8ICA1 ICsrLQo+ICAgYXJjaC9zMzkwL21tL2d1cC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgfCAgMyArLQo+ICAgYXJjaC9zY29yZS9rZXJuZWwvcHRyYWNlLmMgICAgICAgICAgICAgICAg ICAgICAgICAgfCAxMCArKystLQo+ICAgYXJjaC9zaC9tbS9ndXAuYyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgfCAgMyArLQo+ICAgYXJjaC9zcGFyYy9rZXJuZWwvcHRyYWNlXzY0 LmMgICAgICAgICAgICAgICAgICAgICAgfCAyNCArKysrKysrLS0tLQo+ICAgYXJjaC9zcGFyYy9t bS9ndXAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMyArLQo+ICAgYXJjaC94 ODYva2VybmVsL3N0ZXAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMyArLQo+ICAg YXJjaC94ODYvbW0vZ3VwLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMiAr LQo+ICAgYXJjaC94ODYvbW0vbXB4LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg fCAgNSArLS0KPiAgIGFyY2gveDg2L3VtL3B0cmFjZV8zMi5jICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHwgIDMgKy0KPiAgIGFyY2gveDg2L3VtL3B0cmFjZV82NC5jICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgIDMgKy0KPiAgIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdw dV90dG0uYyAgICAgICAgICAgIHwgIDcgKystCj4gICBkcml2ZXJzL2dwdS9kcm0vZXRuYXZpdi9l dG5hdml2X2dlbS5jICAgICAgICAgICAgICB8ICA3ICsrLQo+ICAgZHJpdmVycy9ncHUvZHJtL2V4 eW5vcy9leHlub3NfZHJtX2cyZC5jICAgICAgICAgICAgfCAgMyArLQo+ICAgZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9nZW1fdXNlcnB0ci5jICAgICAgICAgICAgfCAgNiArKy0KPiAgIGRyaXZl cnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX3R0bS5jICAgICAgICAgICAgICAgIHwgIDMgKy0KPiAg IGRyaXZlcnMvZ3B1L2RybS92aWEvdmlhX2RtYWJsaXQuYyAgICAgICAgICAgICAgICAgIHwgIDQg Ky0KPiAgIGRyaXZlcnMvaW5maW5pYmFuZC9jb3JlL3VtZW0uYyAgICAgICAgICAgICAgICAgICAg IHwgIDYgKystCj4gICBkcml2ZXJzL2luZmluaWJhbmQvY29yZS91bWVtX29kcC5jICAgICAgICAg ICAgICAgICB8ICA3ICsrLQo+ICAgZHJpdmVycy9pbmZpbmliYW5kL2h3L210aGNhL210aGNhX21l bWZyZWUuYyAgICAgICAgfCAgMiArLQo+ICAgZHJpdmVycy9pbmZpbmliYW5kL2h3L3FpYi9xaWJf dXNlcl9wYWdlcy5jICAgICAgICAgfCAgMyArLQo+ICAgZHJpdmVycy9pbmZpbmliYW5kL2h3L3Vz bmljL3VzbmljX3Vpb20uYyAgICAgICAgICAgfCAgNSArKy0KPiAgIGRyaXZlcnMvbWVkaWEvcGNp L2l2dHYvaXZ0di11ZG1hLmMgICAgICAgICAgICAgICAgIHwgIDQgKy0KPiAgIGRyaXZlcnMvbWVk aWEvcGNpL2l2dHYvaXZ0di15dXYuYyAgICAgICAgICAgICAgICAgIHwgIDUgKystCj4gICBkcml2 ZXJzL21lZGlhL3BsYXRmb3JtL29tYXAvb21hcF92b3V0LmMgICAgICAgICAgICB8ICAyICstCj4g ICBkcml2ZXJzL21lZGlhL3Y0bDItY29yZS92aWRlb2J1Zi1kbWEtc2cuYyAgICAgICAgICB8ICA3 ICsrLQo+ICAgZHJpdmVycy9tZWRpYS92NGwyLWNvcmUvdmlkZW9idWYyLW1lbW9wcy5jICAgICAg ICAgfCAgNiArKy0KPiAgIGRyaXZlcnMvbWlzYy9taWMvc2NpZi9zY2lmX3JtYS5jICAgICAgICAg ICAgICAgICAgIHwgIDMgKy0KPiAgIGRyaXZlcnMvbWlzYy9zZ2ktZ3J1L2dydWZhdWx0LmMgICAg ICAgICAgICAgICAgICAgIHwgIDIgKy0KPiAgIGRyaXZlcnMvcGxhdGZvcm0vZ29sZGZpc2gvZ29s ZGZpc2hfcGlwZS5jICAgICAgICAgIHwgIDMgKy0KPiAgIGRyaXZlcnMvcmFwaWRpby9kZXZpY2Vz L3Jpb19tcG9ydF9jZGV2LmMgICAgICAgICAgIHwgIDMgKy0KPiAgIGRyaXZlcnMvc2NzaS9zdC5j ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDUgKy0tCj4gICAuLi4vaW50ZXJm YWNlL3ZjaGlxX2FybS92Y2hpcV8yODM1X2FybS5jICAgICAgICAgICB8ICAzICstCj4gICAuLi4v dmMwNF9zZXJ2aWNlcy9pbnRlcmZhY2UvdmNoaXFfYXJtL3ZjaGlxX2FybS5jICB8ICAzICstCj4g ICBkcml2ZXJzL3ZpZGVvL2ZiZGV2L3B2cjJmYi5jICAgICAgICAgICAgICAgICAgICAgICB8ICA0 ICstCj4gICBkcml2ZXJzL3ZpcnQvZnNsX2h5cGVydmlzb3IuYyAgICAgICAgICAgICAgICAgICAg ICB8ICA0ICstCj4gICBmcy9leGVjLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8ICA5ICsrKy0KPiAgIGZzL3Byb2MvYmFzZS5jICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgMTkgKysrKystLS0KPiAgIGluY2x1ZGUvbGludXgvbW0uaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMTggKysrKy0tLS0KPiAgIGtlcm5lbC9ldmVu dHMvdXByb2Jlcy5jICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDYgKystCj4gICBrZXJu ZWwvcHRyYWNlLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE2ICsrKyst LS0KPiAgIG1tL2ZyYW1lX3ZlY3Rvci5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgIDkgKystLQo+ICAgbW0vZ3VwLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfCA1MCArKysrKysrKysrLS0tLS0tLS0tLS0tCj4gICBtbS9tZW1vcnkuYyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE2ICsrKystLS0KPiAgIG1tL21l bXBvbGljeS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KPiAg IG1tL25vbW11LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMzgg KysrKysrKy0tLS0tLS0tLQo+ICAgbW0vcHJvY2Vzc192bV9hY2Nlc3MuYyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgNyArKy0KPiAgIG1tL3V0aWwuYyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgIDggKystLQo+ICAgbmV0L2NlcGgvcGFnZXZlYy5jICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMiArLQo+ICAgc2VjdXJpdHkvdG9tb3lv L2RvbWFpbi5jICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMiArLQo+ICAgdmlydC9rdm0v YXN5bmNfcGYuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMyArLQo+ICAgdmly dC9rdm0va3ZtX21haW4uYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAxMSArKyst LQo+ICAgNjEgZmlsZXMgY2hhbmdlZCwgMjYwIGluc2VydGlvbnMoKyksIDE4NyBkZWxldGlvbnMo LSkKPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+IGRy aS1kZXZlbCBtYWlsaW5nIGxpc3QKPiBkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4g aHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1n ZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Subject: Re: [PATCH 00/10] mm: adjust get_user_pages* functions to explicitly pass FOLL_* flags To: Lorenzo Stoakes , References: <20161013002020.3062-1-lstoakes@gmail.com> CC: , , Jan Kara , , , Dave Hansen , , , , , , , , , , Hugh Dickins , , Rik van Riel , , , , , , Linus Torvalds , , , , , , Andrew Morton , Mel Gorman From: =?UTF-8?Q?Christian_K=c3=b6nig?= Message-ID: <914b917f-6871-2ba3-95ba-981dd2855743@amd.com> Date: Thu, 13 Oct 2016 09:32:51 +0200 MIME-Version: 1.0 In-Reply-To: <20161013002020.3062-1-lstoakes@gmail.com> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 8bit Sender: owner-linux-mm@kvack.org List-ID: Am 13.10.2016 um 02:20 schrieb Lorenzo Stoakes: > This patch series adjusts functions in the get_user_pages* family such that > desired FOLL_* flags are passed as an argument rather than implied by flags. > > The purpose of this change is to make the use of FOLL_FORCE explicit so it is > easier to grep for and clearer to callers that this flag is being used. The use > of FOLL_FORCE is an issue as it overrides missing VM_READ/VM_WRITE flags for the > VMA whose pages we are reading from/writing to, which can result in surprising > behaviour. > > The patch series came out of the discussion around commit 38e0885, which > addressed a BUG_ON() being triggered when a page was faulted in with PROT_NONE > set but having been overridden by FOLL_FORCE. do_numa_page() was run on the > assumption the page _must_ be one marked for NUMA node migration as an actual > PROT_NONE page would have been dealt with prior to this code path, however > FOLL_FORCE introduced a situation where this assumption did not hold. > > See https://marc.info/?l=linux-mm&m=147585445805166 for the patch proposal. > > Lorenzo Stoakes (10): > mm: remove write/force parameters from __get_user_pages_locked() > mm: remove write/force parameters from __get_user_pages_unlocked() > mm: replace get_user_pages_unlocked() write/force parameters with gup_flags > mm: replace get_user_pages_locked() write/force parameters with gup_flags > mm: replace get_vaddr_frames() write/force parameters with gup_flags > mm: replace get_user_pages() write/force parameters with gup_flags > mm: replace get_user_pages_remote() write/force parameters with gup_flags > mm: replace __access_remote_vm() write parameter with gup_flags > mm: replace access_remote_vm() write parameter with gup_flags > mm: replace access_process_vm() write parameter with gup_flags Patch number 6 in this series (which touches drivers I co-maintain) is Acked-by: Christian König . In general looks like a very nice cleanup to me, but I'm not enlightened enough to full judge. Regards, Christian. > > arch/alpha/kernel/ptrace.c | 9 ++-- > arch/blackfin/kernel/ptrace.c | 5 ++- > arch/cris/arch-v32/drivers/cryptocop.c | 4 +- > arch/cris/arch-v32/kernel/ptrace.c | 4 +- > arch/ia64/kernel/err_inject.c | 2 +- > arch/ia64/kernel/ptrace.c | 14 +++--- > arch/m32r/kernel/ptrace.c | 15 ++++--- > arch/mips/kernel/ptrace32.c | 5 ++- > arch/mips/mm/gup.c | 2 +- > arch/powerpc/kernel/ptrace32.c | 5 ++- > arch/s390/mm/gup.c | 3 +- > arch/score/kernel/ptrace.c | 10 +++-- > arch/sh/mm/gup.c | 3 +- > arch/sparc/kernel/ptrace_64.c | 24 +++++++---- > arch/sparc/mm/gup.c | 3 +- > arch/x86/kernel/step.c | 3 +- > arch/x86/mm/gup.c | 2 +- > arch/x86/mm/mpx.c | 5 +-- > arch/x86/um/ptrace_32.c | 3 +- > arch/x86/um/ptrace_64.c | 3 +- > drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 7 ++- > drivers/gpu/drm/etnaviv/etnaviv_gem.c | 7 ++- > drivers/gpu/drm/exynos/exynos_drm_g2d.c | 3 +- > drivers/gpu/drm/i915/i915_gem_userptr.c | 6 ++- > drivers/gpu/drm/radeon/radeon_ttm.c | 3 +- > drivers/gpu/drm/via/via_dmablit.c | 4 +- > drivers/infiniband/core/umem.c | 6 ++- > drivers/infiniband/core/umem_odp.c | 7 ++- > drivers/infiniband/hw/mthca/mthca_memfree.c | 2 +- > drivers/infiniband/hw/qib/qib_user_pages.c | 3 +- > drivers/infiniband/hw/usnic/usnic_uiom.c | 5 ++- > drivers/media/pci/ivtv/ivtv-udma.c | 4 +- > drivers/media/pci/ivtv/ivtv-yuv.c | 5 ++- > drivers/media/platform/omap/omap_vout.c | 2 +- > drivers/media/v4l2-core/videobuf-dma-sg.c | 7 ++- > drivers/media/v4l2-core/videobuf2-memops.c | 6 ++- > drivers/misc/mic/scif/scif_rma.c | 3 +- > drivers/misc/sgi-gru/grufault.c | 2 +- > drivers/platform/goldfish/goldfish_pipe.c | 3 +- > drivers/rapidio/devices/rio_mport_cdev.c | 3 +- > drivers/scsi/st.c | 5 +-- > .../interface/vchiq_arm/vchiq_2835_arm.c | 3 +- > .../vc04_services/interface/vchiq_arm/vchiq_arm.c | 3 +- > drivers/video/fbdev/pvr2fb.c | 4 +- > drivers/virt/fsl_hypervisor.c | 4 +- > fs/exec.c | 9 +++- > fs/proc/base.c | 19 +++++--- > include/linux/mm.h | 18 ++++---- > kernel/events/uprobes.c | 6 ++- > kernel/ptrace.c | 16 ++++--- > mm/frame_vector.c | 9 ++-- > mm/gup.c | 50 ++++++++++------------ > mm/memory.c | 16 ++++--- > mm/mempolicy.c | 2 +- > mm/nommu.c | 38 +++++++--------- > mm/process_vm_access.c | 7 ++- > mm/util.c | 8 ++-- > net/ceph/pagevec.c | 2 +- > security/tomoyo/domain.c | 2 +- > virt/kvm/async_pf.c | 3 +- > virt/kvm/kvm_main.c | 11 +++-- > 61 files changed, 260 insertions(+), 187 deletions(-) > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-dm3nam03on0071.outbound.protection.outlook.com ([104.47.41.71]:54832 "EHLO NAM03-DM3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by eddie.linux-mips.org with ESMTP id S23992143AbcJMHdcTJ-Nb (ORCPT ); Thu, 13 Oct 2016 09:33:32 +0200 Subject: Re: [PATCH 00/10] mm: adjust get_user_pages* functions to explicitly pass FOLL_* flags References: <20161013002020.3062-1-lstoakes@gmail.com> From: =?UTF-8?Q?Christian_K=c3=b6nig?= Message-ID: <914b917f-6871-2ba3-95ba-981dd2855743@amd.com> Date: Thu, 13 Oct 2016 09:32:51 +0200 MIME-Version: 1.0 In-Reply-To: <20161013002020.3062-1-lstoakes@gmail.com> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 8bit Return-Path: Sender: linux-mips-bounce@linux-mips.org Errors-to: linux-mips-bounce@linux-mips.org List-help: List-unsubscribe: List-software: Ecartis version 1.0.0 List-subscribe: List-owner: List-post: List-archive: To: Lorenzo Stoakes , linux-mm@kvack.org Cc: linux-mips@linux-mips.org, linux-fbdev@vger.kernel.org, Jan Kara , kvm@vger.kernel.org, linux-sh@vger.kernel.org, Dave Hansen , dri-devel@lists.freedesktop.org, netdev@vger.kernel.org, sparclinux@vger.kernel.org, linux-ia64@vger.kernel.org, linux-s390@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-scsi@vger.kernel.org, linux-rdma@vger.kernel.org, x86@kernel.org, Hugh Dickins , linux-media@vger.kernel.org, Rik van Riel , intel-gfx@lists.freedesktop.org, adi-buildroot-devel@lists.sourceforge.net, ceph-devel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-cris-kernel@axis.com, Linus Torvalds , linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, linux-security-module@vger.kernel.org, linux-alpha@vger.kernel.org, linux-fsdevel@vger.kernel.org, Andrew Morton , Mel Gorman Message-ID: <20161013073251.WEs8havdtKWQdSM75jEK3tor2Ms26pstBojytvhDlp4@z> Am 13.10.2016 um 02:20 schrieb Lorenzo Stoakes: > This patch series adjusts functions in the get_user_pages* family such that > desired FOLL_* flags are passed as an argument rather than implied by flags. > > The purpose of this change is to make the use of FOLL_FORCE explicit so it is > easier to grep for and clearer to callers that this flag is being used. The use > of FOLL_FORCE is an issue as it overrides missing VM_READ/VM_WRITE flags for the > VMA whose pages we are reading from/writing to, which can result in surprising > behaviour. > > The patch series came out of the discussion around commit 38e0885, which > addressed a BUG_ON() being triggered when a page was faulted in with PROT_NONE > set but having been overridden by FOLL_FORCE. do_numa_page() was run on the > assumption the page _must_ be one marked for NUMA node migration as an actual > PROT_NONE page would have been dealt with prior to this code path, however > FOLL_FORCE introduced a situation where this assumption did not hold. > > See https://marc.info/?l=linux-mm&m=147585445805166 for the patch proposal. > > Lorenzo Stoakes (10): > mm: remove write/force parameters from __get_user_pages_locked() > mm: remove write/force parameters from __get_user_pages_unlocked() > mm: replace get_user_pages_unlocked() write/force parameters with gup_flags > mm: replace get_user_pages_locked() write/force parameters with gup_flags > mm: replace get_vaddr_frames() write/force parameters with gup_flags > mm: replace get_user_pages() write/force parameters with gup_flags > mm: replace get_user_pages_remote() write/force parameters with gup_flags > mm: replace __access_remote_vm() write parameter with gup_flags > mm: replace access_remote_vm() write parameter with gup_flags > mm: replace access_process_vm() write parameter with gup_flags Patch number 6 in this series (which touches drivers I co-maintain) is Acked-by: Christian König . In general looks like a very nice cleanup to me, but I'm not enlightened enough to full judge. Regards, Christian. > > arch/alpha/kernel/ptrace.c | 9 ++-- > arch/blackfin/kernel/ptrace.c | 5 ++- > arch/cris/arch-v32/drivers/cryptocop.c | 4 +- > arch/cris/arch-v32/kernel/ptrace.c | 4 +- > arch/ia64/kernel/err_inject.c | 2 +- > arch/ia64/kernel/ptrace.c | 14 +++--- > arch/m32r/kernel/ptrace.c | 15 ++++--- > arch/mips/kernel/ptrace32.c | 5 ++- > arch/mips/mm/gup.c | 2 +- > arch/powerpc/kernel/ptrace32.c | 5 ++- > arch/s390/mm/gup.c | 3 +- > arch/score/kernel/ptrace.c | 10 +++-- > arch/sh/mm/gup.c | 3 +- > arch/sparc/kernel/ptrace_64.c | 24 +++++++---- > arch/sparc/mm/gup.c | 3 +- > arch/x86/kernel/step.c | 3 +- > arch/x86/mm/gup.c | 2 +- > arch/x86/mm/mpx.c | 5 +-- > arch/x86/um/ptrace_32.c | 3 +- > arch/x86/um/ptrace_64.c | 3 +- > drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 7 ++- > drivers/gpu/drm/etnaviv/etnaviv_gem.c | 7 ++- > drivers/gpu/drm/exynos/exynos_drm_g2d.c | 3 +- > drivers/gpu/drm/i915/i915_gem_userptr.c | 6 ++- > drivers/gpu/drm/radeon/radeon_ttm.c | 3 +- > drivers/gpu/drm/via/via_dmablit.c | 4 +- > drivers/infiniband/core/umem.c | 6 ++- > drivers/infiniband/core/umem_odp.c | 7 ++- > drivers/infiniband/hw/mthca/mthca_memfree.c | 2 +- > drivers/infiniband/hw/qib/qib_user_pages.c | 3 +- > drivers/infiniband/hw/usnic/usnic_uiom.c | 5 ++- > drivers/media/pci/ivtv/ivtv-udma.c | 4 +- > drivers/media/pci/ivtv/ivtv-yuv.c | 5 ++- > drivers/media/platform/omap/omap_vout.c | 2 +- > drivers/media/v4l2-core/videobuf-dma-sg.c | 7 ++- > drivers/media/v4l2-core/videobuf2-memops.c | 6 ++- > drivers/misc/mic/scif/scif_rma.c | 3 +- > drivers/misc/sgi-gru/grufault.c | 2 +- > drivers/platform/goldfish/goldfish_pipe.c | 3 +- > drivers/rapidio/devices/rio_mport_cdev.c | 3 +- > drivers/scsi/st.c | 5 +-- > .../interface/vchiq_arm/vchiq_2835_arm.c | 3 +- > .../vc04_services/interface/vchiq_arm/vchiq_arm.c | 3 +- > drivers/video/fbdev/pvr2fb.c | 4 +- > drivers/virt/fsl_hypervisor.c | 4 +- > fs/exec.c | 9 +++- > fs/proc/base.c | 19 +++++--- > include/linux/mm.h | 18 ++++---- > kernel/events/uprobes.c | 6 ++- > kernel/ptrace.c | 16 ++++--- > mm/frame_vector.c | 9 ++-- > mm/gup.c | 50 ++++++++++------------ > mm/memory.c | 16 ++++--- > mm/mempolicy.c | 2 +- > mm/nommu.c | 38 +++++++--------- > mm/process_vm_access.c | 7 ++- > mm/util.c | 8 ++-- > net/ceph/pagevec.c | 2 +- > security/tomoyo/domain.c | 2 +- > virt/kvm/async_pf.c | 3 +- > virt/kvm/kvm_main.c | 11 +++-- > 61 files changed, 260 insertions(+), 187 deletions(-) > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pf0-f197.google.com (mail-pf0-f197.google.com [209.85.192.197]) by kanga.kvack.org (Postfix) with ESMTP id A2F466B0253 for ; Thu, 13 Oct 2016 03:33:27 -0400 (EDT) Received: by mail-pf0-f197.google.com with SMTP id i85so67158543pfa.5 for ; Thu, 13 Oct 2016 00:33:27 -0700 (PDT) Received: from NAM03-DM3-obe.outbound.protection.outlook.com (mail-dm3nam03on0067.outbound.protection.outlook.com. [104.47.41.67]) by mx.google.com with ESMTPS id y81si13169396pfk.239.2016.10.13.00.33.26 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 13 Oct 2016 00:33:26 -0700 (PDT) Subject: Re: [PATCH 00/10] mm: adjust get_user_pages* functions to explicitly pass FOLL_* flags References: <20161013002020.3062-1-lstoakes@gmail.com> From: =?UTF-8?Q?Christian_K=c3=b6nig?= Message-ID: <914b917f-6871-2ba3-95ba-981dd2855743@amd.com> Date: Thu, 13 Oct 2016 09:32:51 +0200 MIME-Version: 1.0 In-Reply-To: <20161013002020.3062-1-lstoakes@gmail.com> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 8bit Sender: owner-linux-mm@kvack.org List-ID: To: Lorenzo Stoakes , linux-mm@kvack.org Cc: linux-mips@linux-mips.org, linux-fbdev@vger.kernel.org, Jan Kara , kvm@vger.kernel.org, linux-sh@vger.kernel.org, Dave Hansen , dri-devel@lists.freedesktop.org, netdev@vger.kernel.org, sparclinux@vger.kernel.org, linux-ia64@vger.kernel.org, linux-s390@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-scsi@vger.kernel.org, linux-rdma@vger.kernel.org, x86@kernel.org, Hugh Dickins , linux-media@vger.kernel.org, Rik van Riel , intel-gfx@lists.freedesktop.org, adi-buildroot-devel@lists.sourceforge.net, ceph-devel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-cris-kernel@axis.com, Linus Torvalds , linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, linux-security-module@vger.kernel.org, linux-alpha@vger.kernel.org, linux-fsdevel@vger.kernel.org, Andrew Morton , Mel Gorman Am 13.10.2016 um 02:20 schrieb Lorenzo Stoakes: > This patch series adjusts functions in the get_user_pages* family such that > desired FOLL_* flags are passed as an argument rather than implied by flags. > > The purpose of this change is to make the use of FOLL_FORCE explicit so it is > easier to grep for and clearer to callers that this flag is being used. The use > of FOLL_FORCE is an issue as it overrides missing VM_READ/VM_WRITE flags for the > VMA whose pages we are reading from/writing to, which can result in surprising > behaviour. > > The patch series came out of the discussion around commit 38e0885, which > addressed a BUG_ON() being triggered when a page was faulted in with PROT_NONE > set but having been overridden by FOLL_FORCE. do_numa_page() was run on the > assumption the page _must_ be one marked for NUMA node migration as an actual > PROT_NONE page would have been dealt with prior to this code path, however > FOLL_FORCE introduced a situation where this assumption did not hold. > > See https://marc.info/?l=linux-mm&m=147585445805166 for the patch proposal. > > Lorenzo Stoakes (10): > mm: remove write/force parameters from __get_user_pages_locked() > mm: remove write/force parameters from __get_user_pages_unlocked() > mm: replace get_user_pages_unlocked() write/force parameters with gup_flags > mm: replace get_user_pages_locked() write/force parameters with gup_flags > mm: replace get_vaddr_frames() write/force parameters with gup_flags > mm: replace get_user_pages() write/force parameters with gup_flags > mm: replace get_user_pages_remote() write/force parameters with gup_flags > mm: replace __access_remote_vm() write parameter with gup_flags > mm: replace access_remote_vm() write parameter with gup_flags > mm: replace access_process_vm() write parameter with gup_flags Patch number 6 in this series (which touches drivers I co-maintain) is Acked-by: Christian KA?nig . In general looks like a very nice cleanup to me, but I'm not enlightened enough to full judge. Regards, Christian. > > arch/alpha/kernel/ptrace.c | 9 ++-- > arch/blackfin/kernel/ptrace.c | 5 ++- > arch/cris/arch-v32/drivers/cryptocop.c | 4 +- > arch/cris/arch-v32/kernel/ptrace.c | 4 +- > arch/ia64/kernel/err_inject.c | 2 +- > arch/ia64/kernel/ptrace.c | 14 +++--- > arch/m32r/kernel/ptrace.c | 15 ++++--- > arch/mips/kernel/ptrace32.c | 5 ++- > arch/mips/mm/gup.c | 2 +- > arch/powerpc/kernel/ptrace32.c | 5 ++- > arch/s390/mm/gup.c | 3 +- > arch/score/kernel/ptrace.c | 10 +++-- > arch/sh/mm/gup.c | 3 +- > arch/sparc/kernel/ptrace_64.c | 24 +++++++---- > arch/sparc/mm/gup.c | 3 +- > arch/x86/kernel/step.c | 3 +- > arch/x86/mm/gup.c | 2 +- > arch/x86/mm/mpx.c | 5 +-- > arch/x86/um/ptrace_32.c | 3 +- > arch/x86/um/ptrace_64.c | 3 +- > drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 7 ++- > drivers/gpu/drm/etnaviv/etnaviv_gem.c | 7 ++- > drivers/gpu/drm/exynos/exynos_drm_g2d.c | 3 +- > drivers/gpu/drm/i915/i915_gem_userptr.c | 6 ++- > drivers/gpu/drm/radeon/radeon_ttm.c | 3 +- > drivers/gpu/drm/via/via_dmablit.c | 4 +- > drivers/infiniband/core/umem.c | 6 ++- > drivers/infiniband/core/umem_odp.c | 7 ++- > drivers/infiniband/hw/mthca/mthca_memfree.c | 2 +- > drivers/infiniband/hw/qib/qib_user_pages.c | 3 +- > drivers/infiniband/hw/usnic/usnic_uiom.c | 5 ++- > drivers/media/pci/ivtv/ivtv-udma.c | 4 +- > drivers/media/pci/ivtv/ivtv-yuv.c | 5 ++- > drivers/media/platform/omap/omap_vout.c | 2 +- > drivers/media/v4l2-core/videobuf-dma-sg.c | 7 ++- > drivers/media/v4l2-core/videobuf2-memops.c | 6 ++- > drivers/misc/mic/scif/scif_rma.c | 3 +- > drivers/misc/sgi-gru/grufault.c | 2 +- > drivers/platform/goldfish/goldfish_pipe.c | 3 +- > drivers/rapidio/devices/rio_mport_cdev.c | 3 +- > drivers/scsi/st.c | 5 +-- > .../interface/vchiq_arm/vchiq_2835_arm.c | 3 +- > .../vc04_services/interface/vchiq_arm/vchiq_arm.c | 3 +- > drivers/video/fbdev/pvr2fb.c | 4 +- > drivers/virt/fsl_hypervisor.c | 4 +- > fs/exec.c | 9 +++- > fs/proc/base.c | 19 +++++--- > include/linux/mm.h | 18 ++++---- > kernel/events/uprobes.c | 6 ++- > kernel/ptrace.c | 16 ++++--- > mm/frame_vector.c | 9 ++-- > mm/gup.c | 50 ++++++++++------------ > mm/memory.c | 16 ++++--- > mm/mempolicy.c | 2 +- > mm/nommu.c | 38 +++++++--------- > mm/process_vm_access.c | 7 ++- > mm/util.c | 8 ++-- > net/ceph/pagevec.c | 2 +- > security/tomoyo/domain.c | 2 +- > virt/kvm/async_pf.c | 3 +- > virt/kvm/kvm_main.c | 11 +++-- > 61 files changed, 260 insertions(+), 187 deletions(-) > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org From mboxrd@z Thu Jan 1 00:00:00 1970 From: christian.koenig@amd.com (=?UTF-8?Q?Christian_K=c3=b6nig?=) Date: Thu, 13 Oct 2016 09:32:51 +0200 Subject: [PATCH 00/10] mm: adjust get_user_pages* functions to explicitly pass FOLL_* flags In-Reply-To: <20161013002020.3062-1-lstoakes@gmail.com> References: <20161013002020.3062-1-lstoakes@gmail.com> Message-ID: <914b917f-6871-2ba3-95ba-981dd2855743@amd.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Am 13.10.2016 um 02:20 schrieb Lorenzo Stoakes: > This patch series adjusts functions in the get_user_pages* family such that > desired FOLL_* flags are passed as an argument rather than implied by flags. > > The purpose of this change is to make the use of FOLL_FORCE explicit so it is > easier to grep for and clearer to callers that this flag is being used. The use > of FOLL_FORCE is an issue as it overrides missing VM_READ/VM_WRITE flags for the > VMA whose pages we are reading from/writing to, which can result in surprising > behaviour. > > The patch series came out of the discussion around commit 38e0885, which > addressed a BUG_ON() being triggered when a page was faulted in with PROT_NONE > set but having been overridden by FOLL_FORCE. do_numa_page() was run on the > assumption the page _must_ be one marked for NUMA node migration as an actual > PROT_NONE page would have been dealt with prior to this code path, however > FOLL_FORCE introduced a situation where this assumption did not hold. > > See https://marc.info/?l=linux-mm&m=147585445805166 for the patch proposal. > > Lorenzo Stoakes (10): > mm: remove write/force parameters from __get_user_pages_locked() > mm: remove write/force parameters from __get_user_pages_unlocked() > mm: replace get_user_pages_unlocked() write/force parameters with gup_flags > mm: replace get_user_pages_locked() write/force parameters with gup_flags > mm: replace get_vaddr_frames() write/force parameters with gup_flags > mm: replace get_user_pages() write/force parameters with gup_flags > mm: replace get_user_pages_remote() write/force parameters with gup_flags > mm: replace __access_remote_vm() write parameter with gup_flags > mm: replace access_remote_vm() write parameter with gup_flags > mm: replace access_process_vm() write parameter with gup_flags Patch number 6 in this series (which touches drivers I co-maintain) is Acked-by: Christian K?nig . In general looks like a very nice cleanup to me, but I'm not enlightened enough to full judge. Regards, Christian. > > arch/alpha/kernel/ptrace.c | 9 ++-- > arch/blackfin/kernel/ptrace.c | 5 ++- > arch/cris/arch-v32/drivers/cryptocop.c | 4 +- > arch/cris/arch-v32/kernel/ptrace.c | 4 +- > arch/ia64/kernel/err_inject.c | 2 +- > arch/ia64/kernel/ptrace.c | 14 +++--- > arch/m32r/kernel/ptrace.c | 15 ++++--- > arch/mips/kernel/ptrace32.c | 5 ++- > arch/mips/mm/gup.c | 2 +- > arch/powerpc/kernel/ptrace32.c | 5 ++- > arch/s390/mm/gup.c | 3 +- > arch/score/kernel/ptrace.c | 10 +++-- > arch/sh/mm/gup.c | 3 +- > arch/sparc/kernel/ptrace_64.c | 24 +++++++---- > arch/sparc/mm/gup.c | 3 +- > arch/x86/kernel/step.c | 3 +- > arch/x86/mm/gup.c | 2 +- > arch/x86/mm/mpx.c | 5 +-- > arch/x86/um/ptrace_32.c | 3 +- > arch/x86/um/ptrace_64.c | 3 +- > drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 7 ++- > drivers/gpu/drm/etnaviv/etnaviv_gem.c | 7 ++- > drivers/gpu/drm/exynos/exynos_drm_g2d.c | 3 +- > drivers/gpu/drm/i915/i915_gem_userptr.c | 6 ++- > drivers/gpu/drm/radeon/radeon_ttm.c | 3 +- > drivers/gpu/drm/via/via_dmablit.c | 4 +- > drivers/infiniband/core/umem.c | 6 ++- > drivers/infiniband/core/umem_odp.c | 7 ++- > drivers/infiniband/hw/mthca/mthca_memfree.c | 2 +- > drivers/infiniband/hw/qib/qib_user_pages.c | 3 +- > drivers/infiniband/hw/usnic/usnic_uiom.c | 5 ++- > drivers/media/pci/ivtv/ivtv-udma.c | 4 +- > drivers/media/pci/ivtv/ivtv-yuv.c | 5 ++- > drivers/media/platform/omap/omap_vout.c | 2 +- > drivers/media/v4l2-core/videobuf-dma-sg.c | 7 ++- > drivers/media/v4l2-core/videobuf2-memops.c | 6 ++- > drivers/misc/mic/scif/scif_rma.c | 3 +- > drivers/misc/sgi-gru/grufault.c | 2 +- > drivers/platform/goldfish/goldfish_pipe.c | 3 +- > drivers/rapidio/devices/rio_mport_cdev.c | 3 +- > drivers/scsi/st.c | 5 +-- > .../interface/vchiq_arm/vchiq_2835_arm.c | 3 +- > .../vc04_services/interface/vchiq_arm/vchiq_arm.c | 3 +- > drivers/video/fbdev/pvr2fb.c | 4 +- > drivers/virt/fsl_hypervisor.c | 4 +- > fs/exec.c | 9 +++- > fs/proc/base.c | 19 +++++--- > include/linux/mm.h | 18 ++++---- > kernel/events/uprobes.c | 6 ++- > kernel/ptrace.c | 16 ++++--- > mm/frame_vector.c | 9 ++-- > mm/gup.c | 50 ++++++++++------------ > mm/memory.c | 16 ++++--- > mm/mempolicy.c | 2 +- > mm/nommu.c | 38 +++++++--------- > mm/process_vm_access.c | 7 ++- > mm/util.c | 8 ++-- > net/ceph/pagevec.c | 2 +- > security/tomoyo/domain.c | 2 +- > virt/kvm/async_pf.c | 3 +- > virt/kvm/kvm_main.c | 11 +++-- > 61 files changed, 260 insertions(+), 187 deletions(-) > _______________________________________________ > dri-devel mailing list > dri-devel at lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?Christian_K=c3=b6nig?= Subject: Re: [PATCH 00/10] mm: adjust get_user_pages* functions to explicitly pass FOLL_* flags Date: Thu, 13 Oct 2016 09:32:51 +0200 Message-ID: <914b917f-6871-2ba3-95ba-981dd2855743@amd.com> References: <20161013002020.3062-1-lstoakes@gmail.com> Mime-Version: 1.0 Content-Transfer-Encoding: base64 Return-path: DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amdcloud.onmicrosoft.com; s=selector1-amd-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=lXNAXqIGpW9jobBoQuDL2/3TRNCMV1ub4clTcQwpzkc=; b=CR4DteUdI3z3HYK/MoJ/P/dTvLKK1oIOyzMmuL9T/ZAPw4pwCG702xQhuvZs2E5BxPwbRTtacuH5hJBSTNl66kEoTc2SZdEnzuzv2CKwiGCDnoFBW01q7Ok+XU7od3yE39WFawjli4kYcGDBWCrt2QnaJqCwsqg5mv4n/ppTFEQ= In-Reply-To: <20161013002020.3062-1-lstoakes@gmail.com> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Content-Type: text/plain; charset="iso-8859-1"; format="flowed" To: Lorenzo Stoakes , linux-mm@kvack.org Cc: linux-mips@linux-mips.org, linux-fbdev@vger.kernel.org, Jan Kara , kvm@vger.kernel.org, linux-sh@vger.kernel.org, Dave Hansen , dri-devel@lists.freedesktop.org, sparclinux@vger.kernel.org, linux-ia64@vger.kernel.org, linux-s390@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-scsi@vger.kernel.org, linux-rdma@vger.kernel.org, x86@kernel.org, Hugh Dickins , linux-media@vger.kernel.org, Rik van Riel , intel-gfx@lists.freedesktop.org, adi-buildroot-devel@lists.sourceforge.net, ceph-devel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Mel Gorman , linux-cris-kernel@axis.com, netdev@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, linux-security-module@vger.kernel.org, linux-alpha@vger.kernel.org, linux-fsdevel@vger.kernel.org QW0gMTMuMTAuMjAxNiB1bSAwMjoyMCBzY2hyaWViIExvcmVuem8gU3RvYWtlczoKPiBUaGlzIHBh dGNoIHNlcmllcyBhZGp1c3RzIGZ1bmN0aW9ucyBpbiB0aGUgZ2V0X3VzZXJfcGFnZXMqIGZhbWls eSBzdWNoIHRoYXQKPiBkZXNpcmVkIEZPTExfKiBmbGFncyBhcmUgcGFzc2VkIGFzIGFuIGFyZ3Vt ZW50IHJhdGhlciB0aGFuIGltcGxpZWQgYnkgZmxhZ3MuCj4KPiBUaGUgcHVycG9zZSBvZiB0aGlz IGNoYW5nZSBpcyB0byBtYWtlIHRoZSB1c2Ugb2YgRk9MTF9GT1JDRSBleHBsaWNpdCBzbyBpdCBp cwo+IGVhc2llciB0byBncmVwIGZvciBhbmQgY2xlYXJlciB0byBjYWxsZXJzIHRoYXQgdGhpcyBm bGFnIGlzIGJlaW5nIHVzZWQuIFRoZSB1c2UKPiBvZiBGT0xMX0ZPUkNFIGlzIGFuIGlzc3VlIGFz IGl0IG92ZXJyaWRlcyBtaXNzaW5nIFZNX1JFQUQvVk1fV1JJVEUgZmxhZ3MgZm9yIHRoZQo+IFZN QSB3aG9zZSBwYWdlcyB3ZSBhcmUgcmVhZGluZyBmcm9tL3dyaXRpbmcgdG8sIHdoaWNoIGNhbiBy ZXN1bHQgaW4gc3VycHJpc2luZwo+IGJlaGF2aW91ci4KPgo+IFRoZSBwYXRjaCBzZXJpZXMgY2Ft ZSBvdXQgb2YgdGhlIGRpc2N1c3Npb24gYXJvdW5kIGNvbW1pdCAzOGUwODg1LCB3aGljaAo+IGFk ZHJlc3NlZCBhIEJVR19PTigpIGJlaW5nIHRyaWdnZXJlZCB3aGVuIGEgcGFnZSB3YXMgZmF1bHRl ZCBpbiB3aXRoIFBST1RfTk9ORQo+IHNldCBidXQgaGF2aW5nIGJlZW4gb3ZlcnJpZGRlbiBieSBG T0xMX0ZPUkNFLiBkb19udW1hX3BhZ2UoKSB3YXMgcnVuIG9uIHRoZQo+IGFzc3VtcHRpb24gdGhl IHBhZ2UgX211c3RfIGJlIG9uZSBtYXJrZWQgZm9yIE5VTUEgbm9kZSBtaWdyYXRpb24gYXMgYW4g YWN0dWFsCj4gUFJPVF9OT05FIHBhZ2Ugd291bGQgaGF2ZSBiZWVuIGRlYWx0IHdpdGggcHJpb3Ig dG8gdGhpcyBjb2RlIHBhdGgsIGhvd2V2ZXIKPiBGT0xMX0ZPUkNFIGludHJvZHVjZWQgYSBzaXR1 YXRpb24gd2hlcmUgdGhpcyBhc3N1bXB0aW9uIGRpZCBub3QgaG9sZC4KPgo+IFNlZSBodHRwczov L21hcmMuaW5mby8/bD1saW51eC1tbSZtPTE0NzU4NTQ0NTgwNTE2NiBmb3IgdGhlIHBhdGNoIHBy b3Bvc2FsLgo+Cj4gTG9yZW56byBTdG9ha2VzICgxMCk6Cj4gICAgbW06IHJlbW92ZSB3cml0ZS9m b3JjZSBwYXJhbWV0ZXJzIGZyb20gX19nZXRfdXNlcl9wYWdlc19sb2NrZWQoKQo+ICAgIG1tOiBy ZW1vdmUgd3JpdGUvZm9yY2UgcGFyYW1ldGVycyBmcm9tIF9fZ2V0X3VzZXJfcGFnZXNfdW5sb2Nr ZWQoKQo+ICAgIG1tOiByZXBsYWNlIGdldF91c2VyX3BhZ2VzX3VubG9ja2VkKCkgd3JpdGUvZm9y Y2UgcGFyYW1ldGVycyB3aXRoIGd1cF9mbGFncwo+ICAgIG1tOiByZXBsYWNlIGdldF91c2VyX3Bh Z2VzX2xvY2tlZCgpIHdyaXRlL2ZvcmNlIHBhcmFtZXRlcnMgd2l0aCBndXBfZmxhZ3MKPiAgICBt bTogcmVwbGFjZSBnZXRfdmFkZHJfZnJhbWVzKCkgd3JpdGUvZm9yY2UgcGFyYW1ldGVycyB3aXRo IGd1cF9mbGFncwo+ICAgIG1tOiByZXBsYWNlIGdldF91c2VyX3BhZ2VzKCkgd3JpdGUvZm9yY2Ug cGFyYW1ldGVycyB3aXRoIGd1cF9mbGFncwo+ICAgIG1tOiByZXBsYWNlIGdldF91c2VyX3BhZ2Vz X3JlbW90ZSgpIHdyaXRlL2ZvcmNlIHBhcmFtZXRlcnMgd2l0aCBndXBfZmxhZ3MKPiAgICBtbTog cmVwbGFjZSBfX2FjY2Vzc19yZW1vdGVfdm0oKSB3cml0ZSBwYXJhbWV0ZXIgd2l0aCBndXBfZmxh Z3MKPiAgICBtbTogcmVwbGFjZSBhY2Nlc3NfcmVtb3RlX3ZtKCkgd3JpdGUgcGFyYW1ldGVyIHdp dGggZ3VwX2ZsYWdzCj4gICAgbW06IHJlcGxhY2UgYWNjZXNzX3Byb2Nlc3Nfdm0oKSB3cml0ZSBw YXJhbWV0ZXIgd2l0aCBndXBfZmxhZ3MKClBhdGNoIG51bWJlciA2IGluIHRoaXMgc2VyaWVzICh3 aGljaCB0b3VjaGVzIGRyaXZlcnMgSSBjby1tYWludGFpbikgaXMgCkFja2VkLWJ5OiBDaHJpc3Rp YW4gS8O2bmlnIDxjaHJpc3RpYW4ua29lbmlnQGFtZC5jb20+LgoKSW4gZ2VuZXJhbCBsb29rcyBs aWtlIGEgdmVyeSBuaWNlIGNsZWFudXAgdG8gbWUsIGJ1dCBJJ20gbm90IGVubGlnaHRlbmVkIApl bm91Z2ggdG8gZnVsbCBqdWRnZS4KClJlZ2FyZHMsCkNocmlzdGlhbi4KCj4KPiAgIGFyY2gvYWxw aGEva2VybmVsL3B0cmFjZS5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDkgKystLQo+ICAg YXJjaC9ibGFja2Zpbi9rZXJuZWwvcHRyYWNlLmMgICAgICAgICAgICAgICAgICAgICAgfCAgNSAr Ky0KPiAgIGFyY2gvY3Jpcy9hcmNoLXYzMi9kcml2ZXJzL2NyeXB0b2NvcC5jICAgICAgICAgICAg IHwgIDQgKy0KPiAgIGFyY2gvY3Jpcy9hcmNoLXYzMi9rZXJuZWwvcHRyYWNlLmMgICAgICAgICAg ICAgICAgIHwgIDQgKy0KPiAgIGFyY2gvaWE2NC9rZXJuZWwvZXJyX2luamVjdC5jICAgICAgICAg ICAgICAgICAgICAgIHwgIDIgKy0KPiAgIGFyY2gvaWE2NC9rZXJuZWwvcHRyYWNlLmMgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgMTQgKysrLS0tCj4gICBhcmNoL20zMnIva2VybmVsL3B0cmFj ZS5jICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE1ICsrKystLS0KPiAgIGFyY2gvbWlwcy9r ZXJuZWwvcHRyYWNlMzIuYyAgICAgICAgICAgICAgICAgICAgICAgIHwgIDUgKystCj4gICBhcmNo L21pcHMvbW0vZ3VwLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyICstCj4g ICBhcmNoL3Bvd2VycGMva2VybmVsL3B0cmFjZTMyLmMgICAgICAgICAgICAgICAgICAgICB8ICA1 ICsrLQo+ICAgYXJjaC9zMzkwL21tL2d1cC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgfCAgMyArLQo+ICAgYXJjaC9zY29yZS9rZXJuZWwvcHRyYWNlLmMgICAgICAgICAgICAgICAg ICAgICAgICAgfCAxMCArKystLQo+ICAgYXJjaC9zaC9tbS9ndXAuYyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgfCAgMyArLQo+ICAgYXJjaC9zcGFyYy9rZXJuZWwvcHRyYWNlXzY0 LmMgICAgICAgICAgICAgICAgICAgICAgfCAyNCArKysrKysrLS0tLQo+ICAgYXJjaC9zcGFyYy9t bS9ndXAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMyArLQo+ICAgYXJjaC94 ODYva2VybmVsL3N0ZXAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMyArLQo+ICAg YXJjaC94ODYvbW0vZ3VwLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMiAr LQo+ICAgYXJjaC94ODYvbW0vbXB4LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg fCAgNSArLS0KPiAgIGFyY2gveDg2L3VtL3B0cmFjZV8zMi5jICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHwgIDMgKy0KPiAgIGFyY2gveDg2L3VtL3B0cmFjZV82NC5jICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgIDMgKy0KPiAgIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdw dV90dG0uYyAgICAgICAgICAgIHwgIDcgKystCj4gICBkcml2ZXJzL2dwdS9kcm0vZXRuYXZpdi9l dG5hdml2X2dlbS5jICAgICAgICAgICAgICB8ICA3ICsrLQo+ICAgZHJpdmVycy9ncHUvZHJtL2V4 eW5vcy9leHlub3NfZHJtX2cyZC5jICAgICAgICAgICAgfCAgMyArLQo+ICAgZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9nZW1fdXNlcnB0ci5jICAgICAgICAgICAgfCAgNiArKy0KPiAgIGRyaXZl cnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX3R0bS5jICAgICAgICAgICAgICAgIHwgIDMgKy0KPiAg IGRyaXZlcnMvZ3B1L2RybS92aWEvdmlhX2RtYWJsaXQuYyAgICAgICAgICAgICAgICAgIHwgIDQg Ky0KPiAgIGRyaXZlcnMvaW5maW5pYmFuZC9jb3JlL3VtZW0uYyAgICAgICAgICAgICAgICAgICAg IHwgIDYgKystCj4gICBkcml2ZXJzL2luZmluaWJhbmQvY29yZS91bWVtX29kcC5jICAgICAgICAg ICAgICAgICB8ICA3ICsrLQo+ICAgZHJpdmVycy9pbmZpbmliYW5kL2h3L210aGNhL210aGNhX21l bWZyZWUuYyAgICAgICAgfCAgMiArLQo+ICAgZHJpdmVycy9pbmZpbmliYW5kL2h3L3FpYi9xaWJf dXNlcl9wYWdlcy5jICAgICAgICAgfCAgMyArLQo+ICAgZHJpdmVycy9pbmZpbmliYW5kL2h3L3Vz bmljL3VzbmljX3Vpb20uYyAgICAgICAgICAgfCAgNSArKy0KPiAgIGRyaXZlcnMvbWVkaWEvcGNp L2l2dHYvaXZ0di11ZG1hLmMgICAgICAgICAgICAgICAgIHwgIDQgKy0KPiAgIGRyaXZlcnMvbWVk aWEvcGNpL2l2dHYvaXZ0di15dXYuYyAgICAgICAgICAgICAgICAgIHwgIDUgKystCj4gICBkcml2 ZXJzL21lZGlhL3BsYXRmb3JtL29tYXAvb21hcF92b3V0LmMgICAgICAgICAgICB8ICAyICstCj4g ICBkcml2ZXJzL21lZGlhL3Y0bDItY29yZS92aWRlb2J1Zi1kbWEtc2cuYyAgICAgICAgICB8ICA3 ICsrLQo+ICAgZHJpdmVycy9tZWRpYS92NGwyLWNvcmUvdmlkZW9idWYyLW1lbW9wcy5jICAgICAg ICAgfCAgNiArKy0KPiAgIGRyaXZlcnMvbWlzYy9taWMvc2NpZi9zY2lmX3JtYS5jICAgICAgICAg ICAgICAgICAgIHwgIDMgKy0KPiAgIGRyaXZlcnMvbWlzYy9zZ2ktZ3J1L2dydWZhdWx0LmMgICAg ICAgICAgICAgICAgICAgIHwgIDIgKy0KPiAgIGRyaXZlcnMvcGxhdGZvcm0vZ29sZGZpc2gvZ29s ZGZpc2hfcGlwZS5jICAgICAgICAgIHwgIDMgKy0KPiAgIGRyaXZlcnMvcmFwaWRpby9kZXZpY2Vz L3Jpb19tcG9ydF9jZGV2LmMgICAgICAgICAgIHwgIDMgKy0KPiAgIGRyaXZlcnMvc2NzaS9zdC5j ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDUgKy0tCj4gICAuLi4vaW50ZXJm YWNlL3ZjaGlxX2FybS92Y2hpcV8yODM1X2FybS5jICAgICAgICAgICB8ICAzICstCj4gICAuLi4v dmMwNF9zZXJ2aWNlcy9pbnRlcmZhY2UvdmNoaXFfYXJtL3ZjaGlxX2FybS5jICB8ICAzICstCj4g ICBkcml2ZXJzL3ZpZGVvL2ZiZGV2L3B2cjJmYi5jICAgICAgICAgICAgICAgICAgICAgICB8ICA0 ICstCj4gICBkcml2ZXJzL3ZpcnQvZnNsX2h5cGVydmlzb3IuYyAgICAgICAgICAgICAgICAgICAg ICB8ICA0ICstCj4gICBmcy9leGVjLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8ICA5ICsrKy0KPiAgIGZzL3Byb2MvYmFzZS5jICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgMTkgKysrKystLS0KPiAgIGluY2x1ZGUvbGludXgvbW0uaCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMTggKysrKy0tLS0KPiAgIGtlcm5lbC9ldmVu dHMvdXByb2Jlcy5jICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDYgKystCj4gICBrZXJu ZWwvcHRyYWNlLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE2ICsrKyst LS0KPiAgIG1tL2ZyYW1lX3ZlY3Rvci5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgIDkgKystLQo+ICAgbW0vZ3VwLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfCA1MCArKysrKysrKysrLS0tLS0tLS0tLS0tCj4gICBtbS9tZW1vcnkuYyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE2ICsrKystLS0KPiAgIG1tL21l bXBvbGljeS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KPiAg IG1tL25vbW11LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMzgg KysrKysrKy0tLS0tLS0tLQo+ICAgbW0vcHJvY2Vzc192bV9hY2Nlc3MuYyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgNyArKy0KPiAgIG1tL3V0aWwuYyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgIDggKystLQo+ICAgbmV0L2NlcGgvcGFnZXZlYy5jICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMiArLQo+ICAgc2VjdXJpdHkvdG9tb3lv L2RvbWFpbi5jICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMiArLQo+ICAgdmlydC9rdm0v YXN5bmNfcGYuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMyArLQo+ICAgdmly dC9rdm0va3ZtX21haW4uYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAxMSArKyst LQo+ICAgNjEgZmlsZXMgY2hhbmdlZCwgMjYwIGluc2VydGlvbnMoKyksIDE4NyBkZWxldGlvbnMo LSkKPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+IGRy aS1kZXZlbCBtYWlsaW5nIGxpc3QKPiBkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4g aHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1n ZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK