From nobody Sat Jan 04 18:23:59 2025 X-Original-To: freebsd-hackers@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4YQTPC715Zz5j7WP for ; Sat, 04 Jan 2025 18:24:31 +0000 (UTC) (envelope-from karl@denninger.net) Received: from colo1.denninger.net (colo1.denninger.net [104.236.120.189]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4YQTPC1Lbhz42DY for ; Sat, 4 Jan 2025 18:24:31 +0000 (UTC) (envelope-from karl@denninger.net) Authentication-Results: mx1.freebsd.org; dkim=none; spf=pass (mx1.freebsd.org: domain of karl@denninger.net designates 104.236.120.189 as permitted sender) smtp.mailfrom=karl@denninger.net; dmarc=pass (policy=none) header.from=denninger.net Received: from denninger.net (syn-071-015-252-132.res.spectrum.com [71.15.252.132]) by colo1.denninger.net (Postfix) with ESMTP id 4ABB22110FC for ; Sat, 04 Jan 2025 13:24:02 -0500 (EST) Received: from [192.168.10.23] (D13.Denninger.Net [192.168.10.23]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by denninger.net (Postfix) with ESMTPSA id 0292136E066 for ; Sat, 04 Jan 2025 13:23:59 -0500 (EST) Message-ID: <75390320-6eab-45df-977a-5da00586c7f6@denninger.net> Date: Sat, 4 Jan 2025 13:23:59 -0500 List-Id: Technical discussions relating to FreeBSD List-Archive: https://lists.freebsd.org/archives/freebsd-hackers List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-hackers@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: curious crashes when under memory pressure To: freebsd-hackers@freebsd.org References: <9e71d8eb-74c3-4bcb-89b1-90d4f9746168@quip.cz> <33db3282-25c4-42fb-8d97-1918d52fa9e2@denninger.net> <4094b79b-c54a-4953-b693-1b4e8387cf9f@freebsd.org> Content-Language: en-US From: Karl Denninger In-Reply-To: <4094b79b-c54a-4953-b693-1b4e8387cf9f@freebsd.org> Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-512; boundary="------------ms040306030109020400030608" X-Rspamd-Queue-Id: 4YQTPC1Lbhz42DY X-Spamd-Bar: ----- X-Spamd-Result: default: False [-5.79 / 15.00]; SIGNED_SMIME(-2.00)[]; NEURAL_HAM_SHORT(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; DMARC_POLICY_ALLOW(-0.50)[denninger.net,none]; R_SPF_ALLOW(-0.20)[+mx:c]; MIME_GOOD(-0.20)[multipart/signed,multipart/alternative,text/plain]; MIME_BASE64_TEXT(0.10)[]; XM_UA_NO_VERSION(0.01)[]; HAS_ATTACHMENT(0.00)[]; RCVD_TLS_LAST(0.00)[]; RCPT_COUNT_ONE(0.00)[1]; TO_MATCH_ENVRCPT_ALL(0.00)[]; ARC_NA(0.00)[]; FREEFALL_USER(0.00)[karl]; RCVD_VIA_SMTP_AUTH(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:+,3:~,4:~]; TO_DN_NONE(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; FROM_EQ_ENVFROM(0.00)[]; ASN(0.00)[asn:14061, ipnet:104.236.64.0/18, country:US]; PREVIOUSLY_DELIVERED(0.00)[freebsd-hackers@freebsd.org]; R_DKIM_NA(0.00)[]; MLMMJ_DEST(0.00)[freebsd-hackers@freebsd.org]; MID_RHS_MATCH_FROM(0.00)[]; FROM_HAS_DN(0.00)[] This is a cryptographically signed message in MIME format. --------------ms040306030109020400030608 Content-Type: multipart/alternative; boundary="------------FXBfTD00QOR36C9W4SXQqmjR" --------------FXBfTD00QOR36C9W4SXQqmjR Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMS80LzIwMjUgMTowOCBQTSwgQ3JhaWcgTGVyZXMgd3JvdGU6DQo+IE9uIDEvNC8yNSAw OTozNiwgS2FybCBEZW5uaW5nZXIgd3JvdGU6DQo+PiBXaGF0J3MgdGhlIGFyZ3VtZW50IGZv ciBzd2FwcGluZyB0byBhIG1pcnJvciBpbiB0aGUgZmlyc3QgcGxhY2U/IElmIA0KPj4gdGhl IGlzc3VlIGlzIHRocm91Z2hwdXQgSU1ITyB0aGUgYW5zd2VyIGlzIHRvIHN3YXAgdG8gbXVs dGlwbGUgZGV2aWNlcy4NCj4NCj4gSSB0aG91Z2h0IHRoZSBpZGVhIGhlcmUgaXMgaWYgeW91 ciBzd2FwIGlzIG5vdCByZWR1bmRhbnQgYW5kIGl0IGdvZXMgDQo+IGF3YXkgdGhlIHN5c3Rl bSBjcmFzaGVzIChvciBvdGhlcndpc2UgbWlzYmVoYXZlcyk/DQo+DQpXZWxsLCB5ZXMuDQoN CkhvdyBvZnRlbiBkbyB5b3UgaGF2ZSBzdG9yYWdlIGZhaWx1cmVzPyBPaCB0aGV5IGhhcHBl biBhbmQgYXJlIHRoZSANCnJlYXNvbiB5b3UgcnVuIG1pcnJvcnMgYW5kIFpGUyBhbmQgc2lt aWxhciBmb3IgYWN0dWFsIGRhdGEgeW91IGNhcmUgDQphYm91dCBidXQgaWYgSSd2ZSBnb3Qg YSBiYWQgdm9sdW1lIHRoYXQgaXMgYmVpbmcgc3dhcHBlZCB0byBJIHdhbnQgaXQgDQpvdXQg b2YgdGhlcmUgYW5kIGl0cyBleHRyZW1lbHkgdW5saWtlbHkgdG8gbGVhZCB0byBhbnkgc29y dCBvZiBzaWxlbnQgDQpjb3JydXB0aW9uIChhbiBhY3R1YWwgSS9PIGVycm9yIHByb2JhYmx5 IHdpbGwgbGVhZCB0byBhIHBhbmljLikNCg0KRnVydGhlciBpZiBJIHRha2Ugc3VjaCBhIGhp dCBvbiBhIHN5c3RlbSB0aGF0IGlzIGhlYXZpbHkgdXNpbmcgc3dhcCB0aGUgDQpwZXJmb3Jt YW5jZSB3aGFjayBkdXJpbmcgdGhlIHJlc2lsdmVyIGlzIGxpa2VseSB0byBiZSBleHRyZW1l IGVub3VnaCB0byANCnNjcmV3IHVwIG15IHdvcmtsb2FkLsKgIEknZCByYXRoZXIgc2h1dCBk b3duIGFuZCByZXBsYWNlIHRoZSBiYWQgZGV2aWNlIA0KaW4gdGhhdCByYXJlIGJ1dCBwb3Nz aWJsZSBpbnN0YW5jZS4NCg0KUHV0dGluZyBzd2FwIHRocm91Z2ggYSBwcm9jZXNzIHRoYXQg cmVxdWlyZXMgbWVtb3J5IGFsbG9jYXRpb24gKGUuZy4gb24gDQphIFpGUyB6dm9sKSByaXNr cyBpdCBmYWlsaW5nIGR1ZSB0byB0aGUgaW5hYmlsaXR5IG9mIHRoYXQgY29kZXBhdGggdG8g DQphbGxvY2F0ZSBtZW1vcnkgd2hlbiBpdCBuZWVkcyBpdCB0aHVzIGtpbGxpbmcgYXQgbGVh c3Qgc29tZSBwcm9jZXNzIA0KKG1heWJlIHRoZSBvbmUgdGhhdCBjYXVzZWQgdGhlIHBhZ2Ut b3V0LCBtYXliZSB0aGUgdmljdGltIHRoYXQgd2FzIA0Kc2VsZWN0ZWQgdG8gYmUgcGFnZWQg b3V0KSB3aGljaCB5b3Ugc2VlbSB0byBiZSBleHBlcmllbmNpbmcgYW5kIHRoZXJlIGlzIA0K cmlzayAoaWYgdGhlcmUncyBhbnkgcGF0aG9sb2d5IGluIHRoZXJlKSBvZiBhIHBhbmljIG9y ICh3b3JzZSkgYSBkZWFkbG9jay4NCg0KSU1ITyBJJ2QgcnVuIHRoZSBzd2FwIGRpcmVjdGx5 IHRvIGRpc2sgc2xpY2VzIGFkZGluZyBtdWx0aXBsZSBzd2FwIA0KZGV2aWNlcyBpZiB0aGUg c3BhY2UgcmVxdWlyZW1lbnQgZm9yIGRvaW5nIHNvIGlzIGFwcHJvcHJpYXRlICh3aGljaCAN CmNvdWxkIGJlIGFuIGVudGlyZSBkZXZpY2UgZm9yIGVhY2ggZGVwZW5kaW5nIG9uIHJlcXVp cmVtZW50cykgYW5kIGlmIHlvdSANCmluc2lzdCBvbiBtaXJyb3JpbmcgaXQgKGFsdGhvdWdo IEkgdGhpbmsgaXRzIGxpa2VseSBhIG1pc3Rha2UgdG8gZG8gc28pIA0KdGhlbiB1c2Ugc29t ZXRoaW5nIGxpa2UgZ21pcnJvciBhcyB0aGF0IGlzIG11Y2ggbGlnaHRlci13ZWlnaHQgYW5k IA0Kc2hvdWxkIG5vdCBiZSBzdWJqZWN0IHRvIHJlcXVpcmluZyBtYXRlcmlhbCBSQU0gYWxs b2NhdGlvbiB3aGVuIHlvdSdyZSANCmFscmVhZHkgc2hvcnQgb24gaXQuDQoNCi0tIA0KS2Fy bCBEZW5uaW5nZXINCmthcmxAZGVubmluZ2VyLm5ldA0KL1RoZSBNYXJrZXQgVGlja2VyLw0K L1tTL01JTUUgZW5jcnlwdGVkIGVtYWlsIHByZWZlcnJlZF0vDQo= --------------FXBfTD00QOR36C9W4SXQqmjR Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
On 1/4/2025 1:08 PM, Craig Leres wrote= :
On 1/4/25 09:36, Karl Denninger wrote:
What's the argument for swapping to a mirror in the first place? If the issue is throughput IMHO the answer is to swap to multiple devices.

I thought the idea here is if your swap is not redundant and it goes away the system crashes (or otherwise misbehaves)?

Well, yes.

How often do you have storage failures? Oh they happen and are the reason you run mirrors and ZFS and similar for actual data you care about but if I've got a bad volume that is being swapped to I want it out of there and its extremely unlikely to lead to any sort of silent corruption (an actual I/O error probably will lead to a panic.)

Further if I take such a hit on a system that is heavily using swap the performance whack during the resilver is likely to be extreme enough to screw up my workload.=C2=A0 I'd rather shut down = and replace the bad device in that rare but possible instance.

Putting swap through a process that requires memory allocation (e.g. on a ZFS zvol) risks it failing due to the inability of that codepath to allocate memory when it needs it thus killing at least some process (maybe the one that caused the page-out, maybe the victim that was selected to be paged out) which you seem to be experiencing and there is risk (if there's any pathology in there) of a panic or (worse) a deadlock.

IMHO I'd run the swap directly to disk slices adding multiple swap devices if the space requirement for doing so is appropriate (which could be an entire device for each depending on requirements) and if you insist on mirroring it (although I think its likely a mistake to do so) then use something like gmirror as that is much lighter-weight and should not be subject to requiring material RAM allocation when you're already short on it.

--
Karl Denninger
karl@denninger.net
The Market Ticker
[S/MIME encrypted email preferred]<= /div> --------------FXBfTD00QOR36C9W4SXQqmjR-- --------------ms040306030109020400030608 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgMFADCABgkqhkiG9w0BBwEAAKCC C4owggWZMIIDgaADAgECAhRZU8dKdMneRI1Vq5kv0k54Q5rQuDANBgkqhkiG9w0BAQsFADB2 MQswCQYDVQQGEwJVUzESMBAGA1UECAwJVGVubmVzc2VlMRYwFAYDVQQKDA1EZW5uaW5nZXIu TmV0MRcwFQYDVQQDDA5EZW5uaW5nZXIgUm9vdDEiMCAGCSqGSIb3DQEJARYTYWRtaW5AZGVu bmluZ2VyLm5ldDAeFw0yNDA1MDkyMTA4MDNaFw00NDA1MDQyMTA4MDNaMF0xCzAJBgNVBAYT AlVTMRIwEAYDVQQIDAlUZW5uZXNzZWUxFjAUBgNVBAoMDURlbm5pbmdlci5uZXQxIjAgBgNV BAMMGURlbm5pbmdlci5OZXQgU2lnbmluZyBJbnQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw ggEKAoIBAQDbR0tSiuLG5HPfo+cWtdeYQ8jc8Bjfuo0GTcNRT0glHnH1apUtInIktUknEZDH ohahInN+mMBdKg54FCHOiYZrJbyxBIo9FwX7hRmOc+spxmSYWnOd2E/YcGInMK4ZpjPzldzB Yt1n3zygkhx2bssxTJS3x4nv1qAXfLSZd1VwqoQufifEoPyTtymkkvHLv86vLgqAqooM/cXc 4LSIQ5u2uM308n42r8RkKtp7X1v9fJW8oRZN2XnFZtiUPH44YY2rHqyN2Hea9Y3+TXbldXjo xhPHTA+JYVFq8KTmbQBqU7YcMhlIG0cSxPeFLMxnP6pqPcIVTAlK+a6YGRFppfjZAgMBAAGj ggE2MIIBMjAdBgNVHQ4EFgQUH+VuxXhBxaJAQrvDekwkH91hBi4wgbMGA1UdIwSBqzCBqIAU RFYC4p6L6KITnEvrpx2cyt+PcMmheqR4MHYxCzAJBgNVBAYTAlVTMRIwEAYDVQQIDAlUZW5u ZXNzZWUxFjAUBgNVBAoMDURlbm5pbmdlci5OZXQxFzAVBgNVBAMMDkRlbm5pbmdlciBSb290 MSIwIAYJKoZIhvcNAQkBFhNhZG1pbkBkZW5uaW5nZXIubmV0ghQZE7NBItWtQsCouuwU6jZ+ HPPwnjAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjA6BgNVHR8EMzAxMC+gLaAr hilodHRwOi8vd3d3LmRlbm5pbmdlci5uZXQvcm9vdC1yZXZva2VkLmNybDANBgkqhkiG9w0B AQsFAAOCAgEAfFbhPc82AfhyUqONs7IccYD36w+OP4nQgwfC4IWf3y/aQAZ2Zk6IITzYqwf7 PFM0bJRT3zi7xyetolqHDhfMJvnOQWpITZiyM/FSKwIvuBsy/uJUqPuqui4XQMYoSbAA1qmI MW/z7VZZHwaRFoeWE40UirYcf0fNcooBZ72bmd+iBaVyjtZvky0Vgcz0eC6e6LR5kNb23yC6 TkyQIlGyQkK5/afXUYFzk49rOHVbVyxW3oXRfq8Ow6HCrpDGAS8p84S04MFwBVAUfbe4aXs3 bampaI2LzKgkVywyFP14LSvvdjCfLYfnLy1Z9hm2EHMqNHA2tCGdRhWp2d7aZC1MYFqng0ZS fjPJjqHrI1qPU0p6k9A1GxAtrQlL2v/IUzUnMZkiawFV3qlxMGZf/kTYTUOcJhx1KU4zSLHu 80qO7ldRpp5gHssCAGFbeTu2gp6LxfmaFhLPDBJ1VGfdPx9lUrU/9OcoHczcl5x2Rb8IUZyX 9elzP5WdAU8p5R/DLlOAq24VcabhFtYBCA2dOESLupSfWKNQuJCN/1gz7ysSc+mjnnPV77IO mpszJfkFFJEDNJlGIVKX1vwwygtC/9Ulox8frgbZlRAYAgDc/YbOBFxticVVre0Y3Ujx6Kzb tkgZRlgfdZWbT1W5smncqJxg5qAL8e/yTb3fCe2nJ0jhiP4wggXpMIIE0aADAgECAhMAmNFt CiCF3j+FwQLYtBTmGjzkMA0GCSqGSIb3DQEBCwUAMF0xCzAJBgNVBAYTAlVTMRIwEAYDVQQI DAlUZW5uZXNzZWUxFjAUBgNVBAoMDURlbm5pbmdlci5uZXQxIjAgBgNVBAMMGURlbm5pbmdl ci5OZXQgU2lnbmluZyBJbnQwHhcNMjQwNTEwMTkyNjU5WhcNMjkwNTA5MTkyNjU5WjBXMQsw CQYDVQQGEwJVUzESMBAGA1UECAwJVGVubmVzc2VlMRcwFQYDVQQKDA5LYXJsIERlbm5pbmdl cjEbMBkGA1UEAwwSa2FybEBkZW5uaW5nZXIubmV0MIICIjANBgkqhkiG9w0BAQEFAAOCAg8A MIICCgKCAgEAvh1UssVbSYctzobPjwBkbjv/w4WvQNepeRTwE6+sLnXvc41+X9pa5EclPL4Q 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 FIaLXrEzCdrg5yBCYpuAAAAAAAAA --------------ms040306030109020400030608--