Thanks Sachin. On 22 May 2014 11:38, Sachin Kamat <sachin.kamat@xxxxxxxxxx> wrote: > Hi Rahul, > > On 7 May 2014 17:21, Rahul Sharma <rahul.sharma@xxxxxxxxxxx> wrote: >> From: Rahul Sharma <Rahul.Sharma@xxxxxxxxxxx> >> >> Allow to allocate non-contigous buffers when iommu is enabled. >> Currently, it tries to allocates contigous buffer which consistently >> fail for large buffers and then fall back to non contigous. Apart >> from being slow, this implementation is also very noisy and fills >> the screen with alloc fail logs. >> >> Change-Id: I523e95aa308122ed2edc55e065ae6eb8be996541 > > Not needed. > >> Signed-off-by: Rahul Sharma <Rahul.Sharma@xxxxxxxxxxx> >> --- >> drivers/gpu/drm/exynos/exynos_drm_gem.c | 22 ++++++++++------------ >> 1 file changed, 10 insertions(+), 12 deletions(-) >> >> diff --git a/drivers/gpu/drm/exynos/exynos_drm_gem.c b/drivers/gpu/drm/exynos/exynos_drm_gem.c >> index 5d88924..7136945 100644 >> --- a/drivers/gpu/drm/exynos/exynos_drm_gem.c >> +++ b/drivers/gpu/drm/exynos/exynos_drm_gem.c >> @@ -624,22 +624,20 @@ int exynos_drm_gem_dumb_create(struct drm_file *file_priv, >> args->pitch = args->width * ((args->bpp + 7) / 8); >> args->size = args->pitch * args->height; >> >> - exynos_gem_obj = exynos_drm_gem_create(dev, EXYNOS_BO_CONTIG | >> - EXYNOS_BO_WC, args->size); >> - /* >> - * If physically contiguous memory allocation fails and if IOMMU is >> - * supported then try to get buffer from non physically contiguous >> - * memory area. >> - */ > > This comment could be retained after suitable modification to reflect > current logic. > ok. Posting V2. Regards, Rahul Sharma >> - if (IS_ERR(exynos_gem_obj) && is_drm_iommu_supported(dev)) { >> - dev_warn(dev->dev, "contiguous FB allocation failed, falling back to non-contiguous\n"); >> + if (is_drm_iommu_supported(dev)) { >> + exynos_gem_obj = exynos_drm_gem_create(dev, >> + EXYNOS_BO_NONCONTIG | EXYNOS_BO_WC, >> + args->size); >> + } else { >> exynos_gem_obj = exynos_drm_gem_create(dev, >> - EXYNOS_BO_NONCONTIG | EXYNOS_BO_WC, >> - args->size); >> + EXYNOS_BO_CONTIG | EXYNOS_BO_WC, >> + args->size); >> } >> >> - if (IS_ERR(exynos_gem_obj)) >> + if (IS_ERR(exynos_gem_obj)) { >> + dev_warn(dev->dev, "FB allocation failed.\n"); >> return PTR_ERR(exynos_gem_obj); >> + } >> >> ret = exynos_drm_gem_handle_create(&exynos_gem_obj->base, file_priv, >> &args->handle); >> -- >> 1.7.9.5 > > Otherwise looks good. > Reviewed-by: Sachin Kamat <sachin.kamat@xxxxxxxxxx> > > -- > With warm regards, > Sachin -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html