[ruby-core:123209] [Ruby Bug#21569] [armv7, musl] SIGBUS in ibf_load_object_float due to unaligned VFP double load when reading IBF
From:
"amacxz (Aleksey Maximov) via ruby-core" <ruby-core@...>
Date:
2025-09-10 17:20:32 UTC
List:
ruby-core #123209
SXNzdWUgIzIxNTY5IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGFtYWN4eiAoQWxla3NleSBNYXhpbW92 KS4NCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KQnVnICMyMTU2 OTogW2FybXY3LCBtdXNsXSBTSUdCVVMgaW4gaWJmX2xvYWRfb2JqZWN0X2Zsb2F0IGR1ZSB0byB1 bmFsaWduZWQgVkZQIGRvdWJsZSBsb2FkIHdoZW4gcmVhZGluZyBJQkYNCmh0dHBzOi8vYnVncy5y dWJ5LWxhbmcub3JnL2lzc3Vlcy8yMTU2OQ0KDQoqIEF1dGhvcjogYW1hY3h6IChBbGVrc2V5IE1h eGltb3YpDQoqIFN0YXR1czogT3Blbg0KKiBydWJ5IC12OiBydWJ5IDMuMy44ICgyMDI1LTA0LTA5 IHJldmlzaW9uIGIyMDBiYWQ2Y2QpIFthcm12N2EtbGludXgtbXVzbGVhYmloZl0NCiogQmFja3Bv cnQ6IDMuMjogVU5LTk9XTiwgMy4zOiBVTktOT1dOLCAzLjQ6IFVOS05PV04NCi0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCkVudmlyb25tZW50Og0KICBDUFU6IEFSTXY3 LUEgKE5WSURJQSBUZWdyYSAyKSwgVkZQdjMtRDE2LCBubyBORU9ODQogIE9TL2xpYmM6IExpbnV4 LCBtdXNsIChsZC1tdXNsLWFybWhmLnNvLjEpDQogIENvbXBpbGVyOiBHQ0MgMTQuMy4wDQogIFJ1 Ynk6IDMuMy44IChidWlsdCBmcm9tIHNvdXJjZSB2aWEgR2VudG9vIGVidWlsZCkNCiAgQ0ZMQUdT IGFjdHVhbGx5IHVzZWQgYnkgc3lzdGVtOiAiLU9zIC1waXBlIC1tYXJjaD1hcm12Ny1hIC1tZnB1 PXZmcHYzLWQxNiAtbWZsb2F0LWFiaT1oYXJkIg0KDQoNCkR1cmluZyBtYWtlIGluc3RhbGwgKG9y IEdlbnRvb+KAmXMgZWJ1aWxkIGluc3RhbGwgcGhhc2UpIFJ1YnkgcnVuczoNCmBgYCBzaGVsbA0K Li9taW5pcnVieSAtSS4vbGliIC1JLiAtSS5leHQvY29tbW9uIC4vdG9vbC9ydW5ydWJ5LnJiIC0t ZXh0b3V0PS5leHQgLS0gXA0KICAtLWRpc2FibGUtZ2VtcyAtci4vYXJtdjdhLWxpbnV4LW11c2xl YWJpaGYtZmFrZSAuL3Rvb2wvcmJpbnN0YWxsLnJiIFwNCiAgLS1tYWtlPW1ha2UgLS1kZXN0LWRp cj0iJEQiIC0tZXh0b3V0PS5leHQgLS1leHQtYnVpbGQtZGlyPS4vZXh0IFwNCiAgLS1tZmxhZ3M9 Ii1qMSIgLS1tYWtlLWZsYWdzPSIgVj0xIiAtLWdudW1ha2UgLS1pbnN0YWxsPWFsbCAtLWV4Y2x1 ZGU9ZG9jDQoNCmBgYA0KVGhpcyByZWxpYWJseSB0cmlnZ2VycyBhIFNJR0JVUyBvbiBhcm12NyBo YXJkLWZsb2F0Lg0KDQpPYnNlcnZlZCBjcmFzaDoNCg0KYGBgDQpUaHJlYWQgInJ1YnkzMyIgcmVj ZWl2ZWQgc2lnbmFsIFNJR0JVUyAoQnVzIGVycm9yKS4NCiMwICBpYmZfbG9hZF9vYmplY3RfZmxv YXQgKCkgZnJvbSBsaWJydWJ5MzMuc28uMy4zDQooZ2RiKSBidA0KIzAgIGliZl9sb2FkX29iamVj dF9mbG9hdA0KIzEgIGliZl9sb2FkX29iamVjdA0KIzIgIHJiX2liZl9sb2FkX2lzZXFfY29tcGxl dGUNCiMzICBpYmZfbG9hZF9pc2VxDQojNCAgLi4uDQooZ2RiKSBpbmZvIHJlZw0KcjAgPSAweGI2 ZjUwOGI2ICAobm90IDgtYnl0ZSBhbGlnbmVkKQ0KcGMgPSAweGI2Y2FjZjc4IDxpYmZfbG9hZF9v YmplY3RfZmxvYXQrMzI+DQooZ2RiKSB4LzZpICRwYy04DQogICAuLi4NCiAgIDB4YjZjYWNmNzQ6 IHZsZHIgZDAsIFtyMF0gICA8LS0gVkZQIGRvdWJsZSBsb2FkIGZyb20gdW5hbGlnbmVkIGFkZHIg 4oaSIFNJR0JVUw0KDQpgYGANCg0KUm9vdCBjYXVzZQ0KSW4gY29tcGlsZS5jOg0KDQpgYGAgYw0K c3RhdGljIFZBTFVFDQppYmZfbG9hZF9vYmplY3RfZmxvYXQoY29uc3Qgc3RydWN0IGliZl9sb2Fk ICpsb2FkLCBjb25zdCBzdHJ1Y3QgaWJmX29iamVjdF9oZWFkZXIgKmhlYWRlciwgaWJmX29mZnNl dF90IG9mZnNldCkNCnsNCiAgICBjb25zdCBkb3VibGUgKmRibHAgPSBJQkZfT0JKQk9EWShkb3Vi bGUsIG9mZnNldCk7DQogICAgcmV0dXJuIERCTDJOVU0oKmRibHApOw0KfQ0KDQpgYGANCg0KSUJG X09CSkJPRFkoZG91YmxlLCAuLi4pIG1heSByZXR1cm4gYW4gdW5hbGlnbmVkIHBvaW50ZXIuIE9u IEFSTXY3LCBWRlAgdmxkciB3aXRoIGFuIHVuYWxpZ25lZCBkb3VibGUgYWRkcmVzcyByYWlzZXMg U0lHQlVTIChubyBrZXJuZWwgZml4dXApLiBIZW5jZSB0aGUgY3Jhc2ggd2hpbGUgbG9hZGluZyBJ QkYuDQoNClByb3Bvc2VkIGZpeA0KUmVhZCBpbnRvIGFuIGFsaWduZWQgbG9jYWwgd2l0aCBtZW1j cHk6DQoNCmBgYA0KLS0tIGEvY29tcGlsZS5jDQorKysgYi9jb21waWxlLmMNCkBAIC0xMjkyMSwx MCArMTI5MjEsMTIgQEAgc3RhdGljIFZBTFVFDQogaWJmX2xvYWRfb2JqZWN0X2Zsb2F0KGNvbnN0 IHN0cnVjdCBpYmZfbG9hZCAqbG9hZCwgY29uc3Qgc3RydWN0IGliZl9vYmplY3RfaGVhZGVyICpo ZWFkZXIsIGliZl9vZmZzZXRfdCBvZmZzZXQpDQogew0KLSAgICBjb25zdCBkb3VibGUgKmRibHAg PSBJQkZfT0JKQk9EWShkb3VibGUsIG9mZnNldCk7DQotICAgIHJldHVybiBEQkwyTlVNKCpkYmxw KTsNCisgICAgLyogSUJGIGJ1ZmZlciBtYXkgYmUgdW5hbGlnbmVkIG9uIHNvbWUgcGxhdGZvcm1z LiBPbiBBUk12NywgYSBWRlANCisgICAgICogZG91YmxlIGxvYWQgZnJvbSBhbiB1bmFsaWduZWQg YWRkcmVzcyBjYXVzZXMgU0lHQlVTLiAqLw0KKyAgICBkb3VibGUgZDsNCisgICAgbWVtY3B5KCZk LCBJQkZfT0JKQk9EWSh2b2lkLCBvZmZzZXQpLCBzaXplb2YoZCkpOw0KKyAgICByZXR1cm4gREJM Mk5VTShkKTsNCiB9DQoNCmBgYA0KDQpOb3RlczoNClRoZSBpc3N1ZSByZXByb2R1Y2VzIGNvbnNp c3RlbnRseSBvbiBUZWdyYTIgKGFybXY3YSwgdmZwdjMtZDE2LCBubyBORU9OKSB3aXRoIG11c2ws IGJ1dCAoSU1PKSBjb25jZXB0dWFsbHkgYXBwbGllcyB0byBhbnkgc3RyaWN0LWFsaWdubWVudCBB Uk12NyBwbGF0Zm9ybS4NCkEgc2ltaWxhciBhdWRpdCBtYXkgYmUgcmVxdWlyZWQgZm9yIG90aGVy IElCRiBsb2FkZXJzIHJlYWRpbmcgOC1ieXRlIHR5cGVzLg0KUGxlYXNlIHJldmlldyBhbmQgbWVy Z2UgdGhlIGZpeCAob3IgaW1wbGVtZW50IGFuIGVxdWl2YWxlbnQgYWxpZ25tZW50LXNhZmUgcmVh ZCBmb3IgSUJGIGZsb2F0cykuIA0KSSBjYW4gdGVzdCBhbnkgcHJvcG9zZWQgcGF0Y2ggb24gdGhp cyBoYXJkd2FyZS4NCg0KDQoNCg0KLS0gDQpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy8NCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KIHJ1YnktY29yZSBt YWlsaW5nIGxpc3QgLS0gcnVieS1jb3JlQG1sLnJ1YnktbGFuZy5vcmcKIFRvIHVuc3Vic2NyaWJl IHNlbmQgYW4gZW1haWwgdG8gcnVieS1jb3JlLWxlYXZlQG1sLnJ1YnktbGFuZy5vcmcKIHJ1Ynkt Y29yZSBpbmZvIC0tIGh0dHBzOi8vbWwucnVieS1sYW5nLm9yZy9tYWlsbWFuMy9saXN0cy9ydWJ5 LWNvcmUubWwucnVieS1sYW5nLm9yZy8K