From mboxrd@z Thu Jan 1 00:00:00 1970 From: Szabolcs Nagy Subject: Re: [PATCH v7 1/2] arm64: Define Documentation/arm64/tagged-address-abi.rst Date: Thu, 8 Aug 2019 09:25:47 +0000 Message-ID: <48c5f9b3-d253-bede-e755-0aabba2757b5@arm.com> References: <20190807155321.9648-1-catalin.marinas@arm.com> <20190807155321.9648-2-catalin.marinas@arm.com> <826a9ace-feac-c019-843e-07e23c9fd46c@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <826a9ace-feac-c019-843e-07e23c9fd46c@intel.com> Content-Language: en-US Content-ID: <960F9790878B3346A988307D90E92E55@eurprd08.prod.outlook.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=m.gmane.org@lists.infradead.org To: Dave Hansen , Catalin Marinas , "linux-arm-kernel@lists.infradead.org" Cc: "linux-arch@vger.kernel.org" , Vincenzo Frascino , "linux-doc@vger.kernel.org" , Andrey Konovalov , Kevin Brodsky , Will Deacon , nd List-Id: linux-arch.vger.kernel.org On 07/08/2019 21:38, Dave Hansen wrote: > On 8/7/19 8:53 AM, Catalin Marinas wrote: >> +- The syscall behaviour is undefined for non valid tagged pointers. > > Do you really mean "undefined"? I mean, a bad pointer is a bad pointer. > Why should it matter if it's a tagged bad pointer or an untagged bad > pointer? bad pointers are invalid, but some non-bad pointers are also invalid if they are tagged (e.g. tagged pointer to device memory?) those may be valid to dereference in userspace but don't work across the syscall abi (device driver does not handle the tag?). >> +- mmap() addr parameter. >> + >> +- mremap() new_address parameter. > > Is munmap() missing? Or was there a reason for leaving it out? the new address in mmap and mremap may not be currently mapped, other m* functions operate on existing mappings (munmap, madvise, mprotect, mlock,...) although by this logic brk (and related PR_SET_MM_*) should be excluded here too. >> +- prctl(PR_SET_MM, ``*``, ...) other than arg2 PR_SET_MM_MAP and >> + PR_SET_MM_MAP_SIZE. >> + >> +- prctl(PR_SET_MM, PR_SET_MM_MAP{,_SIZE}, ...) struct prctl_mm_map fields. >> + >> +Any attempt to use non-zero tagged pointers will lead to undefined >> +behaviour. > > I wonder if you want to generalize this a bit. I think you're saying > that parts of the ABI that modify the *layout* of the address space > never accept tagged pointers. something like that, but i think this is hard to specify in a generic way. From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-eopbgr20078.outbound.protection.outlook.com ([40.107.2.78]:63109 "EHLO EUR02-VE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1730678AbfHHJ1p (ORCPT ); Thu, 8 Aug 2019 05:27:45 -0400 From: Szabolcs Nagy Subject: Re: [PATCH v7 1/2] arm64: Define Documentation/arm64/tagged-address-abi.rst Date: Thu, 8 Aug 2019 09:25:47 +0000 Message-ID: <48c5f9b3-d253-bede-e755-0aabba2757b5@arm.com> References: <20190807155321.9648-1-catalin.marinas@arm.com> <20190807155321.9648-2-catalin.marinas@arm.com> <826a9ace-feac-c019-843e-07e23c9fd46c@intel.com> In-Reply-To: <826a9ace-feac-c019-843e-07e23c9fd46c@intel.com> Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-ID: <960F9790878B3346A988307D90E92E55@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 Sender: linux-arch-owner@vger.kernel.org List-ID: To: Dave Hansen , Catalin Marinas , "linux-arm-kernel@lists.infradead.org" Cc: nd , Vincenzo Frascino , Will Deacon , Andrey Konovalov , Kevin Brodsky , "linux-doc@vger.kernel.org" , "linux-arch@vger.kernel.org" Message-ID: <20190808092547.Q0FXHhGkxwLAp1r2MWOLVxItVdl_yYkO5duo0v_vScM@z> T24gMDcvMDgvMjAxOSAyMTozOCwgRGF2ZSBIYW5zZW4gd3JvdGU6DQo+IE9uIDgvNy8xOSA4OjUz IEFNLCBDYXRhbGluIE1hcmluYXMgd3JvdGU6DQo+PiArLSBUaGUgc3lzY2FsbCBiZWhhdmlvdXIg aXMgdW5kZWZpbmVkIGZvciBub24gdmFsaWQgdGFnZ2VkIHBvaW50ZXJzLg0KPiANCj4gRG8geW91 IHJlYWxseSBtZWFuICJ1bmRlZmluZWQiPyAgSSBtZWFuLCBhIGJhZCBwb2ludGVyIGlzIGEgYmFk IHBvaW50ZXIuDQo+ICBXaHkgc2hvdWxkIGl0IG1hdHRlciBpZiBpdCdzIGEgdGFnZ2VkIGJhZCBw b2ludGVyIG9yIGFuIHVudGFnZ2VkIGJhZA0KPiBwb2ludGVyPw0KDQpiYWQgcG9pbnRlcnMgYXJl IGludmFsaWQsIGJ1dCBzb21lIG5vbi1iYWQgcG9pbnRlcnMgYXJlDQphbHNvIGludmFsaWQgaWYg dGhleSBhcmUgdGFnZ2VkIChlLmcuIHRhZ2dlZCBwb2ludGVyIHRvDQpkZXZpY2UgbWVtb3J5Pykg dGhvc2UgbWF5IGJlIHZhbGlkIHRvIGRlcmVmZXJlbmNlIGluDQp1c2Vyc3BhY2UgYnV0IGRvbid0 IHdvcmsgYWNyb3NzIHRoZSBzeXNjYWxsIGFiaSAoZGV2aWNlDQpkcml2ZXIgZG9lcyBub3QgaGFu ZGxlIHRoZSB0YWc/KS4NCg0KPj4gKy0gbW1hcCgpIGFkZHIgcGFyYW1ldGVyLg0KPj4gKw0KPj4g Ky0gbXJlbWFwKCkgbmV3X2FkZHJlc3MgcGFyYW1ldGVyLg0KPiANCj4gSXMgbXVubWFwKCkgbWlz c2luZz8gIE9yIHdhcyB0aGVyZSBhIHJlYXNvbiBmb3IgbGVhdmluZyBpdCBvdXQ/DQoNCnRoZSBu ZXcgYWRkcmVzcyBpbiBtbWFwIGFuZCBtcmVtYXAgbWF5IG5vdCBiZSBjdXJyZW50bHkNCm1hcHBl ZCwgb3RoZXIgbSogZnVuY3Rpb25zIG9wZXJhdGUgb24gZXhpc3RpbmcgbWFwcGluZ3MNCihtdW5t YXAsIG1hZHZpc2UsIG1wcm90ZWN0LCBtbG9jaywuLi4pDQoNCmFsdGhvdWdoIGJ5IHRoaXMgbG9n aWMgYnJrIChhbmQgcmVsYXRlZCBQUl9TRVRfTU1fKikNCnNob3VsZCBiZSBleGNsdWRlZCBoZXJl IHRvby4NCg0KPj4gKy0gcHJjdGwoUFJfU0VUX01NLCBgYCpgYCwgLi4uKSBvdGhlciB0aGFuIGFy ZzIgUFJfU0VUX01NX01BUCBhbmQNCj4+ICsgIFBSX1NFVF9NTV9NQVBfU0laRS4NCj4+ICsNCj4+ ICstIHByY3RsKFBSX1NFVF9NTSwgUFJfU0VUX01NX01BUHssX1NJWkV9LCAuLi4pIHN0cnVjdCBw cmN0bF9tbV9tYXAgZmllbGRzLg0KPj4gKw0KPj4gK0FueSBhdHRlbXB0IHRvIHVzZSBub24temVy byB0YWdnZWQgcG9pbnRlcnMgd2lsbCBsZWFkIHRvIHVuZGVmaW5lZA0KPj4gK2JlaGF2aW91ci4N Cj4gDQo+IEkgd29uZGVyIGlmIHlvdSB3YW50IHRvIGdlbmVyYWxpemUgdGhpcyBhIGJpdC4gIEkg dGhpbmsgeW91J3JlIHNheWluZw0KPiB0aGF0IHBhcnRzIG9mIHRoZSBBQkkgdGhhdCBtb2RpZnkg dGhlICpsYXlvdXQqIG9mIHRoZSBhZGRyZXNzIHNwYWNlDQo+IG5ldmVyIGFjY2VwdCB0YWdnZWQg cG9pbnRlcnMuDQoNCnNvbWV0aGluZyBsaWtlIHRoYXQsIGJ1dCBpIHRoaW5rIHRoaXMgaXMgaGFy ZCB0byBzcGVjaWZ5DQppbiBhIGdlbmVyaWMgd2F5Lg0K