21 października 2026 r. Phoronix poinformował, że Linus Torvalds scalił zmianę usuwającą __get_user() i __put_user() w Linux 7.4. Według tej relacji funkcje znikają z kodu wspólnego jądra, a ich usuwanie dla x86 i x86_64 zostaje zakończone. Niektóre inne architektury zachowują pozostałości tych interfejsów.
Jakiego zakresu dotyczy zmiana
__get_user() i __put_user() służą do kopiowania pojedynczej prostej wartości między przestrzenią użytkownika a jądra: pierwsza funkcja pobiera wartość do jądra, druga zapisuje ją w przestrzeni użytkownika. Linus Torvalds uzasadniał usunięcie tym, że stare funkcje nie sprawdzają zakresu adresu użytkownika. Wskazywał też, że nowsze interfejsy są łatwiejsze w użyciu dzięki pomocnikom ograniczającym dostęp do pamięci użytkownika.
Według Phoronix funkcje ARM64 już wcześniej mapowały się na get_user() i put_user(). Relacja nie wymienia wszystkich architektur, w których pozostały starsze fragmenty.
Co wymagała dokumentacja Linux 5.5
Dokumentacja API Linux 5.5 mówi, że przed wywołaniem __get_user() lub __put_user() osoba wywołująca musi sprawdzić wskaźnik za pomocą access_ok(). Opisuje też get_user() i put_user() jako funkcje kopiujące jedną prostą wartość: zwracają zero po powodzeniu albo -EFAULT w razie błędu. Dokumentacja zarządzania pamięcią Linux 5.5 przedstawia ten kontrakt dla wersji 5.5.