lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Thu, 18 Jan 2024 09:30:12 +0100
From: Thomas Zimmermann <tzimmermann@...e.de>
To: "Jiri Slaby (SUSE)" <jirislaby@...nel.org>, gregkh@...uxfoundation.org
Cc: linux-fbdev@...r.kernel.org, linux-parisc@...r.kernel.org,
 Helge Deller <deller@....de>, linux-kernel@...r.kernel.org,
 dri-devel@...ts.freedesktop.org,
 "James E.J. Bottomley" <James.Bottomley@...senPartnership.com>,
 linux-serial@...r.kernel.org
Subject: Re: [PATCH 31/45] tty: vt: use VESA blanking constants

Hi

Am 18.01.24 um 08:57 schrieb Jiri Slaby (SUSE):
> There are VESA blanking constants defined in console.h already. So use
> them in the console code instead of constant values.

These constants also exist in include/uapi/linux/fb.h. It would be nice 
to find a common header where they can be shared.

Best regards
Thomas

> 
> Signed-off-by: Jiri Slaby (SUSE) <jirislaby@...nel.org>
> Cc: Helge Deller <deller@....de>
> Cc: "James E.J. Bottomley" <James.Bottomley@...senPartnership.com>
> Cc: linux-fbdev@...r.kernel.org
> Cc: dri-devel@...ts.freedesktop.org
> Cc: linux-parisc@...r.kernel.org
> ---
>   drivers/tty/vt/vt.c                 | 9 +++++----
>   drivers/video/console/newport_con.c | 2 +-
>   drivers/video/console/sticon.c      | 2 +-
>   drivers/video/console/vgacon.c      | 6 +++---
>   4 files changed, 10 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/tty/vt/vt.c b/drivers/tty/vt/vt.c
> index 279f802aa222..6f46fefedcfb 100644
> --- a/drivers/tty/vt/vt.c
> +++ b/drivers/tty/vt/vt.c
> @@ -4334,7 +4334,7 @@ static int set_vesa_blanking(u8 __user *mode_user)
>   		return -EFAULT;
>   
>   	console_lock();
> -	vesa_blank_mode = (mode < 4) ? mode : 0;
> +	vesa_blank_mode = (mode < 4) ? mode : VESA_NO_BLANKING;
>   	console_unlock();
>   
>   	return 0;
> @@ -4361,7 +4361,7 @@ void do_blank_screen(int entering_gfx)
>   	if (entering_gfx) {
>   		hide_cursor(vc);
>   		save_screen(vc);
> -		vc->vc_sw->con_blank(vc, 1, 1);
> +		vc->vc_sw->con_blank(vc, VESA_VSYNC_SUSPEND, 1);
>   		console_blanked = fg_console + 1;
>   		blank_state = blank_off;
>   		set_origin(vc);
> @@ -4382,7 +4382,8 @@ void do_blank_screen(int entering_gfx)
>   
>   	save_screen(vc);
>   	/* In case we need to reset origin, blanking hook returns 1 */
> -	i = vc->vc_sw->con_blank(vc, vesa_off_interval ? 1 : (vesa_blank_mode + 1), 0);
> +	i = vc->vc_sw->con_blank(vc, vesa_off_interval ? VESA_VSYNC_SUSPEND :
> +				 (vesa_blank_mode + 1), 0);
>   	console_blanked = fg_console + 1;
>   	if (i)
>   		set_origin(vc);
> @@ -4433,7 +4434,7 @@ void do_unblank_screen(int leaving_gfx)
>   	}
>   
>   	console_blanked = 0;
> -	if (vc->vc_sw->con_blank(vc, 0, leaving_gfx))
> +	if (vc->vc_sw->con_blank(vc, VESA_NO_BLANKING, leaving_gfx))
>   		/* Low-level driver cannot restore -> do it ourselves */
>   		update_screen(vc);
>   	if (console_blank_hook)
> diff --git a/drivers/video/console/newport_con.c b/drivers/video/console/newport_con.c
> index 039d1c9937d2..ad3a09142770 100644
> --- a/drivers/video/console/newport_con.c
> +++ b/drivers/video/console/newport_con.c
> @@ -480,7 +480,7 @@ static int newport_blank(struct vc_data *c, int blank, int mode_switch)
>   {
>   	unsigned short treg;
>   
> -	if (blank == 0) {
> +	if (blank == VESA_NO_BLANKING) {
>   		/* unblank console */
>   		treg = newport_vc2_get(npregs, VC2_IREG_CONTROL);
>   		newport_vc2_set(npregs, VC2_IREG_CONTROL,
> diff --git a/drivers/video/console/sticon.c b/drivers/video/console/sticon.c
> index f3bb48a0e980..817b89c45e81 100644
> --- a/drivers/video/console/sticon.c
> +++ b/drivers/video/console/sticon.c
> @@ -300,7 +300,7 @@ static bool sticon_switch(struct vc_data *conp)
>   
>   static int sticon_blank(struct vc_data *c, int blank, int mode_switch)
>   {
> -    if (blank == 0) {
> +    if (blank == VESA_NO_BLANKING) {
>   	if (mode_switch)
>   	    vga_is_gfx = 0;
>   	return 1;
> diff --git a/drivers/video/console/vgacon.c b/drivers/video/console/vgacon.c
> index 5025ab501f02..910dc73874b7 100644
> --- a/drivers/video/console/vgacon.c
> +++ b/drivers/video/console/vgacon.c
> @@ -800,10 +800,10 @@ static void vga_pal_blank(struct vgastate *state)
>   static int vgacon_blank(struct vc_data *c, int blank, int mode_switch)
>   {
>   	switch (blank) {
> -	case 0:		/* Unblank */
> +	case VESA_NO_BLANKING:		/* Unblank */
>   		if (vga_vesa_blanked) {
>   			vga_vesa_unblank(&vgastate);
> -			vga_vesa_blanked = 0;
> +			vga_vesa_blanked = VESA_NO_BLANKING;
>   		}
>   		if (vga_palette_blanked) {
>   			vga_set_palette(c, color_table);
> @@ -813,7 +813,7 @@ static int vgacon_blank(struct vc_data *c, int blank, int mode_switch)
>   		vga_is_gfx = false;
>   		/* Tell console.c that it has to restore the screen itself */
>   		return 1;
> -	case 1:		/* Normal blanking */
> +	case VESA_VSYNC_SUSPEND:	/* Normal blanking */
>   		if (!mode_switch && vga_video_type == VIDEO_TYPE_VGAC) {
>   			vga_pal_blank(&vgastate);
>   			vga_palette_blanked = true;

-- 
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstrasse 146, 90461 Nuernberg, Germany
GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman
HRB 36809 (AG Nuernberg)

Download attachment "OpenPGP_signature.asc" of type "application/pgp-signature" (841 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ