🇰🇷 한글 설명
Linux 커널의 raa215300 레귤레이터 드라이버에서 오류 발생 시 리소스 누수가 발생하는 문제가 해결되었습니다. clk_register_clkdev()가 할당한 메모리와 clk_register_fixed_rate()가 할당한 리소스가 에러 경로에서 해제되지 않았으며, 이를 devm 기반 함수로 교체하여 수정했습니다.
💡 쉬운 설명
드라이버 초기화 중 오류가 나면 일부 메모리가 반환되지 않고 남아 시스템 자원이 조금씩 낭비될 수 있습니다. 이 문제는 자원을 자동으로 정리하는 방식으로 수정되었습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
regulator: raa215300: Fix resource leak in case of error
The clk_register_clkdev() allocates memory by calling vclkdev_alloc() and
this memory is not freed in the error path. Similarly, resources allocated
by clk_register_fixed_rate() are not freed in the error path.
Fix these issues by using devm_clk_hw_register_fixed_rate() and
devm_clk_hw_register_clkdev().
After this, the static variable clk is not needed. Replace it with
local variable hw in probe() and drop calling clk_unregister_fixed_rate()
from raa215300_rtc_unregister_device().
📍 영향받는 시스템
CVSS 점수 미정; 수정 전 Linux 커널 (raa215300 레귤레이터 드라이버를 사용하는 빌드)
⚔️ 공격 벡터
공격 벡터 정보 없음; 드라이버 초기화 오류 경로에서 발생하는 로컬 자원 누수 결함
🛡️ 대응 방법
해당 수정이 포함된 최신 Linux 커널 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전을 배포판 보안 공지 또는 커널 업스트림 패치 이력과 대조하여 수정 커밋이 포함되었는지 확인하며, 해당 드라이버 사용 여부는 lsmod | grep raa215300 으로 확인할 수 있습니다.