All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vladimir Murzin <Vladimir.Murzin@arm.com>
To: Christoph Hellwig <hch@lst.de>, Greg Ungerer <gerg@linux-m68k.org>
Cc: "uclinux-h8-devel@lists.sourceforge.jp"
	<uclinux-h8-devel@lists.sourceforge.jp>,
	"linux-xtensa@linux-xtensa.org" <linux-xtensa@linux-xtensa.org>,
	Michal Simek <monstr@monstr.eu>,
	"linux-c6x-dev@linux-c6x.org" <linux-c6x-dev@linux-c6x.org>,
	"linux-sh@vger.kernel.org" <linux-sh@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-m68k@lists.linux-m68k.org"
	<linux-m68k@lists.linux-m68k.org>,
	"linux-riscv@lists.infradead.org"
	<linux-riscv@lists.infradead.org>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH 05/15] binfmt_flat: replace flat_argvp_envp_on_stack with a Kconfig variable
Date: Tue, 11 Jun 2019 09:49:46 +0000	[thread overview]
Message-ID: <09e6ae8e-0495-4af0-acec-91a0b87a8493@arm.com> (raw)
In-Reply-To: <20190610212015.9157-6-hch@lst.de>

T24gNi8xMC8xOSAxMDoyMCBQTSwgQ2hyaXN0b3BoIEhlbGx3aWcgd3JvdGU6DQo+IFRoaXMgd2ls
bCBldmVudHVhbGx5IGFsbG93IHVzIHRvIGtpbGwgdGhlIG5lZWQgZm9yIGFuIDxhc20vZmxhdC5o
PiBmb3INCj4gbWFueSBjYXNlcy4NCj4NCj4gU2lnbmVkLW9mZi1ieTogQ2hyaXN0b3BoIEhlbGx3
aWcgPGhjaEBsc3QuZGU+DQo+IC0tLQ0KPiAgYXJjaC9hcm0vS2NvbmZpZyAgICAgICAgICAgICAg
ICAgICB8IDEgKw0KPiAgYXJjaC9hcm0vaW5jbHVkZS9hc20vZmxhdC5oICAgICAgICB8IDIgLS0N
Cj4gIGFyY2gvYzZ4L2luY2x1ZGUvYXNtL2ZsYXQuaCAgICAgICAgfCAxIC0NCj4gIGFyY2gvaDgz
MDAvS2NvbmZpZyAgICAgICAgICAgICAgICAgfCAxICsNCj4gIGFyY2gvaDgzMDAvaW5jbHVkZS9h
c20vZmxhdC5oICAgICAgfCAyIC0tDQo+ICBhcmNoL202OGsvS2NvbmZpZyAgICAgICAgICAgICAg
ICAgIHwgMSArDQo+ICBhcmNoL202OGsvaW5jbHVkZS9hc20vZmxhdC5oICAgICAgIHwgMSAtDQo+
ICBhcmNoL21pY3JvYmxhemUvaW5jbHVkZS9hc20vZmxhdC5oIHwgMiAtLQ0KPiAgYXJjaC9zaC9p
bmNsdWRlL2FzbS9mbGF0LmggICAgICAgICB8IDEgLQ0KPiAgYXJjaC94dGVuc2EvaW5jbHVkZS9h
c20vZmxhdC5oICAgICB8IDEgLQ0KPiAgZnMvS2NvbmZpZy5iaW5mbXQgICAgICAgICAgICAgICAg
ICB8IDMgKysrDQo+ICBmcy9iaW5mbXRfZmxhdC5jICAgICAgICAgICAgICAgICAgIHwgNSArKyst
LQ0KPiAgMTIgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkN
Cj4NCg0KRm9yIEFSTSBiaXRzOg0KDQpUZXN0ZWQtYnk6IFZsYWRpbWlyIE11cnppbiA8dmxhZGlt
aXIubXVyemluQGFybS5jb20+DQpSZXZpZXdlZC1ieTogVmxhZGltaXIgTXVyemluIDx2bGFkaW1p
ci5tdXJ6aW5AYXJtLmNvbT4NCg0KDQo+IGRpZmYgLS1naXQgYS9hcmNoL2FybS9LY29uZmlnIGIv
YXJjaC9hcm0vS2NvbmZpZw0KPiBpbmRleCA4ODY5NzQyYTg1ZGYuLmIxYjQ4YzBiZGU3NiAxMDA2
NDQNCj4gLS0tIGEvYXJjaC9hcm0vS2NvbmZpZw0KPiArKysgYi9hcmNoL2FybS9LY29uZmlnDQo+
IEBAIC0zMCw2ICszMCw3IEBAIGNvbmZpZyBBUk0NCj4gIHNlbGVjdCBBUkNIX1VTRV9CVUlMVElO
X0JTV0FQDQo+ICBzZWxlY3QgQVJDSF9VU0VfQ01QWENIR19MT0NLUkVGDQo+ICBzZWxlY3QgQVJD
SF9XQU5UX0lQQ19QQVJTRV9WRVJTSU9ODQo+ICtzZWxlY3QgQklORk1UX0ZMQVRfQVJHVlBfRU5W
UF9PTl9TVEFDSw0KPiAgc2VsZWN0IEJVSUxEVElNRV9FWFRBQkxFX1NPUlQgaWYgTU1VDQo+ICBz
ZWxlY3QgQ0xPTkVfQkFDS1dBUkRTDQo+ICBzZWxlY3QgQ1BVX1BNIGlmIFNVU1BFTkQgfHwgQ1BV
X0lETEUNCj4gZGlmZiAtLWdpdCBhL2FyY2gvYXJtL2luY2x1ZGUvYXNtL2ZsYXQuaCBiL2FyY2gv
YXJtL2luY2x1ZGUvYXNtL2ZsYXQuaA0KPiBpbmRleCBhY2YxNjIxMTFlZTIuLmJiYzI3OTAxNDQ2
ZiAxMDA2NDQNCj4gLS0tIGEvYXJjaC9hcm0vaW5jbHVkZS9hc20vZmxhdC5oDQo+ICsrKyBiL2Fy
Y2gvYXJtL2luY2x1ZGUvYXNtL2ZsYXQuaA0KPiBAQCAtOCw4ICs4LDYgQEANCj4NCj4gICNpbmNs
dWRlIDxsaW51eC91YWNjZXNzLmg+DQo+DQo+IC0jZGVmaW5lZmxhdF9hcmd2cF9lbnZwX29uX3N0
YWNrKCkxDQo+IC0NCj4gIHN0YXRpYyBpbmxpbmUgaW50IGZsYXRfZ2V0X2FkZHJfZnJvbV9ycCh1
MzIgX191c2VyICpycCwgdTMyIHJlbHZhbCwgdTMyIGZsYWdzLA0KPiAgdTMyICphZGRyLCB1MzIg
KnBlcnNpc3RlbnQpDQo+ICB7DQo+IGRpZmYgLS1naXQgYS9hcmNoL2M2eC9pbmNsdWRlL2FzbS9m
bGF0LmggYi9hcmNoL2M2eC9pbmNsdWRlL2FzbS9mbGF0LmgNCj4gaW5kZXggMzUzZTRkMDZlOGMw
Li4yZDU3YTkyMDRkMjEgMTAwNjQ0DQo+IC0tLSBhL2FyY2gvYzZ4L2luY2x1ZGUvYXNtL2ZsYXQu
aA0KPiArKysgYi9hcmNoL2M2eC9pbmNsdWRlL2FzbS9mbGF0LmgNCj4gQEAgLTQsNyArNCw2IEBA
DQo+DQo+ICAjaW5jbHVkZSA8YXNtL3VuYWxpZ25lZC5oPg0KPg0KPiAtI2RlZmluZSBmbGF0X2Fy
Z3ZwX2VudnBfb25fc3RhY2soKTANCj4gIHN0YXRpYyBpbmxpbmUgaW50IGZsYXRfZ2V0X2FkZHJf
ZnJvbV9ycCh1MzIgX191c2VyICpycCwgdTMyIHJlbHZhbCwgdTMyIGZsYWdzLA0KPiAgdTMyICph
ZGRyLCB1MzIgKnBlcnNpc3RlbnQpDQo+ICB7DQo+IGRpZmYgLS1naXQgYS9hcmNoL2g4MzAwL0tj
b25maWcgYi9hcmNoL2g4MzAwL0tjb25maWcNCj4gaW5kZXggZDMwZTg3MjdiMDJkLi43NDU3ZjE5
MGNhYWEgMTAwNjQ0DQo+IC0tLSBhL2FyY2gvaDgzMDAvS2NvbmZpZw0KPiArKysgYi9hcmNoL2g4
MzAwL0tjb25maWcNCj4gQEAgLTIsNiArMiw3IEBADQo+ICBjb25maWcgSDgzMDANCj4gICAgICAg
ICAgZGVmX2Jvb2wgeQ0KPiAgc2VsZWN0IEFSQ0hfMzJCSVRfT0ZGX1QNCj4gK3NlbGVjdCBCSU5G
TVRfRkxBVF9BUkdWUF9FTlZQX09OX1NUQUNLDQo+ICBzZWxlY3QgQklORk1UX0ZMQVRfT0xEX0FM
V0FZU19SQU0NCj4gIHNlbGVjdCBHRU5FUklDX0FUT01JQzY0DQo+ICBzZWxlY3QgSEFWRV9VSUQx
Ng0KPiBkaWZmIC0tZ2l0IGEvYXJjaC9oODMwMC9pbmNsdWRlL2FzbS9mbGF0LmggYi9hcmNoL2g4
MzAwL2luY2x1ZGUvYXNtL2ZsYXQuaA0KPiBpbmRleCAxNGNjOTI4ZDU0NzguLjQ2ODMxNDZmMGU5
ZSAxMDA2NDQNCj4gLS0tIGEvYXJjaC9oODMwMC9pbmNsdWRlL2FzbS9mbGF0LmgNCj4gKysrIGIv
YXJjaC9oODMwMC9pbmNsdWRlL2FzbS9mbGF0LmgNCj4gQEAgLTgsOCArOCw2IEBADQo+DQo+ICAj
aW5jbHVkZSA8YXNtL3VuYWxpZ25lZC5oPg0KPg0KPiAtI2RlZmluZWZsYXRfYXJndnBfZW52cF9v
bl9zdGFjaygpMQ0KPiAtDQo+ICAvKg0KPiAgICogb24gdGhlIEg4IGEgY291cGxlIG9mIHRoZSBy
ZWxvY2F0aW9ucyBoYXZlIGFuIGluc3RydWN0aW9uIGluIHRoZQ0KPiAgICogdG9wIGJ5dGUuICBB
cyB0aGVyZSBjYW4gb25seSBiZSAyNGJpdHMgb2YgYWRkcmVzcyBzcGFjZSwgIHdlIGp1c3QNCj4g
ZGlmZiAtLWdpdCBhL2FyY2gvbTY4ay9LY29uZmlnIGIvYXJjaC9tNjhrL0tjb25maWcNCj4gaW5k
ZXggMjE4ZTAzN2VmOTAxLi5mZDY5ZWU1YWQ2YWIgMTAwNjQ0DQo+IC0tLSBhL2FyY2gvbTY4ay9L
Y29uZmlnDQo+ICsrKyBiL2FyY2gvbTY4ay9LY29uZmlnDQo+IEBAIC03LDYgKzcsNyBAQCBjb25m
aWcgTTY4Sw0KPiAgc2VsZWN0IEFSQ0hfTUlHSFRfSEFWRV9QQ19QQVJQT1JUIGlmIElTQQ0KPiAg
c2VsZWN0IEFSQ0hfTk9fQ09IRVJFTlRfRE1BX01NQVAgaWYgIU1NVQ0KPiAgc2VsZWN0IEFSQ0hf
Tk9fUFJFRU1QVCBpZiAhQ09MREZJUkUNCj4gK3NlbGVjdCBCSU5GTVRfRkxBVF9BUkdWUF9FTlZQ
X09OX1NUQUNLDQo+ICBzZWxlY3QgSEFWRV9JREUNCj4gIHNlbGVjdCBIQVZFX0FPVVQgaWYgTU1V
DQo+ICBzZWxlY3QgSEFWRV9ERUJVR19CVUdWRVJCT1NFDQo+IGRpZmYgLS1naXQgYS9hcmNoL202
OGsvaW5jbHVkZS9hc20vZmxhdC5oIGIvYXJjaC9tNjhrL2luY2x1ZGUvYXNtL2ZsYXQuaA0KPiBp
bmRleCA3YjFmYjVjMjgwOWUuLmQ3MTAyZmNkNDNlYiAxMDA2NDQNCj4gLS0tIGEvYXJjaC9tNjhr
L2luY2x1ZGUvYXNtL2ZsYXQuaA0KPiArKysgYi9hcmNoL202OGsvaW5jbHVkZS9hc20vZmxhdC5o
DQo+IEBAIC04LDcgKzgsNiBAQA0KPg0KPiAgI2luY2x1ZGUgPGxpbnV4L3VhY2Nlc3MuaD4NCj4N
Cj4gLSNkZWZpbmVmbGF0X2FyZ3ZwX2VudnBfb25fc3RhY2soKTENCj4gIHN0YXRpYyBpbmxpbmUg
aW50IGZsYXRfZ2V0X2FkZHJfZnJvbV9ycCh1MzIgX191c2VyICpycCwgdTMyIHJlbHZhbCwgdTMy
IGZsYWdzLA0KPiAgdTMyICphZGRyLCB1MzIgKnBlcnNpc3RlbnQpDQo+ICB7DQo+IGRpZmYgLS1n
aXQgYS9hcmNoL21pY3JvYmxhemUvaW5jbHVkZS9hc20vZmxhdC5oIGIvYXJjaC9taWNyb2JsYXpl
L2luY2x1ZGUvYXNtL2ZsYXQuaA0KPiBpbmRleCAxY2Q4ZDdmNGNmMTIuLjllM2Q4ZTAxZDI5NCAx
MDA2NDQNCj4gLS0tIGEvYXJjaC9taWNyb2JsYXplL2luY2x1ZGUvYXNtL2ZsYXQuaA0KPiArKysg
Yi9hcmNoL21pY3JvYmxhemUvaW5jbHVkZS9hc20vZmxhdC5oDQo+IEBAIC0xMyw4ICsxMyw2IEBA
DQo+DQo+ICAjaW5jbHVkZSA8YXNtL3VuYWxpZ25lZC5oPg0KPg0KPiAtI2RlZmluZWZsYXRfYXJn
dnBfZW52cF9vbl9zdGFjaygpMA0KPiAtDQo+ICAvKg0KPiAgICogTWljcm9ibGF6ZSB3b3JrcyBh
IGxpdHRsZSBkaWZmZXJlbnRseSBmcm9tIG90aGVyIGFyY2hlcywgYmVjYXVzZQ0KPiAgICogb2Yg
dGhlIE1JQ1JPQkxBWkVfNjQgcmVsb2MgdHlwZS4gSGVyZSwgYSAzMiBiaXQgYWRkcmVzcyBpcyBz
cGxpdA0KPiBkaWZmIC0tZ2l0IGEvYXJjaC9zaC9pbmNsdWRlL2FzbS9mbGF0LmggYi9hcmNoL3No
L2luY2x1ZGUvYXNtL2ZsYXQuaA0KPiBpbmRleCAwMTU2NzhkN2I3NzEuLjEwMDIzNDNkZDg0YSAx
MDA2NDQNCj4gLS0tIGEvYXJjaC9zaC9pbmNsdWRlL2FzbS9mbGF0LmgNCj4gKysrIGIvYXJjaC9z
aC9pbmNsdWRlL2FzbS9mbGF0LmgNCj4gQEAgLTExLDcgKzExLDYgQEANCj4NCj4gICNpbmNsdWRl
IDxhc20vdW5hbGlnbmVkLmg+DQo+DQo+IC0jZGVmaW5lZmxhdF9hcmd2cF9lbnZwX29uX3N0YWNr
KCkwDQo+ICBzdGF0aWMgaW5saW5lIGludCBmbGF0X2dldF9hZGRyX2Zyb21fcnAodTMyIF9fdXNl
ciAqcnAsIHUzMiByZWx2YWwsIHUzMiBmbGFncywNCj4gIHUzMiAqYWRkciwgdTMyICpwZXJzaXN0
ZW50KQ0KPiAgew0KPiBkaWZmIC0tZ2l0IGEvYXJjaC94dGVuc2EvaW5jbHVkZS9hc20vZmxhdC5o
IGIvYXJjaC94dGVuc2EvaW5jbHVkZS9hc20vZmxhdC5oDQo+IGluZGV4IGIyMTVjMWU2Njk1OC4u
M2QzNTczNzFiMjhiIDEwMDY0NA0KPiAtLS0gYS9hcmNoL3h0ZW5zYS9pbmNsdWRlL2FzbS9mbGF0
LmgNCj4gKysrIGIvYXJjaC94dGVuc2EvaW5jbHVkZS9hc20vZmxhdC5oDQo+IEBAIC00LDcgKzQs
NiBAQA0KPg0KPiAgI2luY2x1ZGUgPGFzbS91bmFsaWduZWQuaD4NCj4NCj4gLSNkZWZpbmUgZmxh
dF9hcmd2cF9lbnZwX29uX3N0YWNrKCkwDQo+ICBzdGF0aWMgaW5saW5lIGludCBmbGF0X2dldF9h
ZGRyX2Zyb21fcnAodTMyIF9fdXNlciAqcnAsIHUzMiByZWx2YWwsIHUzMiBmbGFncywNCj4gIHUz
MiAqYWRkciwgdTMyICpwZXJzaXN0ZW50KQ0KPiAgew0KPiBkaWZmIC0tZ2l0IGEvZnMvS2NvbmZp
Zy5iaW5mbXQgYi9mcy9LY29uZmlnLmJpbmZtdA0KPiBpbmRleCA1NjU4ZTEyYWQ5NDQuLjgyZjdk
N2YyMzRmMyAxMDA2NDQNCj4gLS0tIGEvZnMvS2NvbmZpZy5iaW5mbXQNCj4gKysrIGIvZnMvS2Nv
bmZpZy5iaW5mbXQNCj4gQEAgLTk3LDYgKzk3LDkgQEAgY29uZmlnIEJJTkZNVF9GTEFUDQo+ICBo
ZWxwDQo+ICAgIFN1cHBvcnQgdUNsaW51eCBGTEFUIGZvcm1hdCBiaW5hcmllcy4NCj4NCj4gK2Nv
bmZpZyBCSU5GTVRfRkxBVF9BUkdWUF9FTlZQX09OX1NUQUNLDQo+ICtib29sDQo+ICsNCj4gIGNv
bmZpZyBCSU5GTVRfRkxBVF9PTERfQUxXQVlTX1JBTQ0KPiAgYm9vbA0KPg0KPiBkaWZmIC0tZ2l0
IGEvZnMvYmluZm10X2ZsYXQuYyBiL2ZzL2JpbmZtdF9mbGF0LmMNCj4gaW5kZXggMThkODJmZDVm
NTdjLi5jMDk2NTEwODdlZGEgMTAwNjQ0DQo+IC0tLSBhL2ZzL2JpbmZtdF9mbGF0LmMNCj4gKysr
IGIvZnMvYmluZm10X2ZsYXQuYw0KPiBAQCAtMTI0LDE0ICsxMjQsMTUgQEAgc3RhdGljIGludCBj
cmVhdGVfZmxhdF90YWJsZXMoc3RydWN0IGxpbnV4X2JpbnBybSAqYnBybSwgdW5zaWduZWQgbG9u
ZyBhcmdfc3RhcnQNCj4NCj4gIHNwIC09IGJwcm0tPmVudmMgKyAxOw0KPiAgc3AgLT0gYnBybS0+
YXJnYyArIDE7DQo+IC1zcCAtPSBmbGF0X2FyZ3ZwX2VudnBfb25fc3RhY2soKSA/IDIgOiAwOw0K
PiAraWYgKElTX0VOQUJMRUQoQ09ORklHX0JJTkZNVF9GTEFUX0FSR1ZQX0VOVlBfT05fU1RBQ0sp
KQ0KPiArc3AgLT0gMjsgLyogYXJndnAgKyBlbnZwICovDQo+ICBzcCAtPSAxOyAgLyogJmFyZ2Mg
Ki8NCj4NCj4gIGN1cnJlbnQtPm1tLT5zdGFydF9zdGFjayA9ICh1bnNpZ25lZCBsb25nKXNwICYg
LUZMQVRfU1RBQ0tfQUxJR047DQo+ICBzcCA9ICh1bnNpZ25lZCBsb25nIF9fdXNlciAqKWN1cnJl
bnQtPm1tLT5zdGFydF9zdGFjazsNCj4NCj4gIF9fcHV0X3VzZXIoYnBybS0+YXJnYywgc3ArKyk7
DQo+IC1pZiAoZmxhdF9hcmd2cF9lbnZwX29uX3N0YWNrKCkpIHsNCj4gK2lmIChJU19FTkFCTEVE
KENPTkZJR19CSU5GTVRfRkxBVF9BUkdWUF9FTlZQX09OX1NUQUNLKSkgew0KPiAgdW5zaWduZWQg
bG9uZyBhcmd2LCBlbnZwOw0KPiAgYXJndiA9ICh1bnNpZ25lZCBsb25nKShzcCArIDIpOw0KPiAg
ZW52cCA9ICh1bnNpZ25lZCBsb25nKShzcCArIDIgKyBicHJtLT5hcmdjICsgMSk7DQo+DQoNCklN
UE9SVEFOVCBOT1RJQ0U6IFRoZSBjb250ZW50cyBvZiB0aGlzIGVtYWlsIGFuZCBhbnkgYXR0YWNo
bWVudHMgYXJlIGNvbmZpZGVudGlhbCBhbmQgbWF5IGFsc28gYmUgcHJpdmlsZWdlZC4gSWYgeW91
IGFyZSBub3QgdGhlIGludGVuZGVkIHJlY2lwaWVudCwgcGxlYXNlIG5vdGlmeSB0aGUgc2VuZGVy
IGltbWVkaWF0ZWx5IGFuZCBkbyBub3QgZGlzY2xvc2UgdGhlIGNvbnRlbnRzIHRvIGFueSBvdGhl
ciBwZXJzb24sIHVzZSBpdCBmb3IgYW55IHB1cnBvc2UsIG9yIHN0b3JlIG9yIGNvcHkgdGhlIGlu
Zm9ybWF0aW9uIGluIGFueSBtZWRpdW0uIFRoYW5rIHlvdS4NCg=

WARNING: multiple messages have this Message-ID (diff)
From: Vladimir Murzin <Vladimir.Murzin@arm.com>
To: Christoph Hellwig <hch@lst.de>, Greg Ungerer <gerg@linux-m68k.org>
Cc: "uclinux-h8-devel@lists.sourceforge.jp" 
	<uclinux-h8-devel@lists.sourceforge.jp>,
	"linux-xtensa@linux-xtensa.org" <linux-xtensa@linux-xtensa.org>,
	Michal Simek <monstr@monstr.eu>,
	"linux-c6x-dev@linux-c6x.org" <linux-c6x-dev@linux-c6x.org>,
	"linux-sh@vger.kernel.org" <linux-sh@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-m68k@lists.linux-m68k.org"
	<linux-m68k@lists.linux-m68k.org>,
	"linux-riscv@lists.infradead.org"
	<linux-riscv@lists.infradead.org>,
	"linux-arm-kernel@lists.infradead.org" 
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH 05/15] binfmt_flat: replace flat_argvp_envp_on_stack with a Kconfig variable
Date: Tue, 11 Jun 2019 09:49:46 +0000	[thread overview]
Message-ID: <09e6ae8e-0495-4af0-acec-91a0b87a8493@arm.com> (raw)
In-Reply-To: <20190610212015.9157-6-hch@lst.de>

On 6/10/19 10:20 PM, Christoph Hellwig wrote:
> This will eventually allow us to kill the need for an <asm/flat.h> for
> many cases.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> ---
>  arch/arm/Kconfig                   | 1 +
>  arch/arm/include/asm/flat.h        | 2 --
>  arch/c6x/include/asm/flat.h        | 1 -
>  arch/h8300/Kconfig                 | 1 +
>  arch/h8300/include/asm/flat.h      | 2 --
>  arch/m68k/Kconfig                  | 1 +
>  arch/m68k/include/asm/flat.h       | 1 -
>  arch/microblaze/include/asm/flat.h | 2 --
>  arch/sh/include/asm/flat.h         | 1 -
>  arch/xtensa/include/asm/flat.h     | 1 -
>  fs/Kconfig.binfmt                  | 3 +++
>  fs/binfmt_flat.c                   | 5 +++--
>  12 files changed, 9 insertions(+), 12 deletions(-)
>

For ARM bits:

Tested-by: Vladimir Murzin <vladimir.murzin@arm.com>
Reviewed-by: Vladimir Murzin <vladimir.murzin@arm.com>


> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 8869742a85df..b1b48c0bde76 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -30,6 +30,7 @@ config ARM
>  select ARCH_USE_BUILTIN_BSWAP
>  select ARCH_USE_CMPXCHG_LOCKREF
>  select ARCH_WANT_IPC_PARSE_VERSION
> +select BINFMT_FLAT_ARGVP_ENVP_ON_STACK
>  select BUILDTIME_EXTABLE_SORT if MMU
>  select CLONE_BACKWARDS
>  select CPU_PM if SUSPEND || CPU_IDLE
> diff --git a/arch/arm/include/asm/flat.h b/arch/arm/include/asm/flat.h
> index acf162111ee2..bbc27901446f 100644
> --- a/arch/arm/include/asm/flat.h
> +++ b/arch/arm/include/asm/flat.h
> @@ -8,8 +8,6 @@
>
>  #include <linux/uaccess.h>
>
> -#defineflat_argvp_envp_on_stack()1
> -
>  static inline int flat_get_addr_from_rp(u32 __user *rp, u32 relval, u32 flags,
>  u32 *addr, u32 *persistent)
>  {
> diff --git a/arch/c6x/include/asm/flat.h b/arch/c6x/include/asm/flat.h
> index 353e4d06e8c0..2d57a9204d21 100644
> --- a/arch/c6x/include/asm/flat.h
> +++ b/arch/c6x/include/asm/flat.h
> @@ -4,7 +4,6 @@
>
>  #include <asm/unaligned.h>
>
> -#define flat_argvp_envp_on_stack()0
>  static inline int flat_get_addr_from_rp(u32 __user *rp, u32 relval, u32 flags,
>  u32 *addr, u32 *persistent)
>  {
> diff --git a/arch/h8300/Kconfig b/arch/h8300/Kconfig
> index d30e8727b02d..7457f190caaa 100644
> --- a/arch/h8300/Kconfig
> +++ b/arch/h8300/Kconfig
> @@ -2,6 +2,7 @@
>  config H8300
>          def_bool y
>  select ARCH_32BIT_OFF_T
> +select BINFMT_FLAT_ARGVP_ENVP_ON_STACK
>  select BINFMT_FLAT_OLD_ALWAYS_RAM
>  select GENERIC_ATOMIC64
>  select HAVE_UID16
> diff --git a/arch/h8300/include/asm/flat.h b/arch/h8300/include/asm/flat.h
> index 14cc928d5478..4683146f0e9e 100644
> --- a/arch/h8300/include/asm/flat.h
> +++ b/arch/h8300/include/asm/flat.h
> @@ -8,8 +8,6 @@
>
>  #include <asm/unaligned.h>
>
> -#defineflat_argvp_envp_on_stack()1
> -
>  /*
>   * on the H8 a couple of the relocations have an instruction in the
>   * top byte.  As there can only be 24bits of address space,  we just
> diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
> index 218e037ef901..fd69ee5ad6ab 100644
> --- a/arch/m68k/Kconfig
> +++ b/arch/m68k/Kconfig
> @@ -7,6 +7,7 @@ config M68K
>  select ARCH_MIGHT_HAVE_PC_PARPORT if ISA
>  select ARCH_NO_COHERENT_DMA_MMAP if !MMU
>  select ARCH_NO_PREEMPT if !COLDFIRE
> +select BINFMT_FLAT_ARGVP_ENVP_ON_STACK
>  select HAVE_IDE
>  select HAVE_AOUT if MMU
>  select HAVE_DEBUG_BUGVERBOSE
> diff --git a/arch/m68k/include/asm/flat.h b/arch/m68k/include/asm/flat.h
> index 7b1fb5c2809e..d7102fcd43eb 100644
> --- a/arch/m68k/include/asm/flat.h
> +++ b/arch/m68k/include/asm/flat.h
> @@ -8,7 +8,6 @@
>
>  #include <linux/uaccess.h>
>
> -#defineflat_argvp_envp_on_stack()1
>  static inline int flat_get_addr_from_rp(u32 __user *rp, u32 relval, u32 flags,
>  u32 *addr, u32 *persistent)
>  {
> diff --git a/arch/microblaze/include/asm/flat.h b/arch/microblaze/include/asm/flat.h
> index 1cd8d7f4cf12..9e3d8e01d294 100644
> --- a/arch/microblaze/include/asm/flat.h
> +++ b/arch/microblaze/include/asm/flat.h
> @@ -13,8 +13,6 @@
>
>  #include <asm/unaligned.h>
>
> -#defineflat_argvp_envp_on_stack()0
> -
>  /*
>   * Microblaze works a little differently from other arches, because
>   * of the MICROBLAZE_64 reloc type. Here, a 32 bit address is split
> diff --git a/arch/sh/include/asm/flat.h b/arch/sh/include/asm/flat.h
> index 015678d7b771..1002343dd84a 100644
> --- a/arch/sh/include/asm/flat.h
> +++ b/arch/sh/include/asm/flat.h
> @@ -11,7 +11,6 @@
>
>  #include <asm/unaligned.h>
>
> -#defineflat_argvp_envp_on_stack()0
>  static inline int flat_get_addr_from_rp(u32 __user *rp, u32 relval, u32 flags,
>  u32 *addr, u32 *persistent)
>  {
> diff --git a/arch/xtensa/include/asm/flat.h b/arch/xtensa/include/asm/flat.h
> index b215c1e66958..3d357371b28b 100644
> --- a/arch/xtensa/include/asm/flat.h
> +++ b/arch/xtensa/include/asm/flat.h
> @@ -4,7 +4,6 @@
>
>  #include <asm/unaligned.h>
>
> -#define flat_argvp_envp_on_stack()0
>  static inline int flat_get_addr_from_rp(u32 __user *rp, u32 relval, u32 flags,
>  u32 *addr, u32 *persistent)
>  {
> diff --git a/fs/Kconfig.binfmt b/fs/Kconfig.binfmt
> index 5658e12ad944..82f7d7f234f3 100644
> --- a/fs/Kconfig.binfmt
> +++ b/fs/Kconfig.binfmt
> @@ -97,6 +97,9 @@ config BINFMT_FLAT
>  help
>    Support uClinux FLAT format binaries.
>
> +config BINFMT_FLAT_ARGVP_ENVP_ON_STACK
> +bool
> +
>  config BINFMT_FLAT_OLD_ALWAYS_RAM
>  bool
>
> diff --git a/fs/binfmt_flat.c b/fs/binfmt_flat.c
> index 18d82fd5f57c..c09651087eda 100644
> --- a/fs/binfmt_flat.c
> +++ b/fs/binfmt_flat.c
> @@ -124,14 +124,15 @@ static int create_flat_tables(struct linux_binprm *bprm, unsigned long arg_start
>
>  sp -= bprm->envc + 1;
>  sp -= bprm->argc + 1;
> -sp -= flat_argvp_envp_on_stack() ? 2 : 0;
> +if (IS_ENABLED(CONFIG_BINFMT_FLAT_ARGVP_ENVP_ON_STACK))
> +sp -= 2; /* argvp + envp */
>  sp -= 1;  /* &argc */
>
>  current->mm->start_stack = (unsigned long)sp & -FLAT_STACK_ALIGN;
>  sp = (unsigned long __user *)current->mm->start_stack;
>
>  __put_user(bprm->argc, sp++);
> -if (flat_argvp_envp_on_stack()) {
> +if (IS_ENABLED(CONFIG_BINFMT_FLAT_ARGVP_ENVP_ON_STACK)) {
>  unsigned long argv, envp;
>  argv = (unsigned long)(sp + 2);
>  envp = (unsigned long)(sp + 2 + bprm->argc + 1);
>

IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.

WARNING: multiple messages have this Message-ID (diff)
From: Vladimir Murzin <Vladimir.Murzin@arm.com>
To: Christoph Hellwig <hch@lst.de>, Greg Ungerer <gerg@linux-m68k.org>
Cc: "uclinux-h8-devel@lists.sourceforge.jp"
	<uclinux-h8-devel@lists.sourceforge.jp>,
	"linux-xtensa@linux-xtensa.org" <linux-xtensa@linux-xtensa.org>,
	Michal Simek <monstr@monstr.eu>,
	"linux-c6x-dev@linux-c6x.org" <linux-c6x-dev@linux-c6x.org>,
	"linux-sh@vger.kernel.org" <linux-sh@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-m68k@lists.linux-m68k.org"
	<linux-m68k@lists.linux-m68k.org>,
	"linux-riscv@lists.infradead.org"
	<linux-riscv@lists.infradead.org>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH 05/15] binfmt_flat: replace flat_argvp_envp_on_stack with a Kconfig variable
Date: Tue, 11 Jun 2019 09:49:46 +0000	[thread overview]
Message-ID: <09e6ae8e-0495-4af0-acec-91a0b87a8493@arm.com> (raw)
In-Reply-To: <20190610212015.9157-6-hch@lst.de>

On 6/10/19 10:20 PM, Christoph Hellwig wrote:
> This will eventually allow us to kill the need for an <asm/flat.h> for
> many cases.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> ---
>  arch/arm/Kconfig                   | 1 +
>  arch/arm/include/asm/flat.h        | 2 --
>  arch/c6x/include/asm/flat.h        | 1 -
>  arch/h8300/Kconfig                 | 1 +
>  arch/h8300/include/asm/flat.h      | 2 --
>  arch/m68k/Kconfig                  | 1 +
>  arch/m68k/include/asm/flat.h       | 1 -
>  arch/microblaze/include/asm/flat.h | 2 --
>  arch/sh/include/asm/flat.h         | 1 -
>  arch/xtensa/include/asm/flat.h     | 1 -
>  fs/Kconfig.binfmt                  | 3 +++
>  fs/binfmt_flat.c                   | 5 +++--
>  12 files changed, 9 insertions(+), 12 deletions(-)
>

For ARM bits:

Tested-by: Vladimir Murzin <vladimir.murzin@arm.com>
Reviewed-by: Vladimir Murzin <vladimir.murzin@arm.com>


> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 8869742a85df..b1b48c0bde76 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -30,6 +30,7 @@ config ARM
>  select ARCH_USE_BUILTIN_BSWAP
>  select ARCH_USE_CMPXCHG_LOCKREF
>  select ARCH_WANT_IPC_PARSE_VERSION
> +select BINFMT_FLAT_ARGVP_ENVP_ON_STACK
>  select BUILDTIME_EXTABLE_SORT if MMU
>  select CLONE_BACKWARDS
>  select CPU_PM if SUSPEND || CPU_IDLE
> diff --git a/arch/arm/include/asm/flat.h b/arch/arm/include/asm/flat.h
> index acf162111ee2..bbc27901446f 100644
> --- a/arch/arm/include/asm/flat.h
> +++ b/arch/arm/include/asm/flat.h
> @@ -8,8 +8,6 @@
>
>  #include <linux/uaccess.h>
>
> -#defineflat_argvp_envp_on_stack()1
> -
>  static inline int flat_get_addr_from_rp(u32 __user *rp, u32 relval, u32 flags,
>  u32 *addr, u32 *persistent)
>  {
> diff --git a/arch/c6x/include/asm/flat.h b/arch/c6x/include/asm/flat.h
> index 353e4d06e8c0..2d57a9204d21 100644
> --- a/arch/c6x/include/asm/flat.h
> +++ b/arch/c6x/include/asm/flat.h
> @@ -4,7 +4,6 @@
>
>  #include <asm/unaligned.h>
>
> -#define flat_argvp_envp_on_stack()0
>  static inline int flat_get_addr_from_rp(u32 __user *rp, u32 relval, u32 flags,
>  u32 *addr, u32 *persistent)
>  {
> diff --git a/arch/h8300/Kconfig b/arch/h8300/Kconfig
> index d30e8727b02d..7457f190caaa 100644
> --- a/arch/h8300/Kconfig
> +++ b/arch/h8300/Kconfig
> @@ -2,6 +2,7 @@
>  config H8300
>          def_bool y
>  select ARCH_32BIT_OFF_T
> +select BINFMT_FLAT_ARGVP_ENVP_ON_STACK
>  select BINFMT_FLAT_OLD_ALWAYS_RAM
>  select GENERIC_ATOMIC64
>  select HAVE_UID16
> diff --git a/arch/h8300/include/asm/flat.h b/arch/h8300/include/asm/flat.h
> index 14cc928d5478..4683146f0e9e 100644
> --- a/arch/h8300/include/asm/flat.h
> +++ b/arch/h8300/include/asm/flat.h
> @@ -8,8 +8,6 @@
>
>  #include <asm/unaligned.h>
>
> -#defineflat_argvp_envp_on_stack()1
> -
>  /*
>   * on the H8 a couple of the relocations have an instruction in the
>   * top byte.  As there can only be 24bits of address space,  we just
> diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
> index 218e037ef901..fd69ee5ad6ab 100644
> --- a/arch/m68k/Kconfig
> +++ b/arch/m68k/Kconfig
> @@ -7,6 +7,7 @@ config M68K
>  select ARCH_MIGHT_HAVE_PC_PARPORT if ISA
>  select ARCH_NO_COHERENT_DMA_MMAP if !MMU
>  select ARCH_NO_PREEMPT if !COLDFIRE
> +select BINFMT_FLAT_ARGVP_ENVP_ON_STACK
>  select HAVE_IDE
>  select HAVE_AOUT if MMU
>  select HAVE_DEBUG_BUGVERBOSE
> diff --git a/arch/m68k/include/asm/flat.h b/arch/m68k/include/asm/flat.h
> index 7b1fb5c2809e..d7102fcd43eb 100644
> --- a/arch/m68k/include/asm/flat.h
> +++ b/arch/m68k/include/asm/flat.h
> @@ -8,7 +8,6 @@
>
>  #include <linux/uaccess.h>
>
> -#defineflat_argvp_envp_on_stack()1
>  static inline int flat_get_addr_from_rp(u32 __user *rp, u32 relval, u32 flags,
>  u32 *addr, u32 *persistent)
>  {
> diff --git a/arch/microblaze/include/asm/flat.h b/arch/microblaze/include/asm/flat.h
> index 1cd8d7f4cf12..9e3d8e01d294 100644
> --- a/arch/microblaze/include/asm/flat.h
> +++ b/arch/microblaze/include/asm/flat.h
> @@ -13,8 +13,6 @@
>
>  #include <asm/unaligned.h>
>
> -#defineflat_argvp_envp_on_stack()0
> -
>  /*
>   * Microblaze works a little differently from other arches, because
>   * of the MICROBLAZE_64 reloc type. Here, a 32 bit address is split
> diff --git a/arch/sh/include/asm/flat.h b/arch/sh/include/asm/flat.h
> index 015678d7b771..1002343dd84a 100644
> --- a/arch/sh/include/asm/flat.h
> +++ b/arch/sh/include/asm/flat.h
> @@ -11,7 +11,6 @@
>
>  #include <asm/unaligned.h>
>
> -#defineflat_argvp_envp_on_stack()0
>  static inline int flat_get_addr_from_rp(u32 __user *rp, u32 relval, u32 flags,
>  u32 *addr, u32 *persistent)
>  {
> diff --git a/arch/xtensa/include/asm/flat.h b/arch/xtensa/include/asm/flat.h
> index b215c1e66958..3d357371b28b 100644
> --- a/arch/xtensa/include/asm/flat.h
> +++ b/arch/xtensa/include/asm/flat.h
> @@ -4,7 +4,6 @@
>
>  #include <asm/unaligned.h>
>
> -#define flat_argvp_envp_on_stack()0
>  static inline int flat_get_addr_from_rp(u32 __user *rp, u32 relval, u32 flags,
>  u32 *addr, u32 *persistent)
>  {
> diff --git a/fs/Kconfig.binfmt b/fs/Kconfig.binfmt
> index 5658e12ad944..82f7d7f234f3 100644
> --- a/fs/Kconfig.binfmt
> +++ b/fs/Kconfig.binfmt
> @@ -97,6 +97,9 @@ config BINFMT_FLAT
>  help
>    Support uClinux FLAT format binaries.
>
> +config BINFMT_FLAT_ARGVP_ENVP_ON_STACK
> +bool
> +
>  config BINFMT_FLAT_OLD_ALWAYS_RAM
>  bool
>
> diff --git a/fs/binfmt_flat.c b/fs/binfmt_flat.c
> index 18d82fd5f57c..c09651087eda 100644
> --- a/fs/binfmt_flat.c
> +++ b/fs/binfmt_flat.c
> @@ -124,14 +124,15 @@ static int create_flat_tables(struct linux_binprm *bprm, unsigned long arg_start
>
>  sp -= bprm->envc + 1;
>  sp -= bprm->argc + 1;
> -sp -= flat_argvp_envp_on_stack() ? 2 : 0;
> +if (IS_ENABLED(CONFIG_BINFMT_FLAT_ARGVP_ENVP_ON_STACK))
> +sp -= 2; /* argvp + envp */
>  sp -= 1;  /* &argc */
>
>  current->mm->start_stack = (unsigned long)sp & -FLAT_STACK_ALIGN;
>  sp = (unsigned long __user *)current->mm->start_stack;
>
>  __put_user(bprm->argc, sp++);
> -if (flat_argvp_envp_on_stack()) {
> +if (IS_ENABLED(CONFIG_BINFMT_FLAT_ARGVP_ENVP_ON_STACK)) {
>  unsigned long argv, envp;
>  argv = (unsigned long)(sp + 2);
>  envp = (unsigned long)(sp + 2 + bprm->argc + 1);
>

IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

WARNING: multiple messages have this Message-ID (diff)
From: Vladimir Murzin <Vladimir.Murzin@arm.com>
To: Christoph Hellwig <hch@lst.de>, Greg Ungerer <gerg@linux-m68k.org>
Cc: "uclinux-h8-devel@lists.sourceforge.jp"
	<uclinux-h8-devel@lists.sourceforge.jp>,
	"linux-xtensa@linux-xtensa.org" <linux-xtensa@linux-xtensa.org>,
	Michal Simek <monstr@monstr.eu>,
	"linux-c6x-dev@linux-c6x.org" <linux-c6x-dev@linux-c6x.org>,
	"linux-sh@vger.kernel.org" <linux-sh@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-m68k@lists.linux-m68k.org"
	<linux-m68k@lists.linux-m68k.org>,
	"linux-riscv@lists.infradead.org"
	<linux-riscv@lists.infradead.org>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH 05/15] binfmt_flat: replace flat_argvp_envp_on_stack with a Kconfig variable
Date: Tue, 11 Jun 2019 09:49:46 +0000	[thread overview]
Message-ID: <09e6ae8e-0495-4af0-acec-91a0b87a8493@arm.com> (raw)
In-Reply-To: <20190610212015.9157-6-hch@lst.de>

On 6/10/19 10:20 PM, Christoph Hellwig wrote:
> This will eventually allow us to kill the need for an <asm/flat.h> for
> many cases.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> ---
>  arch/arm/Kconfig                   | 1 +
>  arch/arm/include/asm/flat.h        | 2 --
>  arch/c6x/include/asm/flat.h        | 1 -
>  arch/h8300/Kconfig                 | 1 +
>  arch/h8300/include/asm/flat.h      | 2 --
>  arch/m68k/Kconfig                  | 1 +
>  arch/m68k/include/asm/flat.h       | 1 -
>  arch/microblaze/include/asm/flat.h | 2 --
>  arch/sh/include/asm/flat.h         | 1 -
>  arch/xtensa/include/asm/flat.h     | 1 -
>  fs/Kconfig.binfmt                  | 3 +++
>  fs/binfmt_flat.c                   | 5 +++--
>  12 files changed, 9 insertions(+), 12 deletions(-)
>

For ARM bits:

Tested-by: Vladimir Murzin <vladimir.murzin@arm.com>
Reviewed-by: Vladimir Murzin <vladimir.murzin@arm.com>


> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 8869742a85df..b1b48c0bde76 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -30,6 +30,7 @@ config ARM
>  select ARCH_USE_BUILTIN_BSWAP
>  select ARCH_USE_CMPXCHG_LOCKREF
>  select ARCH_WANT_IPC_PARSE_VERSION
> +select BINFMT_FLAT_ARGVP_ENVP_ON_STACK
>  select BUILDTIME_EXTABLE_SORT if MMU
>  select CLONE_BACKWARDS
>  select CPU_PM if SUSPEND || CPU_IDLE
> diff --git a/arch/arm/include/asm/flat.h b/arch/arm/include/asm/flat.h
> index acf162111ee2..bbc27901446f 100644
> --- a/arch/arm/include/asm/flat.h
> +++ b/arch/arm/include/asm/flat.h
> @@ -8,8 +8,6 @@
>
>  #include <linux/uaccess.h>
>
> -#defineflat_argvp_envp_on_stack()1
> -
>  static inline int flat_get_addr_from_rp(u32 __user *rp, u32 relval, u32 flags,
>  u32 *addr, u32 *persistent)
>  {
> diff --git a/arch/c6x/include/asm/flat.h b/arch/c6x/include/asm/flat.h
> index 353e4d06e8c0..2d57a9204d21 100644
> --- a/arch/c6x/include/asm/flat.h
> +++ b/arch/c6x/include/asm/flat.h
> @@ -4,7 +4,6 @@
>
>  #include <asm/unaligned.h>
>
> -#define flat_argvp_envp_on_stack()0
>  static inline int flat_get_addr_from_rp(u32 __user *rp, u32 relval, u32 flags,
>  u32 *addr, u32 *persistent)
>  {
> diff --git a/arch/h8300/Kconfig b/arch/h8300/Kconfig
> index d30e8727b02d..7457f190caaa 100644
> --- a/arch/h8300/Kconfig
> +++ b/arch/h8300/Kconfig
> @@ -2,6 +2,7 @@
>  config H8300
>          def_bool y
>  select ARCH_32BIT_OFF_T
> +select BINFMT_FLAT_ARGVP_ENVP_ON_STACK
>  select BINFMT_FLAT_OLD_ALWAYS_RAM
>  select GENERIC_ATOMIC64
>  select HAVE_UID16
> diff --git a/arch/h8300/include/asm/flat.h b/arch/h8300/include/asm/flat.h
> index 14cc928d5478..4683146f0e9e 100644
> --- a/arch/h8300/include/asm/flat.h
> +++ b/arch/h8300/include/asm/flat.h
> @@ -8,8 +8,6 @@
>
>  #include <asm/unaligned.h>
>
> -#defineflat_argvp_envp_on_stack()1
> -
>  /*
>   * on the H8 a couple of the relocations have an instruction in the
>   * top byte.  As there can only be 24bits of address space,  we just
> diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
> index 218e037ef901..fd69ee5ad6ab 100644
> --- a/arch/m68k/Kconfig
> +++ b/arch/m68k/Kconfig
> @@ -7,6 +7,7 @@ config M68K
>  select ARCH_MIGHT_HAVE_PC_PARPORT if ISA
>  select ARCH_NO_COHERENT_DMA_MMAP if !MMU
>  select ARCH_NO_PREEMPT if !COLDFIRE
> +select BINFMT_FLAT_ARGVP_ENVP_ON_STACK
>  select HAVE_IDE
>  select HAVE_AOUT if MMU
>  select HAVE_DEBUG_BUGVERBOSE
> diff --git a/arch/m68k/include/asm/flat.h b/arch/m68k/include/asm/flat.h
> index 7b1fb5c2809e..d7102fcd43eb 100644
> --- a/arch/m68k/include/asm/flat.h
> +++ b/arch/m68k/include/asm/flat.h
> @@ -8,7 +8,6 @@
>
>  #include <linux/uaccess.h>
>
> -#defineflat_argvp_envp_on_stack()1
>  static inline int flat_get_addr_from_rp(u32 __user *rp, u32 relval, u32 flags,
>  u32 *addr, u32 *persistent)
>  {
> diff --git a/arch/microblaze/include/asm/flat.h b/arch/microblaze/include/asm/flat.h
> index 1cd8d7f4cf12..9e3d8e01d294 100644
> --- a/arch/microblaze/include/asm/flat.h
> +++ b/arch/microblaze/include/asm/flat.h
> @@ -13,8 +13,6 @@
>
>  #include <asm/unaligned.h>
>
> -#defineflat_argvp_envp_on_stack()0
> -
>  /*
>   * Microblaze works a little differently from other arches, because
>   * of the MICROBLAZE_64 reloc type. Here, a 32 bit address is split
> diff --git a/arch/sh/include/asm/flat.h b/arch/sh/include/asm/flat.h
> index 015678d7b771..1002343dd84a 100644
> --- a/arch/sh/include/asm/flat.h
> +++ b/arch/sh/include/asm/flat.h
> @@ -11,7 +11,6 @@
>
>  #include <asm/unaligned.h>
>
> -#defineflat_argvp_envp_on_stack()0
>  static inline int flat_get_addr_from_rp(u32 __user *rp, u32 relval, u32 flags,
>  u32 *addr, u32 *persistent)
>  {
> diff --git a/arch/xtensa/include/asm/flat.h b/arch/xtensa/include/asm/flat.h
> index b215c1e66958..3d357371b28b 100644
> --- a/arch/xtensa/include/asm/flat.h
> +++ b/arch/xtensa/include/asm/flat.h
> @@ -4,7 +4,6 @@
>
>  #include <asm/unaligned.h>
>
> -#define flat_argvp_envp_on_stack()0
>  static inline int flat_get_addr_from_rp(u32 __user *rp, u32 relval, u32 flags,
>  u32 *addr, u32 *persistent)
>  {
> diff --git a/fs/Kconfig.binfmt b/fs/Kconfig.binfmt
> index 5658e12ad944..82f7d7f234f3 100644
> --- a/fs/Kconfig.binfmt
> +++ b/fs/Kconfig.binfmt
> @@ -97,6 +97,9 @@ config BINFMT_FLAT
>  help
>    Support uClinux FLAT format binaries.
>
> +config BINFMT_FLAT_ARGVP_ENVP_ON_STACK
> +bool
> +
>  config BINFMT_FLAT_OLD_ALWAYS_RAM
>  bool
>
> diff --git a/fs/binfmt_flat.c b/fs/binfmt_flat.c
> index 18d82fd5f57c..c09651087eda 100644
> --- a/fs/binfmt_flat.c
> +++ b/fs/binfmt_flat.c
> @@ -124,14 +124,15 @@ static int create_flat_tables(struct linux_binprm *bprm, unsigned long arg_start
>
>  sp -= bprm->envc + 1;
>  sp -= bprm->argc + 1;
> -sp -= flat_argvp_envp_on_stack() ? 2 : 0;
> +if (IS_ENABLED(CONFIG_BINFMT_FLAT_ARGVP_ENVP_ON_STACK))
> +sp -= 2; /* argvp + envp */
>  sp -= 1;  /* &argc */
>
>  current->mm->start_stack = (unsigned long)sp & -FLAT_STACK_ALIGN;
>  sp = (unsigned long __user *)current->mm->start_stack;
>
>  __put_user(bprm->argc, sp++);
> -if (flat_argvp_envp_on_stack()) {
> +if (IS_ENABLED(CONFIG_BINFMT_FLAT_ARGVP_ENVP_ON_STACK)) {
>  unsigned long argv, envp;
>  argv = (unsigned long)(sp + 2);
>  envp = (unsigned long)(sp + 2 + bprm->argc + 1);
>

IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2019-06-11  9:49 UTC|newest]

Thread overview: 152+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-10 21:20 binfmt_flat cleanups and RISC-V support Christoph Hellwig
2019-06-10 21:20 ` Christoph Hellwig
2019-06-10 21:20 ` Christoph Hellwig
2019-06-10 21:20 ` Christoph Hellwig
2019-06-10 21:20 ` [PATCH 01/15] binfmt_flat: remove flat_reloc_valid Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-11  9:44   ` Vladimir Murzin
2019-06-11  9:44     ` Vladimir Murzin
2019-06-11  9:44     ` Vladimir Murzin
2019-06-11  9:44     ` Vladimir Murzin
2019-06-10 21:20 ` [PATCH 02/15] binfmt_flat: remove flat_set_persistent Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-11  9:45   ` Vladimir Murzin
2019-06-11  9:45     ` Vladimir Murzin
2019-06-11  9:45     ` Vladimir Murzin
2019-06-11  9:45     ` Vladimir Murzin
2019-06-10 21:20 ` [PATCH 03/15] binfmt_flat: provide a default version of flat_get_relocate_addr Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-11  9:46   ` Vladimir Murzin
2019-06-11  9:46     ` Vladimir Murzin
2019-06-11  9:46     ` Vladimir Murzin
2019-06-11  9:46     ` Vladimir Murzin
2019-06-10 21:20 ` [PATCH 04/15] binfmt_flat: remove flat_old_ram_flag Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-11  6:04   ` Greg Ungerer
2019-06-11  6:04     ` Greg Ungerer
2019-06-11  6:04     ` Greg Ungerer
2019-06-11  6:04     ` Greg Ungerer
2019-06-11  7:36     ` Christoph Hellwig
2019-06-11  7:36       ` Christoph Hellwig
2019-06-11  7:36       ` Christoph Hellwig
2019-06-11  7:36       ` Christoph Hellwig
2019-06-11 13:07       ` Greg Ungerer
2019-06-11 13:07         ` Greg Ungerer
2019-06-11 13:07         ` Greg Ungerer
2019-06-11 13:07         ` Greg Ungerer
2019-06-11  9:47   ` Vladimir Murzin
2019-06-11  9:47     ` Vladimir Murzin
2019-06-11  9:47     ` Vladimir Murzin
2019-06-11  9:47     ` Vladimir Murzin
2019-06-10 21:20 ` [PATCH 05/15] binfmt_flat: replace flat_argvp_envp_on_stack with a Kconfig variable Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-11  9:49   ` Vladimir Murzin [this message]
2019-06-11  9:49     ` Vladimir Murzin
2019-06-11  9:49     ` Vladimir Murzin
2019-06-11  9:49     ` Vladimir Murzin
2019-06-10 21:20 ` [PATCH 06/15] binfmt_flat: remove the uapi <linux/flat.h> header Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-11  9:51   ` Vladimir Murzin
2019-06-11  9:51     ` Vladimir Murzin
2019-06-11  9:51     ` Vladimir Murzin
2019-06-11  9:51     ` Vladimir Murzin
2019-06-10 21:20 ` [PATCH 07/15] binfmt_flat: use __be32 for the on-disk format Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-11  8:25   ` Geert Uytterhoeven
2019-06-11  8:25     ` Geert Uytterhoeven
2019-06-11  8:25     ` Geert Uytterhoeven
2019-06-11  8:25     ` Geert Uytterhoeven
2019-06-11  9:57   ` Vladimir Murzin
2019-06-11  9:57     ` Vladimir Murzin
2019-06-11  9:57     ` Vladimir Murzin
2019-06-11  9:57     ` Vladimir Murzin
2019-06-10 21:20 ` [PATCH 08/15] binfmt_flat: add endianess annotations Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-11  9:58   ` Vladimir Murzin
2019-06-11  9:58     ` Vladimir Murzin
2019-06-11  9:58     ` Vladimir Murzin
2019-06-11  9:58     ` Vladimir Murzin
2019-06-10 21:20 ` [PATCH 09/15] binfmt_flat: add a ARCH_HAS_BINFMT_FLAT option Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-11  9:59   ` Vladimir Murzin
2019-06-11  9:59     ` Vladimir Murzin
2019-06-11  9:59     ` Vladimir Murzin
2019-06-11  9:59     ` Vladimir Murzin
2019-06-10 21:20 ` [PATCH 10/15] binfmt_flat: make support for old format binaries optional Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20 ` [PATCH 11/15] binfmt_flat: provide an asm-generic/flat.h Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-11 10:01   ` Vladimir Murzin
2019-06-11 10:01     ` Vladimir Murzin
2019-06-11 10:01     ` Vladimir Murzin
2019-06-11 10:01     ` Vladimir Murzin
2019-06-10 21:20 ` [PATCH 12/15] binfmt_flat: remove the persistent argument from flat_get_addr_from_rp Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20 ` [PATCH 13/15] binfmt_flat: move the MAX_SHARED_LIBS definition to binfmt_flat.c Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20 ` [PATCH 14/15] binfmt_flat: don't offset the data start Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20 ` [PATCH 15/15] riscv: add binfmt_flat support Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-10 21:20   ` Christoph Hellwig
2019-06-11  8:16   ` Vladimir Murzin
2019-06-11  8:16     ` Vladimir Murzin
2019-06-11  8:16     ` Vladimir Murzin
2019-06-11  8:16     ` Vladimir Murzin
2019-06-11  9:20     ` Christoph Hellwig
2019-06-11  9:20       ` Christoph Hellwig
2019-06-11  9:20       ` Christoph Hellwig
2019-06-11  9:20       ` Christoph Hellwig
2019-06-11  6:51 ` binfmt_flat cleanups and RISC-V support Greg Ungerer
2019-06-11  6:51   ` Greg Ungerer
2019-06-11  6:51   ` Greg Ungerer
2019-06-11  6:51   ` Greg Ungerer
2019-06-11  7:38   ` Christoph Hellwig
2019-06-11  7:38     ` Christoph Hellwig
2019-06-11  7:38     ` Christoph Hellwig
2019-06-11  7:38     ` Christoph Hellwig
2019-06-11 13:02     ` Greg Ungerer
2019-06-11 13:02       ` Greg Ungerer
2019-06-11 13:02       ` Greg Ungerer
2019-06-11 13:02       ` Greg Ungerer
2019-06-11  8:05 ` Vladimir Murzin
2019-06-11  8:05   ` Vladimir Murzin
2019-06-11  8:05   ` Vladimir Murzin
2019-06-11  8:05   ` Vladimir Murzin
2019-06-11  8:11   ` Christoph Hellwig
2019-06-11  8:11     ` Christoph Hellwig
2019-06-11  8:11     ` Christoph Hellwig
2019-06-11  8:11     ` Christoph Hellwig
2019-06-11 10:08     ` Vladimir Murzin
2019-06-11 10:08       ` Vladimir Murzin
2019-06-11 10:08       ` Vladimir Murzin
2019-06-11 10:08       ` Vladimir Murzin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=09e6ae8e-0495-4af0-acec-91a0b87a8493@arm.com \
    --to=vladimir.murzin@arm.com \
    --cc=gerg@linux-m68k.org \
    --cc=hch@lst.de \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-c6x-dev@linux-c6x.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-m68k@lists.linux-m68k.org \
    --cc=linux-riscv@lists.infradead.org \
    --cc=linux-sh@vger.kernel.org \
    --cc=linux-xtensa@linux-xtensa.org \
    --cc=monstr@monstr.eu \
    --cc=uclinux-h8-devel@lists.sourceforge.jp \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.