Skip to content

Commit 7f09a3a

Browse files
azeemshaikh38kees
authored andcommitted
drm/amd/pm: Replace all non-returning strlcpy with strscpy
strlcpy() reads the entire source buffer first. This read may exceed the destination size limit. This is both inefficient and can lead to linear read overflows if a source string is not NUL-terminated [1]. In an effort to remove strlcpy() completely [2], replace strlcpy() here with strscpy(). No return values were used, so direct replacement is safe. [1] https://www.kernel.org/doc/html/latest/process/deprecated.html#strlcpy [2] KSPP#89 Signed-off-by: Azeem Shaikh <azeemshaikh38@gmail.com> Acked-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Kees Cook <keescook@chromium.org> Signed-off-by: Kees Cook <keescook@chromium.org> Link: https://lore.kernel.org/r/20230522155245.2336818-1-azeemshaikh38@gmail.com
1 parent 992b8fe commit 7f09a3a

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -794,7 +794,7 @@ void amdgpu_add_thermal_controller(struct amdgpu_device *adev)
794794
struct i2c_board_info info = { };
795795
const char *name = pp_lib_thermal_controller_names[controller->ucType];
796796
info.addr = controller->ucI2cAddress >> 1;
797-
strlcpy(info.type, name, sizeof(info.type));
797+
strscpy(info.type, name, sizeof(info.type));
798798
i2c_new_client_device(&adev->pm.i2c_bus->adapter, &info);
799799
}
800800
} else {

0 commit comments

Comments
 (0)