diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | 9 | 
1 files changed, 6 insertions, 3 deletions
| diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c index ebb8a28ff002..02e6f8c4dde0 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c @@ -778,7 +778,8 @@ static ssize_t amdgpu_set_pp_od_clk_voltage(struct device *dev,  		tmp_str++;  	while (isspace(*++tmp_str)); -	while ((sub_str = strsep(&tmp_str, delimiter)) != NULL) { +	while (tmp_str[0]) { +		sub_str = strsep(&tmp_str, delimiter);  		ret = kstrtol(sub_str, 0, ¶meter[parameter_size]);  		if (ret)  			return -EINVAL; @@ -1038,7 +1039,8 @@ static ssize_t amdgpu_read_mask(const char *buf, size_t count, uint32_t *mask)  	memcpy(buf_cpy, buf, bytes);  	buf_cpy[bytes] = '\0';  	tmp = buf_cpy; -	while ((sub_str = strsep(&tmp, delimiter)) != NULL) { +	while (tmp[0]) { +		sub_str = strsep(&tmp, delimiter);  		if (strlen(sub_str)) {  			ret = kstrtol(sub_str, 0, &level);  			if (ret) @@ -1635,7 +1637,8 @@ static ssize_t amdgpu_set_pp_power_profile_mode(struct device *dev,  			i++;  		memcpy(buf_cpy, buf, count-i);  		tmp_str = buf_cpy; -		while ((sub_str = strsep(&tmp_str, delimiter)) != NULL) { +		while (tmp_str[0]) { +			sub_str = strsep(&tmp_str, delimiter);  			ret = kstrtol(sub_str, 0, ¶meter[parameter_size]);  			if (ret)  				return -EINVAL; |