From: Stefan Agner <stefan@agner.ch>
To: "Michel Dänzer" <michel@daenzer.net>
Cc: linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org
Subject: Re: [PATCH] drm/fb-helper: Allow var->x/yres(_virtual) < fb->width/height again
Date: Thu, 23 Mar 2017 17:42:28 -0700 [thread overview]
Message-ID: <59e7ade50d352fd3fe9ab6b6f9fe1322@agner.ch> (raw)
In-Reply-To: <20170323085326.20185-1-michel@daenzer.net>
On 2017-03-23 01:53, Michel Dänzer wrote:
> From: Michel Dänzer <michel.daenzer@amd.com>
>
> Otherwise this can also prevent modesets e.g. for switching VTs, when
> multiple monitors with different native resolutions are connected.
When changing resolution a regular fbdev driver also changes display
timing accordingly (fb_var_screeninfo contains timings as well). The
fbdev emulation layer does not change timing, so that was the idea why
my patch also rejected any kind of change to the resolution... In the
end it is really a definition of the semantics of that userspace API
(FBIOPUT_VSCREENINFO) and how true DRM emulates them...
Using less of the available framebuffer seems safe, especially since
line width is handled by pitch/line_length.
As far as I remember my case was a fbdev application which fiddled with
bpp/depth, which lead to a totally messed up outcome... So my use case
will still be fine with your change.
I am ok with relaxing that again, so from my side:
Acked-by: Stefan Agner <stefan@agner.ch>
--
Stefan
>
> The depths must match though, so keep the != test for that.
>
> Also update the DRM_DEBUG output to be slightly more accurate, this
> doesn't only affect requests from userspace.
>
> Bugzilla: https://bugs.freedesktop.org/99841
> Fixes: 865afb11949e ("drm/fb-helper: reject any changes to the fbdev")
> Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
> ---
> drivers/gpu/drm/drm_fb_helper.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c
> index f6d4d9700734..324a688b3f30 100644
> --- a/drivers/gpu/drm/drm_fb_helper.c
> +++ b/drivers/gpu/drm/drm_fb_helper.c
> @@ -1260,9 +1260,9 @@ int drm_fb_helper_check_var(struct fb_var_screeninfo *var,
> * to KMS, hence fail if different settings are requested.
> */
> if (var->bits_per_pixel != fb->format->cpp[0] * 8 ||
> - var->xres != fb->width || var->yres != fb->height ||
> - var->xres_virtual != fb->width || var->yres_virtual != fb->height) {
> - DRM_DEBUG("fb userspace requested width/height/bpp different than
> current fb "
> + var->xres > fb->width || var->yres > fb->height ||
> + var->xres_virtual > fb->width || var->yres_virtual > fb->height) {
> + DRM_DEBUG("fb requested width/height/bpp can't fit in current fb "
> "request %dx%d-%d (virtual %dx%d) > %dx%d-%d\n",
> var->xres, var->yres, var->bits_per_pixel,
> var->xres_virtual, var->yres_virtual,
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
prev parent reply other threads:[~2017-03-24 0:42 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-03-16 9:55 [PATCH] drm/fb-helper: Only reject FB changes if FB_MISC_USER_EVENT is set Michel Dänzer
2017-03-16 10:09 ` Ville Syrjälä
2017-03-17 9:01 ` Michel Dänzer
2017-03-17 10:01 ` Ville Syrjälä
2017-03-17 10:19 ` Michel Dänzer
2017-03-17 11:13 ` Ville Syrjälä
2017-03-21 3:24 ` Michel Dänzer
2017-03-16 10:09 ` Daniel Stone
2017-03-17 8:54 ` Michel Dänzer
2017-03-23 8:53 ` [PATCH] drm/fb-helper: Allow var->x/yres(_virtual) < fb->width/height again Michel Dänzer
2017-03-23 12:01 ` Daniel Stone
2017-03-23 13:59 ` Daniel Vetter
2017-03-24 0:42 ` Stefan Agner [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=59e7ade50d352fd3fe9ab6b6f9fe1322@agner.ch \
--to=stefan@agner.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=linux-kernel@vger.kernel.org \
--cc=michel@daenzer.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).