Android 13, istenen bilgiyi iletebilmek amacıyla kullanıcı alanı için bir ABI sunar MTE modunu bootloader'a yükseltin. Bu özellik, şu cihazlarda MTE'yi etkinleştirmek için kullanılabilir: donanım desteği vardır ancak MTE varsayılan olarak etkin şekilde gönderilmez. birlikte gönderilen cihazlarda MTE'yi devre dışı bırakın.
Bootloader desteği
Bu ABI'yi desteklemek için bootloader'ınızın
misc_memtag_message
(tanımlımı:
bootloader_message.h) kaldırın.misc
Geçerli bir misc_memtag_message
bulunursa
(MISC_VIRTUAL_AB_MAGIC_HEADER
eşleşiyor ve sürüm numarası destekleniyor).
Bootloader'ın bunu
memtag = (default_memtag && !(misc.memtag_mode ve MISC_MEMTAG_MODE_MEMTAG_OFF)) || çeşitli MISC_MEMTAG_MODE_MEMTAG || çeşitli MISC_MEMTAG_MODE_MEMTAG_ONCE memtag_kernel = misc.memtag_mode & MISC_MEMTAG_MODE_MEMTAG_KERNEL || çeşitli MISC_MEMTAG_MODE_MEMTAG_KERNEL_ONCE
default_memtag
, şunun için varsayılan memtag açma/kapatma ayarıdır:
SKU. memtag
doğru değerine ayarlanırsa bootloader MTE etiketini ayarlar
daha düşük istisna düzeylerinde etiket kontrollerini etkinleştirir ve
etiketin ayrılmış bölgeyi DT aracılığıyla çekirdeğe bildirir. Eğer
memtag
yanlıştır. Bootloader, arm64.nomte değerini
kernel komut satırını kullanın.
memtag_kernel
doğru değerine ayarlanırsa bootloader
kasan=on
komutunu çekirdek komut satırına ekleyin.
Bootloader MUTLU MISC_MEMTAG_MODE_MEMTAG_ONCE
ve
Her başlatmada MISC_MEMTAG_MODE_MEMTAG_KERNEL_ONCE
.
Bootloader fastboot oem mte
özelliğini destekliyorsa setlerde
MISC_MEMTAG_MODE_{MEMTAG, MEMTAG_ONLY, MEMTAG_OFF}
-
(1, 0, 0)
üzerinden başlayıp (0, 0, 1)
boyunca
korunduğundan emin olun.
Ürününüzü, mtectrl
ikili programını oluşturacak şekilde yapılandırmanız gerekir
kullanıyor. Ardından,
Belirtecek ro.arm64.memtag.bootctl_supported
sistem özelliği
bunu bootloader'ınızın memtag mesajını desteklediğini sisteme bağlayın.
Kullanıcı arayüzü
ro.arm64.memtag.bootctl_supported
özelliği ayarlandığında
Geliştirici Seçenekleri menüsündeki düğmesi, kullanıcının MTE ile bir kez yeniden başlatmasına olanak tanır
etkin. Bunun hedef kitlesi, uygulamanızı veya oyununuzu
MTE ile kullanıyor.
Sistem özelliği
Gelişmiş kullanım için, sistem özelliği
arm64.memtag.bootctl
,
şu değerlere sahiptir:
-
memtag: kullanıcı alanı MTE'sini kalıcı olarak etkinleştirin (
MISC_MEMTAG_MODE_MEMTAG
) -
memtag-bir kez: kullanıcı alanı MTE'sini bir kez etkinleştirir (
MISC_MEMTAG_MODE_MEMTAG_ONCE
) -
memtag-kernel: çekirdek alanı MTE'sini etkinleştir (
MISC_MEMTAG_MODE_MEMTAG_KERNEL
) -
memtag-çekirdek-bir kez: çekirdek alanı MTE'sini bir kez etkinleştirin
(
MISC_MEMTAG_MODE_MEMTAG_KERNEL_ONCE
) -
memtag-off: MTE'yi devre dışı bırak (
MISC_MEMTAG_MODE_MEMTAG_OFF
)
Yeni ayarın geçerlilik kazanması için sistemin yeniden başlatılması gerekir (şu anki haliyle tarafından uygulanır).