Applied. Thanks! Alex
On Wed, Jul 6, 2022 at 5:40 PM Mateusz Jończyk <[email protected]> wrote: > > I was getting the following message on boot on Linux 5.19-rc5: > radeon 0000:01:05.0: vram limit (0) must be a power of 2 > (I didn't use any radeon.vramlimit commandline parameter). > > This is caused by > commit 8c2d34eb53b9 ("drm/radeon: use kernel is_power_of_2 rather than local > version") > which removed radeon_check_pot_argument() and converted its users to > is_power_of_2(). The two functions differ in its handling of 0, which is > the default value of radeon_vram_limit: radeon_check_pot_argument() > "incorrectly" considered it a power of 2, while is_power_of_2() does not. > > An appropriate conditional silences the warning message. > > It is not necessary to add a similar test to other callers of > is_power_of_2() in radeon_device.c. The matching commit in amdgpu: > commit 761175078466 ("drm/amdgpu: use kernel is_power_of_2 rather than local > version") > is unaffected by this bug. > > Tested on Radeon HD 3200. > > Not ccing stable, this is not serious enough. > > Fixes: 8c2d34eb53b9 ("drm/radeon: use kernel is_power_of_2 rather than local > version") > Cc: Alex Deucher <[email protected]> > Cc: Christian König <[email protected]> > Cc: "Pan, Xinhui" <[email protected]> > Cc: David Airlie <[email protected]> > Cc: Daniel Vetter <[email protected]> > Cc: Jonathan Gray <[email protected]> > Signed-off-by: Mateusz Jończyk <[email protected]> > --- > drivers/gpu/drm/radeon/radeon_device.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/radeon/radeon_device.c > b/drivers/gpu/drm/radeon/radeon_device.c > index 15692cb241fc..429644d5ddc6 100644 > --- a/drivers/gpu/drm/radeon/radeon_device.c > +++ b/drivers/gpu/drm/radeon/radeon_device.c > @@ -1113,7 +1113,7 @@ static int radeon_gart_size_auto(enum radeon_family > family) > static void radeon_check_arguments(struct radeon_device *rdev) > { > /* vramlimit must be a power of two */ > - if (!is_power_of_2(radeon_vram_limit)) { > + if (radeon_vram_limit != 0 && !is_power_of_2(radeon_vram_limit)) { > dev_warn(rdev->dev, "vram limit (%d) must be a power of 2\n", > radeon_vram_limit); > radeon_vram_limit = 0; > > base-commit: 88084a3df1672e131ddc1b4e39eeacfd39864acf > -- > 2.25.1 >
