From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Antonino A. Daplas" Subject: Re: [PATCH] fbdev: Fix usage of blank value passed to fb_blank Date: Mon, 30 Jan 2006 07:34:38 +0800 Message-ID: <43DD510E.9090404@gmail.com> References: <20060127231314.GA28324@hansmi.ch> <20060127.204645.96477793.davem@davemloft.net> <43DB0839.6010703@gmail.com> <200601282106.21664.ioe-lkml@rameria.de> <43DC25EB.1040005@gmail.com> <20060129144228.GA22425@sci.fi> Reply-To: linux-fbdev-devel@lists.sourceforge.net Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Return-path: Received: from sc8-sf-mx2-b.sourceforge.net ([10.3.1.92] helo=mail.sourceforge.net) by sc8-sf-list1.sourceforge.net with esmtp (Exim 4.30) id 1F3M4R-0001QT-Lf for linux-fbdev-devel@lists.sourceforge.net; Sun, 29 Jan 2006 15:34:59 -0800 Received: from xproxy.gmail.com ([66.249.82.200]) by mail.sourceforge.net with esmtp (Exim 4.44) id 1F3M4Q-0004iC-DR for linux-fbdev-devel@lists.sourceforge.net; Sun, 29 Jan 2006 15:34:59 -0800 Received: by xproxy.gmail.com with SMTP id h29so599925wxd for ; Sun, 29 Jan 2006 15:34:56 -0800 (PST) In-Reply-To: <20060129144228.GA22425@sci.fi> Sender: linux-fbdev-devel-admin@lists.sourceforge.net Errors-To: linux-fbdev-devel-admin@lists.sourceforge.net List-Unsubscribe: , List-Id: List-Post: List-Help: List-Subscribe: , List-Archive: Content-Type: text/plain; charset="iso-8859-1" To: linux-fbdev-devel@lists.sourceforge.net, Andrew Morton , Ingo Oeser , linux-kernel@vger.kernel.org, "David S. Miller" , benh@kernel.crashing.org, linux-kernel@hansmi.ch Ville Syrj=E4l=E4 wrote: > On Sun, Jan 29, 2006 at 10:18:19AM +0800, Antonino A. Daplas wrote: >> diff --git a/drivers/video/fbmem.c b/drivers/video/fbmem.c >> index d2dede6..5bed0fb 100644 >> --- a/drivers/video/fbmem.c >> +++ b/drivers/video/fbmem.c >> @@ -843,6 +843,19 @@ fb_blank(struct fb_info *info, int blank >> {=09 >> int ret =3D -EINVAL; >> =20 >> + /* >> + * The framebuffer core supports 5 blanking levels (FB_BLANK), where= as >> + * VESA defined only 4. The extra level, FB_BLANK_NORMAL, is a >> + * console invention and is not related to power management. >> + * Unfortunately, fb_blank callers, especially X, pass VESA constant= s >> + * leading to undefined behavior. >=20 > Since when? X.Org uses numbers 0,2,3,4 which match the FB_BLANK=20 > constants not the VESA constants. >=20 How about if we silently convert FB_BLANK_NORMAL requests to FB_BLANK_VSYNC_SUSPEND, would that work? Tony PS: Soft blanking is very difficult, if not impossible, to implement correctly kernel-side, so we can either fail (current code), silently fail but return success, or convert to the next blank level. ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log fi= les for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=3Dlnk&kid=3D103432&bid=3D230486&dat=3D= 121642 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932082AbWA2Xe6 (ORCPT ); Sun, 29 Jan 2006 18:34:58 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S932080AbWA2Xe6 (ORCPT ); Sun, 29 Jan 2006 18:34:58 -0500 Received: from xproxy.gmail.com ([66.249.82.204]:13220 "EHLO xproxy.gmail.com") by vger.kernel.org with ESMTP id S932082AbWA2Xe5 (ORCPT ); Sun, 29 Jan 2006 18:34:57 -0500 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:user-agent:mime-version:to:subject:references:in-reply-to:content-type:content-transfer-encoding; b=HODGhh/+u7x3Xur0CQ8Hm6cHaIvjMG4aZWsgBMztj842gSc5j+kSkk9e7U9p/sSuwMje3lV1KG1d0GfIlmrap8gXEIOYFBhGE3IU1N+387jBDaHkS7C6ZzsOxW2Zsvt7/gVwD5YRPyYUu5ilvRgnSGJTZ2b6v/FK9yiDtALytqk= Message-ID: <43DD510E.9090404@gmail.com> Date: Mon, 30 Jan 2006 07:34:38 +0800 From: "Antonino A. Daplas" User-Agent: Thunderbird 1.5 (X11/20051201) MIME-Version: 1.0 To: linux-fbdev-devel@lists.sourceforge.net, Andrew Morton , Ingo Oeser , linux-kernel@vger.kernel.org, "David S. Miller" , benh@kernel.crashing.org, linux-kernel@hansmi.ch Subject: Re: [Linux-fbdev-devel] [PATCH] fbdev: Fix usage of blank value passed to fb_blank References: <20060127231314.GA28324@hansmi.ch> <20060127.204645.96477793.davem@davemloft.net> <43DB0839.6010703@gmail.com> <200601282106.21664.ioe-lkml@rameria.de> <43DC25EB.1040005@gmail.com> <20060129144228.GA22425@sci.fi> In-Reply-To: <20060129144228.GA22425@sci.fi> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Ville Syrjälä wrote: > On Sun, Jan 29, 2006 at 10:18:19AM +0800, Antonino A. Daplas wrote: >> diff --git a/drivers/video/fbmem.c b/drivers/video/fbmem.c >> index d2dede6..5bed0fb 100644 >> --- a/drivers/video/fbmem.c >> +++ b/drivers/video/fbmem.c >> @@ -843,6 +843,19 @@ fb_blank(struct fb_info *info, int blank >> { >> int ret = -EINVAL; >> >> + /* >> + * The framebuffer core supports 5 blanking levels (FB_BLANK), whereas >> + * VESA defined only 4. The extra level, FB_BLANK_NORMAL, is a >> + * console invention and is not related to power management. >> + * Unfortunately, fb_blank callers, especially X, pass VESA constants >> + * leading to undefined behavior. > > Since when? X.Org uses numbers 0,2,3,4 which match the FB_BLANK > constants not the VESA constants. > How about if we silently convert FB_BLANK_NORMAL requests to FB_BLANK_VSYNC_SUSPEND, would that work? Tony PS: Soft blanking is very difficult, if not impossible, to implement correctly kernel-side, so we can either fail (current code), silently fail but return success, or convert to the next blank level.