NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/60084: swap encryption: per-page tracking seems overengineered



The following reply was made to PR kern/60084; it has been noted by GNATS.

From: Takashi Yamamoto <imuwoto2%gmail.com@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc: kern-bug-people%netbsd.org@localhost, gnats-admin%netbsd.org@localhost, netbsd-bugs%netbsd.org@localhost, 
	imuwoto%gmail.com@localhost, riastradh%netbsd.org@localhost
Subject: Re: kern/60084: swap encryption: per-page tracking seems overengineered
Date: Tue, 17 Mar 2026 17:31:33 +0900

 --0000000000008297cd064d342a06
 Content-Type: text/plain; charset="UTF-8"
 
 hi,
 
 > my proposal is just a global knob (vm.swap_encrypt) which can't be
 > changed if any swap devices are configured.
 
 here's a patch.
 identical patch is available at
 https://github.com/yamt/netbsd-src/commit/471d17d6708677e778c2e6d82afd5d6041863f10
 
 --0000000000008297cd064d342a06
 Content-Type: application/octet-stream; name="a.diff"
 Content-Disposition: attachment; filename="a.diff"
 Content-Transfer-Encoding: base64
 Content-ID: <f_mmucqn2i0>
 X-Attachment-Id: f_mmucqn2i0
 
 Y29tbWl0IGU4ZDZjNmVkOGQxMzU1Y2FiYWZjMGY1NjFiM2UyN2RjNWI0OWE4M2YKQXV0aG9yOiBZ
 QU1BTU9UTyBUYWthc2hpIDxpbXV3b3RvQGdtYWlsLmNvbT4KRGF0ZTogICBTdW4gTWFyIDE1IDA1
 OjQ5OjE5IDIwMjYgKzAwMDAKCiAgICBzaW1wbGlmeSBzd2FwIGVuY3J5cHRpb24gYSBiaXQKICAg
 IAogICAgKiBkaXNhbGxvdyBjaGFuZ2VzIG9mIHZtLnN3YXBfZW5jcnlwdCBzeXNjdGwgd2hlbiBh
 bnkgc3dhcAogICAgICBpcyBjb25maWd1cmVkLiAgbm90ZTogdGhpcyBkb2Vzbid0IGFmZmVjdCB0
 aGUgYWJpbGl0eSB0bwogICAgICBzZXQgaXQgaW4gL2V0Yy9zeXNjdGwuY29uZiBiZWNhdXNlIC9l
 dGMvcmMuZC9zeXNjdGwgaXMKICAgICAgZXhlY3V0ZWQgYmVmb3JlIC9ldGMvcmMuZC9zd2FwMS4K
 ICAgIAogICAgKiByZXRpcmUgcGVyLXBhZ2UgZW50cnlwdGlvbiB0cmFja2luZy4gKHN3ZF9lbmNt
 YXApCiAgICAgIGZyb20gbm93IG9uLCB0aGUgd2hvbGUgc3dhcCBpcyBlbmNyeXB0ZWQgb3Igbm90
 LgogICAgCiAgICBQUi82MDA4NAogICAgaHR0cHM6Ly9nbmF0cy5uZXRic2Qub3JnLzYwMDg0Cgpk
 aWZmIC0tZ2l0IGEvc3lzL3V2bS91dm1fc3dhcC5jIGIvc3lzL3V2bS91dm1fc3dhcC5jCmluZGV4
 IDMxYWM2MDI3ZTQ2My4uNjM0YWFkYmYwZjhkIDEwMDY0NAotLS0gYS9zeXMvdXZtL3V2bV9zd2Fw
 LmMKKysrIGIvc3lzL3V2bS91dm1fc3dhcC5jCkBAIC0xNDQsNyArMTQ0LDYgQEAgc3RydWN0IHN3
 YXBkZXYgewogCXN0cnVjdCB2bm9kZQkJKnN3ZF92cDsJLyogYmFja2luZyB2bm9kZSAqLwogCVRB
 SUxRX0VOVFJZKHN3YXBkZXYpCXN3ZF9uZXh0OwkvKiBwcmlvcml0eSB0YWlscSAqLwogCi0Jdm9s
 YXRpbGUgdWludDMyX3QJKnN3ZF9lbmNtYXA7CS8qIGJpdG1hcCBvZiBlbmNyeXB0ZWQgc2xvdHMg
 Ki8KIAlzdHJ1Y3QgYWVzZW5jCQlzd2RfZW5ja2V5OwkvKiBBRVMga2V5IGV4cGFuZGVkIGZvciBl
 bmMgKi8KIAlzdHJ1Y3QgYWVzZGVjCQlzd2RfZGVja2V5OwkvKiBBRVMga2V5IGV4cGFuZGVkIGZv
 ciBkZWMgKi8KIAlib29sCQkJc3dkX2VuY2luaXQ7CS8qIHRydWUgaWYga2V5cyBpbml0aWFsaXpl
 ZCAqLwpAQCAtMjIwLDE5ICsyMTksNiBAQCBzdGF0aWMgdm9pZCB1dm1fc3dhcF9nZW5rZXkoc3Ry
 dWN0IHN3YXBkZXYgKik7CiBzdGF0aWMgdm9pZCB1dm1fc3dhcF9lbmNyeXB0cGFnZShzdHJ1Y3Qg
 c3dhcGRldiAqLCB2b2lkICosIGludCk7CiBzdGF0aWMgdm9pZCB1dm1fc3dhcF9kZWNyeXB0cGFn
 ZShzdHJ1Y3Qgc3dhcGRldiAqLCB2b2lkICosIGludCk7CiAKLXN0YXRpYyBzaXplX3QKLWVuY21h
 cF9zaXplKHNpemVfdCBucGFnZXMpCi17Ci0Jc3RydWN0IHN3YXBkZXYgKnNkcDsKLQljb25zdCBz
 aXplX3QgYnl0ZXNwZXJ3b3JkID0gc2l6ZW9mKHNkcC0+c3dkX2VuY21hcFswXSk7Ci0JY29uc3Qg
 c2l6ZV90IGJpdHNwZXJ3b3JkID0gTkJCWSAqIGJ5dGVzcGVyd29yZDsKLQljb25zdCBzaXplX3Qg
 bmJpdHMgPSBucGFnZXM7IC8qIG9uZSBiaXQgZm9yIGVhY2ggcGFnZSAqLwotCWNvbnN0IHNpemVf
 dCBud29yZHMgPSBob3dtYW55KG5iaXRzLCBiaXRzcGVyd29yZCk7Ci0JY29uc3Qgc2l6ZV90IG5i
 eXRlcyA9IG53b3JkcyAqIGJ5dGVzcGVyd29yZDsKLQotCXJldHVybiBuYnl0ZXM7Ci19Ci0KIC8q
 CiAgKiB1dm1fc3dhcF9pbml0OiBpbml0IHRoZSBzd2FwIHN5c3RlbSBkYXRhIHN0cnVjdHVyZXMg
 YW5kIGxvY2tzCiAgKgpAQCAtMTA1MSwxNCArMTAzNywxMiBAQCBzd2FwX29uKHN0cnVjdCBsd3Ag
 KmwsIHN0cnVjdCBzd2FwZGV2ICpzZHApCiAJYmxpc3RfZnJlZShzZHAtPnN3ZF9ibGlzdCwgYWRk
 ciwgc2l6ZSk7CiAKIAkvKgotCSAqIGFsbG9jYXRlIHNwYWNlIHRvIGZvciBzd2FwIGVuY3J5cHRp
 b24gc3RhdGUgYW5kIG1hcmsgdGhlCi0JICoga2V5cyB1bmluaXRpYWxpemVkIHNvIHdlIGdlbmVy
 YXRlIHRoZW0gbGF6aWx5LgorCSAqIG1hcmsgdGhlIGtleXMgdW5pbml0aWFsaXplZCBzbyB3ZSBn
 ZW5lcmF0ZSB0aGVtIGxhemlseS4KIAkgKgogCSAqIHdlIGRlZmVyIHRoZSBrZXkgZ2VuZXJhdGlv
 biB0byBoZWxwIHRvIG1heGltaXplIHRoZSBhbW91bnQKIAkgKiBvZiBkYXRhIGZlZCBpbnRvIHRo
 ZSBlbnRyb3B5IHBvb2wgYmVmb3JlIGdlbmVyYXRpbmcgYSBrZXksCiAJICogZm9yIHRoZSBiZW5l
 Zml0IG9mIG1hY2hpbmVzIHdpdGhvdXQgSFdSTkcuCiAJICovCi0Jc2RwLT5zd2RfZW5jbWFwID0g
 a21lbV96YWxsb2MoZW5jbWFwX3NpemUobnBhZ2VzKSwgS01fU0xFRVApOwogCXNkcC0+c3dkX2Vu
 Y2luaXQgPSBmYWxzZTsKIAogCS8qCkBAIC0xMjQwLDggKzEyMjQsNiBAQCBzd2FwX29mZihzdHJ1
 Y3QgbHdwICpsLCBzdHJ1Y3Qgc3dhcGRldiAqc2RwKQogCXZtZW1fZnJlZShzd2FwbWFwLCBzZHAt
 PnN3ZF9kcnVtb2Zmc2V0LCBzZHAtPnN3ZF9kcnVtc2l6ZSk7CiAJYmxpc3RfZGVzdHJveShzZHAt
 PnN3ZF9ibGlzdCk7CiAJYnVmcV9mcmVlKHNkcC0+c3dkX3RhYik7Ci0Ja21lbV9mcmVlKF9fVU5W
 T0xBVElMRShzZHAtPnN3ZF9lbmNtYXApLAotCSAgICBlbmNtYXBfc2l6ZShzZHAtPnN3ZF9kcnVt
 c2l6ZSkpOwogCWV4cGxpY2l0X21lbXNldCgmc2RwLT5zd2RfZW5ja2V5LCAwLCBzaXplb2Ygc2Rw
 LT5zd2RfZW5ja2V5KTsKIAlleHBsaWNpdF9tZW1zZXQoJnNkcC0+c3dkX2RlY2tleSwgMCwgc2l6
 ZW9mIHNkcC0+c3dkX2RlY2tleSk7CiAJbXV0ZXhfZGVzdHJveSgmc2RwLT5zd2RfbG9jayk7CkBA
 IC0xOTI3LDcgKzE5MDksNyBAQCB1dm1fc3dhcF9pbyhzdHJ1Y3Qgdm1fcGFnZSAqKnBwcywgaW50
 IHN0YXJ0c2xvdCwgaW50IG5wYWdlcywgaW50IGZsYWdzKQogCSAqIGVuY3J5cHQgd3JpdGVzIGlu
 IHBsYWNlIGlmIHJlcXVlc3RlZAogCSAqLwogCi0JaWYgKHdyaXRlKSBkbyB7CisJaWYgKHdyaXRl
 ICYmIHN3YXBfZW5jcnlwdCkgewogCQlzdHJ1Y3Qgc3dhcGRldiAqc2RwOwogCQlpbnQgaTsKIApA
 QCAtMTk1MiwxMCArMTkzNCw2IEBAIHV2bV9zd2FwX2lvKHN0cnVjdCB2bV9wYWdlICoqcHBzLCBp
 bnQgc3RhcnRzbG90LCBpbnQgbnBhZ2VzLCBpbnQgZmxhZ3MpCiAJCW11dGV4X2VudGVyKCZ1dm1f
 c3dhcF9kYXRhX2xvY2spOwogCQlzZHAgPSBzd2FwZHJ1bV9nZXRzZHAoc3RhcnRzbG90KTsKIAkJ
 aWYgKCFzZHAtPnN3ZF9lbmNpbml0KSB7Ci0JCQlpZiAoIXN3YXBfZW5jcnlwdCkgewotCQkJCW11
 dGV4X2V4aXQoJnV2bV9zd2FwX2RhdGFfbG9jayk7Ci0JCQkJYnJlYWs7Ci0JCQl9CiAJCQl1dm1f
 c3dhcF9nZW5rZXkoc2RwKTsKIAkJfQogCQlLQVNTRVJUKHNkcC0+c3dkX2VuY2luaXQpOwpAQCAt
 MTk2NywxOCArMTk0NSwxMCBAQCB1dm1fc3dhcF9pbyhzdHJ1Y3Qgdm1fcGFnZSAqKnBwcywgaW50
 IHN0YXJ0c2xvdCwgaW50IG5wYWdlcywgaW50IGZsYWdzKQogCQkJS0FTU0VSVChzID49IHNkcC0+
 c3dkX2RydW1vZmZzZXQpOwogCQkJcyAtPSBzZHAtPnN3ZF9kcnVtb2Zmc2V0OwogCQkJS0FTU0VS
 VChzIDwgc2RwLT5zd2RfZHJ1bXNpemUpOwotCi0JCQlpZiAoc3dhcF9lbmNyeXB0KSB7Ci0JCQkJ
 dXZtX3N3YXBfZW5jcnlwdHBhZ2Uoc2RwLAotCQkJCSAgICAodm9pZCAqKShrdmEgKyAodnNpemVf
 dClpKlBBR0VfU0laRSksIHMpOwotCQkJCWF0b21pY19vcl8zMigmc2RwLT5zd2RfZW5jbWFwW3Mv
 MzJdLAotCQkJCSAgICBfX0JJVChzJTMyKSk7Ci0JCQl9IGVsc2UgewotCQkJCWF0b21pY19hbmRf
 MzIoJnNkcC0+c3dkX2VuY21hcFtzLzMyXSwKLQkJCQkgICAgfl9fQklUKHMlMzIpKTsKLQkJCX0K
 KwkJCXV2bV9zd2FwX2VuY3J5cHRwYWdlKHNkcCwKKwkJCSAgICAodm9pZCAqKShrdmEgKyAodnNp
 emVfdClpKlBBR0VfU0laRSksIHMpOwogCQl9Ci0JfSB3aGlsZSAoMCk7CisJfQogCiAJLyoKIAkg
 KiBmaWxsIGluIHRoZSBicC9zYnAuICAgd2UgY3VycmVudGx5IHJvdXRlIG91ciBpL28gdGhyb3Vn
 aApAQCAtMjA0OCw3ICsyMDE4LDcgQEAgdXZtX3N3YXBfaW8oc3RydWN0IHZtX3BhZ2UgKipwcHMs
 IGludCBzdGFydHNsb3QsIGludCBucGFnZXMsIGludCBmbGFncykKIAkgKiBkZWNyeXB0IHJlYWRz
 IGluIHBsYWNlIGlmIG5lZWRlZAogCSAqLwogCi0JaWYgKCF3cml0ZSkgZG8geworCWlmICghd3Jp
 dGUgJiYgc3dhcF9lbmNyeXB0KSB7CiAJCXN0cnVjdCBzd2FwZGV2ICpzZHA7CiAJCWJvb2wgZW5j
 aW5pdDsKIAkJaW50IGk7CkBAIC0yMDY1LDI2ICsyMDM1LDIxIEBAIHV2bV9zd2FwX2lvKHN0cnVj
 dCB2bV9wYWdlICoqcHBzLCBpbnQgc3RhcnRzbG90LCBpbnQgbnBhZ2VzLCBpbnQgZmxhZ3MpCiAJ
 CWVuY2luaXQgPSBzZHAtPnN3ZF9lbmNpbml0OwogCQltdXRleF9leGl0KCZ1dm1fc3dhcF9kYXRh
 X2xvY2spOwogCi0JCWlmICghZW5jaW5pdCkKLQkJCS8qCi0JCQkgKiBJZiB0aGVyZSdzIG5vIGVu
 Y3J5cHRpb24ga2V5LCB0aGVyZSdzIG5vIHdheQotCQkJICogYW55IG9mIHRoZXNlIHNsb3RzIGNh
 biBiZSBlbmNyeXB0ZWQsIHNvCi0JCQkgKiBub3RoaW5nIHRvIGRvIGhlcmUuCi0JCQkgKi8KLQkJ
 CWJyZWFrOworCQkvKgorCQkgKiAhZW5jaW5pdCBoZXJlIG1lYW5zIHdlIGFyZSBzd2FwcGluZyBp
 biBhIHBhZ2Ugd2hpY2gKKwkJICogaGFzIG5ldmVuIGJlZW4gc3dhcHBlZCBvdXQuIGl0IHNob3Vs
 ZCBiZSBhIGJ1Zy4KKwkJICovCisJCUtBU1NFUlQoZW5jaW5pdCk7CiAJCWZvciAoaSA9IDA7IGkg
 PCBucGFnZXM7IGkrKykgewogCQkJaW50IHMgPSBzdGFydHNsb3QgKyBpOwogCQkJS0RBU1NFUlQo
 c3dhcGRydW1fc2RwX2lzKHMsIHNkcCkpOwogCQkJS0FTU0VSVChzID49IHNkcC0+c3dkX2RydW1v
 ZmZzZXQpOwogCQkJcyAtPSBzZHAtPnN3ZF9kcnVtb2Zmc2V0OwogCQkJS0FTU0VSVChzIDwgc2Rw
 LT5zd2RfZHJ1bXNpemUpOwotCQkJaWYgKChhdG9taWNfbG9hZF9yZWxheGVkKCZzZHAtPnN3ZF9l
 bmNtYXBbcy8zMl0pICYKLQkJCQlfX0JJVChzJTMyKSkgPT0gMCkKLQkJCQljb250aW51ZTsKIAkJ
 CXV2bV9zd2FwX2RlY3J5cHRwYWdlKHNkcCwKIAkJCSAgICAodm9pZCAqKShrdmEgKyAodnNpemVf
 dClpKlBBR0VfU0laRSksIHMpOwogCQl9Ci0JfSB3aGlsZSAoMCk7CisJfQogb3V0OgogCS8qCiAJ
 ICoga2lsbCB0aGUgcGFnZXIgbWFwcGluZwpAQCAtMjE3MSwxMiArMjEzNiw0NCBAQCB1dm1fc3dh
 cF9kZWNyeXB0cGFnZShzdHJ1Y3Qgc3dhcGRldiAqc2RwLCB2b2lkICprdmEsIGludCBzbG90KQog
 CWV4cGxpY2l0X21lbXNldCgmaXYsIDAsIHNpemVvZiBpdik7CiB9CiAKK3N0YXRpYyBpbnQKK3N5
 c2N0bF9rZXJuX3V2bV9zd2FwX2VuY3J5dHAoU1lTQ1RMRk5fQVJHUykKK3sKKwlzdHJ1Y3Qgc3lz
 Y3Rsbm9kZSBub2RlOworCWludCBzd2FwX2VuY3J5cHQgPSB1dm1fc3dhcF9lbmNyeXB0OworCWlu
 dCBlcnJvcjsKKworCW5vZGUgPSAqcm5vZGU7CisJbm9kZS5zeXNjdGxfZGF0YSA9ICZzd2FwX2Vu
 Y3J5cHQ7CisJZXJyb3IgPSBzeXNjdGxfbG9va3VwKFNZU0NUTEZOX0NBTEwoJm5vZGUpKTsKKwlp
 ZiAoZXJyb3IgIT0gMCB8fCBuZXdwID09IE5VTEwpIHsKKwkJcmV0dXJuIGVycm9yOworCX0KKwkv
 KgorCSAqIGFsbG93IGEgY2hhbmdlIG9ubHkgd2hlbiBubyBzd2FwIGlzIGNvbmZpZ3VyZWQgdG8g
 ZW5zdXJlCisJICogdGhhdCB1dm1fc3dhcF9lbmNyeXB0IGlzIGEgY29uc3RhbnQgZnJvbSB0aGUg
 UE9WIG9mCisJICogYW55IHN3YXAgZGV2aWNlcy4KKwkgKi8KKwllcnJvciA9IDA7CisJbXV0ZXhf
 ZW50ZXIoJnV2bV9zd2FwX2RhdGFfbG9jayk7CisJaWYgKHV2bV9zd2FwX2VuY3J5cHQgIT0gc3dh
 cF9lbmNyeXB0KSB7CisJCWlmIChMSVNUX0VNUFRZKCZzd2FwX3ByaW9yaXR5KSkgeworCQkJdXZt
 X3N3YXBfZW5jcnlwdCA9IHN3YXBfZW5jcnlwdDsKKwkJfSBlbHNlIHsKKwkJCWVycm9yID0gRUJV
 U1k7CisJCX0KKwl9CisJbXV0ZXhfZXhpdCgmdXZtX3N3YXBfZGF0YV9sb2NrKTsKKworCXJldHVy
 biBlcnJvcjsKK30KKwogU1lTQ1RMX1NFVFVQKHN5c2N0bF91dm1zd2FwX3NldHVwLCAic3lzY3Rs
 IHV2bXN3YXAgc2V0dXAiKQogewogCiAJc3lzY3RsX2NyZWF0ZXYoY2xvZywgMCwgTlVMTCwgTlVM
 TCwKIAkgICAgQ1RMRkxBR19QRVJNQU5FTlR8Q1RMRkxBR19SRUFEV1JJVEUsIENUTFRZUEVfQk9P
 TCwgInN3YXBfZW5jcnlwdCIsCiAJICAgIFNZU0NUTF9ERVNDUigiRW5jcnlwdCBkYXRhIHdoZW4g
 c3dhcHBlZCBvdXQgdG8gZGlzayIpLAotCSAgICBOVUxMLCAwLCAmdXZtX3N3YXBfZW5jcnlwdCwg
 MCwKKwkgICAgc3lzY3RsX2tlcm5fdXZtX3N3YXBfZW5jcnl0cCwgMCwgTlVMTCwgMCwKIAkgICAg
 Q1RMX1ZNLCBDVExfQ1JFQVRFLCBDVExfRU9MKTsKIH0K
 --0000000000008297cd064d342a06--
 



Home | Main Index | Thread Index | Old Index