From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9]) by lore.proxmox.com (Postfix) with ESMTPS id 5EFA61FF16B for ; Tue, 9 Sep 2025 10:36:24 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id A4D4426DF; Tue, 9 Sep 2025 10:35:50 +0200 (CEST) From: Daniel Kral To: pve-devel@lists.proxmox.com Date: Tue, 9 Sep 2025 10:33:41 +0200 Message-ID: <20250909083539.39675-5-d.kral@proxmox.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20250909083539.39675-1-d.kral@proxmox.com> References: <20250909083539.39675-1-d.kral@proxmox.com> MIME-Version: 1.0 X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1757406920302 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.016 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: [pve-devel] [PATCH ha-manager v2 04/18] rules: resource affinity: inter-consistency check with merged positive rules X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox VE development discussion Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: pve-devel-bounces@lists.proxmox.com Sender: "pve-devel" VGhlIHJlc291cmNlIGFmZmluaXR5IHJ1bGUgc2V0IGlzIGNoZWNrZWQgd2hldGhlciBpdCBjb250 YWlucyBwYWlycyBvZgpwb3NpdGl2ZSBhbmQgbmVnYXRpdmUgcmVzb3VyY2UgYWZmaW5pdHkgcnVs ZXMsIHdoaWNoIHNwZWNpZnkgdHdvIG9yIG1vcmUKSEEgcmVzb3VyY2VzIGluIHRoZW0sIGFuZCBw cnVuZXMgdGhlbSBhcyB0aG9zZSBhcmUgaW5mZWFzaWJsZS4KClRoaXMgY2hlY2sgaGFzIHRoZSBh c3N1bXB0aW9uIHRoYXQgZWFjaCBwb3NpdGl2ZSByZXNvdXJjZSBhZmZpbml0eQpydWxlJ3MgcmVz b3VyY2Ugc2V0IGlzIGRpc2pvaW50IGZyb20gZWFjaCBvdGhlciwgYnV0IHRoaXMgaXMgb25seSBk b25lCmluIHRoZSBsYXRlciB0cmFuc2Zvcm1hdGlvbiBzdGFnZSB3aGVuIHBvc2l0aXZlIHJlc291 cmNlIGFmZmluaXR5IHdpdGgKb3ZlcmxhcHBpbmcgSEEgcmVzb3VyY2VzIGluIHRoZW0gYXJlIG1l cmdlZCB0byBvbmUgcnVsZS4KCkZvciBleGFtcGxlLCB0aGUgZm9sbG93aW5nIGluY29uc2lzdGVu dCBydWxlcyBhcmUgbm90IHBydW5lZDoKCi0gcG9zaXRpdmUgcmVzb3VyY2UgYWZmaW5pdHkgcnVs ZSBiZXR3ZWVuIHZtOjEwMSBhbmQgdm06MTAyCi0gcG9zaXRpdmUgcmVzb3VyY2UgYWZmaW5pdHkg cnVsZSBiZXR3ZWVuIHZtOjEwMiBhbmQgdm06MTAzCi0gbmVnYXRpdmUgcmVzb3VyY2UgYWZmaW5p dHkgcnVsZSBiZXR3ZWVuIHZtOjEwMSBhbmQgdm06MTAzCgpUaGVyZWZvcmUgYnVpbGQgdGhlIHNh bWUgZGlzam9pbnQgcG9zaXRpdmUgcmVzb3VyY2UgYWZmaW5pdHkgcmVzb3VyY2UKc2V0cyBhcyB0 aGUgbWVyZ2VfY29ubmVjdGVkX3Bvc2l0aXZlX3Jlc291cmNlX2FmZmluaXR5X3J1bGVzKC4uLikK c3Vicm91dGluZSwgc28gdGhhdCB0aGUgaW5jb25zaXN0ZW5jeSBjaGVjayBoYXMgdGhlIG5lY2Vz c2FyeQppbmZvcm1hdGlvbiBpbiBhZHZhbmNlLgoKRml4ZXM6IDM2N2NkYmZhICgicnVsZXM6IGlu dHJvZHVjZSByZXNvdXJjZSBhZmZpbml0eSBydWxlIHBsdWdpbiIpClJlcG9ydGVkLWJ5OiBIYW5u ZXMgRMO8cnIgPGguZHVlcnJAcHJveG1veC5jb20+ClNpZ25lZC1vZmYtYnk6IERhbmllbCBLcmFs IDxkLmtyYWxAcHJveG1veC5jb20+ClJldmlld2VkLWJ5OiBNaWNoYWVsIEvDtnBwbCA8bS5rb2Vw cGxAcHJveG1veC5jb20+ClRlc3RlZC1ieTogTWljaGFlbCBLw7ZwcGwgPG0ua29lcHBsQHByb3ht b3guY29tPgotLS0KY2hhbmdlcyBzaW5jZSB2MToKICAtIGhlbHBlcnMgYXJlIG5vdyByZW1vdmVk IGluIHRoZSBwcmV2aW91cyBwYXRjaCBpbnN0ZWFkIG9mIGhlcmUKICAgIChzcXVhc2hpbmcgZXJy b3Igd2hpbGUgcmViYXNpbmcgdjEpCgogc3JjL1BWRS9IQS9SdWxlcy9SZXNvdXJjZUFmZmluaXR5 LnBtICAgICAgICAgIHwgMjMgKysrKysrKysrKysrLS0tLS0tLQogLi4uL2luY29uc2lzdGVudC1y ZXNvdXJjZS1hZmZpbml0eS1ydWxlcy5jZmcgIHwgMTUgKysrKysrKysrKysrCiAuLi5zaXN0ZW50 LXJlc291cmNlLWFmZmluaXR5LXJ1bGVzLmNmZy5leHBlY3QgfCAgNSArKystCiAzIGZpbGVzIGNo YW5nZWQsIDM0IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj L1BWRS9IQS9SdWxlcy9SZXNvdXJjZUFmZmluaXR5LnBtIGIvc3JjL1BWRS9IQS9SdWxlcy9SZXNv dXJjZUFmZmluaXR5LnBtCmluZGV4IDhhMmJlZTVkLi5lOWIzNjhhNCAxMDA2NDQKLS0tIGEvc3Jj L1BWRS9IQS9SdWxlcy9SZXNvdXJjZUFmZmluaXR5LnBtCisrKyBiL3NyYy9QVkUvSEEvUnVsZXMv UmVzb3VyY2VBZmZpbml0eS5wbQpAQCAtMjA2LDE0ICsyMDYsMTggQEAgc3ViIGNoZWNrX2ludGVy X3Jlc291cmNlX2FmZmluaXR5X3J1bGVzX2NvbnNpc3RlbmN5IHsKIAogICAgIG15IEBjb25mbGlj dHMgPSAoKTsKIAotICAgIHdoaWxlIChteSAoJHBvc2l0aXZlaWQsICRwb3NpdGl2ZSkgPSBlYWNo ICUkcG9zaXRpdmVfcnVsZXMpIHsKLSAgICAgICAgbXkgJHBvc2l0aXZlX3Jlc291cmNlcyA9ICRw b3NpdGl2ZS0+e3Jlc291cmNlc307CisgICAgbXkgQGRpc2pvaW50X3Bvc2l0aXZlX3J1bGVzID0K KyAgICAgICAgUFZFOjpIQTo6UnVsZXM6OkhlbHBlcnM6OmZpbmRfZGlzam9pbnRfcnVsZXNfcmVz b3VyY2Vfc2V0cygkcG9zaXRpdmVfcnVsZXMpOworCisgICAgZm9yIG15ICRlbnRyeSAoQGRpc2pv aW50X3Bvc2l0aXZlX3J1bGVzKSB7CisgICAgICAgIG15ICRwb3NpdGl2ZV9yZXNvdXJjZXMgPSAk ZW50cnktPntyZXNvdXJjZXN9OwogCiAgICAgICAgIHdoaWxlIChteSAoJG5lZ2F0aXZlaWQsICRu ZWdhdGl2ZSkgPSBlYWNoICUkbmVnYXRpdmVfcnVsZXMpIHsKICAgICAgICAgICAgIG15ICRjb21t b25fcmVzb3VyY2VzID0gc2V0X2ludGVyc2VjdCgkcG9zaXRpdmVfcmVzb3VyY2VzLCAkbmVnYXRp dmUtPntyZXNvdXJjZXN9KTsKICAgICAgICAgICAgIG5leHQgaWYgJSRjb21tb25fcmVzb3VyY2Vz IDwgMjsKIAotICAgICAgICAgICAgcHVzaCBAY29uZmxpY3RzLCBbJHBvc2l0aXZlaWQsICRuZWdh dGl2ZWlkXTsKKyAgICAgICAgICAgIHB1c2ggQGNvbmZsaWN0cywgWyduZWdhdGl2ZScsICRuZWdh dGl2ZWlkXTsKKyAgICAgICAgICAgIHB1c2ggQGNvbmZsaWN0cywgWydwb3NpdGl2ZScsICRfXSBm b3IgJGVudHJ5LT57cnVsZWlkc30tPkAqOwogICAgICAgICB9CiAgICAgfQogCkBAIC0yMzQsMTIg KzIzOCwxNSBAQCBfX1BBQ0tBR0VfXy0+cmVnaXN0ZXJfY2hlY2soCiAgICAgICAgIG15ICgkY29u ZmxpY3RzLCAkZXJyb3JzKSA9IEBfOwogCiAgICAgICAgIGZvciBteSAkY29uZmxpY3QgKEAkY29u ZmxpY3RzKSB7Ci0gICAgICAgICAgICBteSAoJHBvc2l0aXZlaWQsICRuZWdhdGl2ZWlkKSA9IEAk Y29uZmxpY3Q7CisgICAgICAgICAgICBteSAoJHR5cGUsICRydWxlaWQpID0gQCRjb25mbGljdDsK IAotICAgICAgICAgICAgcHVzaCAkZXJyb3JzLT57JHBvc2l0aXZlaWR9LT57cmVzb3VyY2VzfS0+ QCosCi0gICAgICAgICAgICAgICAgInJ1bGUgc2hhcmVzIHR3byBvciBtb3JlIHJlc291cmNlcyB3 aXRoIGEgbmVnYXRpdmUgcmVzb3VyY2UgYWZmaW5pdHkgcnVsZSI7Ci0gICAgICAgICAgICBwdXNo ICRlcnJvcnMtPnskbmVnYXRpdmVpZH0tPntyZXNvdXJjZXN9LT5AKiwKLSAgICAgICAgICAgICAg ICAicnVsZSBzaGFyZXMgdHdvIG9yIG1vcmUgcmVzb3VyY2VzIHdpdGggYSBwb3NpdGl2ZSByZXNv dXJjZSBhZmZpbml0eSBydWxlIjsKKyAgICAgICAgICAgIGlmICgkdHlwZSBlcSAncG9zaXRpdmUn KSB7CisgICAgICAgICAgICAgICAgcHVzaCAkZXJyb3JzLT57JHJ1bGVpZH0tPntyZXNvdXJjZXN9 LT5AKiwKKyAgICAgICAgICAgICAgICAgICAgInJ1bGUgc2hhcmVzIHR3byBvciBtb3JlIHJlc291 cmNlcyB3aXRoIGEgbmVnYXRpdmUgcmVzb3VyY2UgYWZmaW5pdHkgcnVsZSI7CisgICAgICAgICAg ICB9IGVsc2lmICgkdHlwZSBlcSAnbmVnYXRpdmUnKSB7CisgICAgICAgICAgICAgICAgcHVzaCAk ZXJyb3JzLT57JHJ1bGVpZH0tPntyZXNvdXJjZXN9LT5AKiwKKyAgICAgICAgICAgICAgICAgICAg InJ1bGUgc2hhcmVzIHR3byBvciBtb3JlIHJlc291cmNlcyB3aXRoIGEgcG9zaXRpdmUgcmVzb3Vy Y2UgYWZmaW5pdHkgcnVsZSI7CisgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICB9LAogKTsK ZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3J1bGVzX2NmZ3MvaW5jb25zaXN0ZW50LXJlc291cmNlLWFm ZmluaXR5LXJ1bGVzLmNmZyBiL3NyYy90ZXN0L3J1bGVzX2NmZ3MvaW5jb25zaXN0ZW50LXJlc291 cmNlLWFmZmluaXR5LXJ1bGVzLmNmZwppbmRleCBhNjIwZTI5My4uNmJmYzJkYWQgMTAwNjQ0Ci0t LSBhL3NyYy90ZXN0L3J1bGVzX2NmZ3MvaW5jb25zaXN0ZW50LXJlc291cmNlLWFmZmluaXR5LXJ1 bGVzLmNmZworKysgYi9zcmMvdGVzdC9ydWxlc19jZmdzL2luY29uc2lzdGVudC1yZXNvdXJjZS1h ZmZpbml0eS1ydWxlcy5jZmcKQEAgLTEsMyArMSw0IEBACisjIENhc2UgMTogUmVtb3ZlIHBvc2l0 aXZlIGFuZCBuZWdhdGl2ZSByZXNvdXJjZSBhZmZpbml0eSBydWxlcywgd2hpY2ggc2hhcmUgdHdv IG9yIG1vcmUgaGEgcmVzb3VyY2VzLgogcmVzb3VyY2UtYWZmaW5pdHk6IGtlZXAtYXBhcnQxCiAJ cmVzb3VyY2VzIHZtOjEwMix2bToxMDMKIAlhZmZpbml0eSBuZWdhdGl2ZQpAQCAtOSwzICsxMCwx NyBAQCByZXNvdXJjZS1hZmZpbml0eToga2VlcC1hcGFydDIKIHJlc291cmNlLWFmZmluaXR5OiBz dGljay10b2dldGhlcjEKIAlyZXNvdXJjZXMgdm06MTAxLHZtOjEwMix2bToxMDMsdm06MTA0LHZt OjEwNgogCWFmZmluaXR5IHBvc2l0aXZlCisKKyMgQ2FzZSAyOiBSZW1vdmUgcG9zaXRpdmUgYW5k IG5lZ2F0aXZlIHJlc291cmNlIGFmZmluaXR5IHJ1bGVzLCB3aGljaCBzaGFyZSB0d28gb3IgbW9y ZSBIQSByZXNvdXJjZXMgd2l0aCB0aGUgcG9zaXRpdmUKKyMgICAgICAgICByZXNvdXJjZSBhZmZp bml0eSBiZWluZyBzcGxpdCBpbiB0d28uCityZXNvdXJjZS1hZmZpbml0eTogc3BsaXQtc3RpY2st dG9nZXRoZXIxCisJcmVzb3VyY2VzIHZtOjIwMSx2bToyMDIKKwlhZmZpbml0eSBwb3NpdGl2ZQor CityZXNvdXJjZS1hZmZpbml0eTogc3BsaXQtc3RpY2stdG9nZXRoZXIyCisJcmVzb3VyY2VzIHZt OjIwMix2bToyMDMKKwlhZmZpbml0eSBwb3NpdGl2ZQorCityZXNvdXJjZS1hZmZpbml0eTogc3Bs aXQta2VlcC1hcGFydDEKKwlyZXNvdXJjZXMgdm06MjAxLHZtOjIwMworCWFmZmluaXR5IG5lZ2F0 aXZlCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9ydWxlc19jZmdzL2luY29uc2lzdGVudC1yZXNvdXJj ZS1hZmZpbml0eS1ydWxlcy5jZmcuZXhwZWN0IGIvc3JjL3Rlc3QvcnVsZXNfY2Zncy9pbmNvbnNp c3RlbnQtcmVzb3VyY2UtYWZmaW5pdHktcnVsZXMuY2ZnLmV4cGVjdAppbmRleCBkNGEyZDdiMi4u OGYyMzM4ZDkgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3J1bGVzX2NmZ3MvaW5jb25zaXN0ZW50LXJl c291cmNlLWFmZmluaXR5LXJ1bGVzLmNmZy5leHBlY3QKKysrIGIvc3JjL3Rlc3QvcnVsZXNfY2Zn cy9pbmNvbnNpc3RlbnQtcmVzb3VyY2UtYWZmaW5pdHktcnVsZXMuY2ZnLmV4cGVjdApAQCAtMSwx MSArMSwxNCBAQAogLS0tIExvZyAtLS0KIERyb3AgcnVsZSAna2VlcC1hcGFydDEnLCBiZWNhdXNl IHJ1bGUgc2hhcmVzIHR3byBvciBtb3JlIHJlc291cmNlcyB3aXRoIGEgcG9zaXRpdmUgcmVzb3Vy Y2UgYWZmaW5pdHkgcnVsZS4KIERyb3AgcnVsZSAna2VlcC1hcGFydDInLCBiZWNhdXNlIHJ1bGUg c2hhcmVzIHR3byBvciBtb3JlIHJlc291cmNlcyB3aXRoIGEgcG9zaXRpdmUgcmVzb3VyY2UgYWZm aW5pdHkgcnVsZS4KK0Ryb3AgcnVsZSAnc3BsaXQta2VlcC1hcGFydDEnLCBiZWNhdXNlIHJ1bGUg c2hhcmVzIHR3byBvciBtb3JlIHJlc291cmNlcyB3aXRoIGEgcG9zaXRpdmUgcmVzb3VyY2UgYWZm aW5pdHkgcnVsZS4KK0Ryb3AgcnVsZSAnc3BsaXQtc3RpY2stdG9nZXRoZXIxJywgYmVjYXVzZSBy dWxlIHNoYXJlcyB0d28gb3IgbW9yZSByZXNvdXJjZXMgd2l0aCBhIG5lZ2F0aXZlIHJlc291cmNl IGFmZmluaXR5IHJ1bGUuCitEcm9wIHJ1bGUgJ3NwbGl0LXN0aWNrLXRvZ2V0aGVyMicsIGJlY2F1 c2UgcnVsZSBzaGFyZXMgdHdvIG9yIG1vcmUgcmVzb3VyY2VzIHdpdGggYSBuZWdhdGl2ZSByZXNv dXJjZSBhZmZpbml0eSBydWxlLgogRHJvcCBydWxlICdzdGljay10b2dldGhlcjEnLCBiZWNhdXNl IHJ1bGUgc2hhcmVzIHR3byBvciBtb3JlIHJlc291cmNlcyB3aXRoIGEgbmVnYXRpdmUgcmVzb3Vy Y2UgYWZmaW5pdHkgcnVsZS4KIERyb3AgcnVsZSAnc3RpY2stdG9nZXRoZXIxJywgYmVjYXVzZSBy dWxlIHNoYXJlcyB0d28gb3IgbW9yZSByZXNvdXJjZXMgd2l0aCBhIG5lZ2F0aXZlIHJlc291cmNl IGFmZmluaXR5IHJ1bGUuCiAtLS0gQ29uZmlnIC0tLQogJFZBUjEgPSB7Ci0gICAgICAgICAgJ2Rp Z2VzdCcgPT4gJzUwODc1YjMyMDAzNGQ4YWM3ZGRlZDE4NWU1OTBmNWY4N2M0ZTJiYjYnLAorICAg ICAgICAgICdkaWdlc3QnID0+ICc4MGNkYzExYTFkNWJmMmQxZDUwMDY2NWFmMTIxMGNkNTlhYWJl ZGU2JywKICAgICAgICAgICAnaWRzJyA9PiB7fSwKICAgICAgICAgICAnb3JkZXInID0+IHt9CiAg ICAgICAgIH07Ci0tIAoyLjQ3LjMKCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KcHZlLWRldmVsIG1haWxpbmcgbGlzdApwdmUtZGV2ZWxAbGlzdHMucHJv eG1veC5jb20KaHR0cHM6Ly9saXN0cy5wcm94bW94LmNvbS9jZ2ktYmluL21haWxtYW4vbGlzdGlu Zm8vcHZlLWRldmVsCg==