All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Manuel Schölling" <manuel.schoelling@gmx.de>
To: Greg KH <gregkh@linuxfoundation.org>
Cc: jslaby@suse.com, kilobyte@angband.pl, lkml14@scotdoyle.com,
	rdunlap@infradead.org, shorne@gmail.com,
	andrey_utkin@fastmail.com, akpm@linux-foundation.org,
	paul.burton@imgtec.com, daniel.vetter@ffwll.ch, tj@kernel.org,
	hdegoede@redhat.com, linux-kernel@vger.kernel.org,
	linux-fbdev@vger.kernel.org
Subject: Re: [PATCH v10 3/4] console: Add persistent scrollback buffers for all VGA consoles
Date: Thu, 19 Jan 2017 17:12:15 +0100	[thread overview]
Message-ID: <1484842335.1250.7.camel@gmx.de> (raw)
In-Reply-To: <20170119132352.GB29998@kroah.com>

On Thu, 2017-01-19 at 14:23 +0100, Greg KH wrote:
> On Fri, Jan 13, 2017 at 09:07:57PM +0100, Manuel Schölling wrote:
> > Add a scrollback buffers for each VGA console. The benefit is that
> > the scrollback history is not flushed when switching between
> > consoles
> > but is persistent.
> > The buffers are allocated on demand when a new console is opened.
> > 
> > This breaks tools like clear_console that rely on flushing the
> > scrollback history by switching back and forth between consoles
> > which is why this feature is disabled by default.
> > Use the escape sequence \e[3J instead for flushing the buffer.
> > 
> > Signed-off-by: Manuel Schölling <manuel.schoelling@gmx.de>
> > Reviewed-by: Andrey Utkin <andrey_utkin@fastmail.com>
> > Tested-by: Andrey Utkin <andrey_utkin@fastmail.com>
> > Tested-by: Adam Borowski <kilobyte@angband.pl>
> > ---
> >  drivers/video/console/Kconfig  |  25 +++++++-
> >  drivers/video/console/vgacon.c | 142 ++++++++++++++++++++++++++---
> > ------------
> >  2 files changed, 111 insertions(+), 56 deletions(-)
> > 
> > diff --git a/drivers/video/console/Kconfig
> > b/drivers/video/console/Kconfig
> > index c3f1fb9ee820..f500e58f7636 100644
> > --- a/drivers/video/console/Kconfig
> > +++ b/drivers/video/console/Kconfig
> > @@ -43,9 +43,28 @@ config VGACON_SOFT_SCROLLBACK_SIZE
> >         range 1 1024
> >         default "64"
> >         help
> > -         Enter the amount of System RAM to allocate for the
> > scrollback
> > -	 buffer.  Each 64KB will give you approximately 16 80x25
> > -	 screenfuls of scrollback buffer
> > +	  Enter the amount of System RAM to allocate for
> > scrollback
> > +	  buffers of VGA consoles. Each 64KB will give you
> > approximately
> > +	  16 80x25 screenfuls of scrollback buffer.
> > +
> > +config VGACON_SOFT_SCROLLBACK_PERSISTENT
> > +	bool "Persistent Scrollback History for each console"
> > +	depends on VGACON_SOFT_SCROLLBACK
> > +	default n
> > +	help
> > +	  Say Y here if the scrollback history should persist when
> > switching
> > +	  between consoles. Otherwise, the scrollback history will
> > be flushed
> > +	  each time the console is switched.
> > +
> > +	  This feature might break your tool of choice to flush
> > the scrollback
> > +	  buffer, e.g. clear(1) will work fine but Debian's
> > clear_console(1)
> > +	  will be broken, which might cause security issues.
> > +	  You can use the escape sequence \e[3J instead if this
> > feature is
> > +	  activated.
> 
> This issue is the one that makes me the most worried.  Why doesn't
> clear_console() work anymore?  Why doesn't it use \e[3J ?

Well, clear_console() just switches from one console to another and
back again. It just assumes that the scrollback buffer is flushed when
switching.
My plan is to make a patch for clear_console() as soon as these patches
are in the kernel - it's chicken-and-egg problem.

Bye,

Manuel

WARNING: multiple messages have this Message-ID (diff)
From: "Manuel Schölling" <manuel.schoelling@gmx.de>
To: Greg KH <gregkh@linuxfoundation.org>
Cc: jslaby@suse.com, kilobyte@angband.pl, lkml14@scotdoyle.com,
	rdunlap@infradead.org, shorne@gmail.com,
	andrey_utkin@fastmail.com, akpm@linux-foundation.org,
	paul.burton@imgtec.com, daniel.vetter@ffwll.ch, tj@kernel.org,
	hdegoede@redhat.com, linux-kernel@vger.kernel.org,
	linux-fbdev@vger.kernel.org
Subject: Re: [PATCH v10 3/4] console: Add persistent scrollback buffers for all VGA consoles
Date: Thu, 19 Jan 2017 16:12:15 +0000	[thread overview]
Message-ID: <1484842335.1250.7.camel@gmx.de> (raw)
In-Reply-To: <20170119132352.GB29998@kroah.com>

On Thu, 2017-01-19 at 14:23 +0100, Greg KH wrote:
> On Fri, Jan 13, 2017 at 09:07:57PM +0100, Manuel Schölling wrote:
> > Add a scrollback buffers for each VGA console. The benefit is that
> > the scrollback history is not flushed when switching between
> > consoles
> > but is persistent.
> > The buffers are allocated on demand when a new console is opened.
> > 
> > This breaks tools like clear_console that rely on flushing the
> > scrollback history by switching back and forth between consoles
> > which is why this feature is disabled by default.
> > Use the escape sequence \e[3J instead for flushing the buffer.
> > 
> > Signed-off-by: Manuel Schölling <manuel.schoelling@gmx.de>
> > Reviewed-by: Andrey Utkin <andrey_utkin@fastmail.com>
> > Tested-by: Andrey Utkin <andrey_utkin@fastmail.com>
> > Tested-by: Adam Borowski <kilobyte@angband.pl>
> > ---
> >  drivers/video/console/Kconfig  |  25 +++++++-
> >  drivers/video/console/vgacon.c | 142 ++++++++++++++++++++++++++---
> > ------------
> >  2 files changed, 111 insertions(+), 56 deletions(-)
> > 
> > diff --git a/drivers/video/console/Kconfig
> > b/drivers/video/console/Kconfig
> > index c3f1fb9ee820..f500e58f7636 100644
> > --- a/drivers/video/console/Kconfig
> > +++ b/drivers/video/console/Kconfig
> > @@ -43,9 +43,28 @@ config VGACON_SOFT_SCROLLBACK_SIZE
> >         range 1 1024
> >         default "64"
> >         help
> > -         Enter the amount of System RAM to allocate for the
> > scrollback
> > -	 buffer.  Each 64KB will give you approximately 16 80x25
> > -	 screenfuls of scrollback buffer
> > +	  Enter the amount of System RAM to allocate for
> > scrollback
> > +	  buffers of VGA consoles. Each 64KB will give you
> > approximately
> > +	  16 80x25 screenfuls of scrollback buffer.
> > +
> > +config VGACON_SOFT_SCROLLBACK_PERSISTENT
> > +	bool "Persistent Scrollback History for each console"
> > +	depends on VGACON_SOFT_SCROLLBACK
> > +	default n
> > +	help
> > +	  Say Y here if the scrollback history should persist when
> > switching
> > +	  between consoles. Otherwise, the scrollback history will
> > be flushed
> > +	  each time the console is switched.
> > +
> > +	  This feature might break your tool of choice to flush
> > the scrollback
> > +	  buffer, e.g. clear(1) will work fine but Debian's
> > clear_console(1)
> > +	  will be broken, which might cause security issues.
> > +	  You can use the escape sequence \e[3J instead if this
> > feature is
> > +	  activated.
> 
> This issue is the one that makes me the most worried.  Why doesn't
> clear_console() work anymore?  Why doesn't it use \e[3J ?

Well, clear_console() just switches from one console to another and
back again. It just assumes that the scrollback buffer is flushed when
switching.
My plan is to make a patch for clear_console() as soon as these patches
are in the kernel - it's chicken-and-egg problem.

Bye,

Manuel


  reply	other threads:[~2017-01-19 16:13 UTC|newest]

Thread overview: 143+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-12-04 10:53 [PATCH v7 0/3] console: Add persistent scrollback buffers for all VGA consoles Manuel Schölling
2016-12-04 10:53 ` Manuel Schölling
2016-12-04 10:53 ` [PATCH v7 1/3] console: Move scrollback data into its own struct Manuel Schölling
2016-12-04 10:53   ` Manuel Schölling
2016-12-04 10:53 ` [PATCH v7 2/3] console: Add callback to flush scrollback buffer to consw struct Manuel Schölling
2016-12-04 10:53   ` Manuel Schölling
2016-12-04 10:53 ` [PATCH v7 3/3] console: Add persistent scrollback buffers for all VGA consoles Manuel Schölling
2016-12-04 10:53   ` Manuel Schölling
2016-12-06 10:02 ` [PATCH v7 0/3] " Greg KH
2016-12-06 10:02   ` Greg KH
2016-12-06 16:32   ` Manuel Schölling
2016-12-06 16:32     ` Manuel Schölling
2016-12-21 16:37 ` [PATCH RESEND " Manuel Schölling
2016-12-21 16:37   ` Manuel Schölling
2016-12-21 16:37   ` [PATCH RESEND v7 1/3] console: Move scrollback data into its own struct Manuel Schölling
2016-12-21 16:37     ` Manuel Schölling
2016-12-21 16:37   ` [PATCH RESEND v7 2/3] console: Add callback to flush scrollback buffer to consw struct Manuel Schölling
2016-12-21 16:37     ` Manuel Schölling
2016-12-21 16:37   ` [PATCH RESEND v7 3/3] console: Add persistent scrollback buffers for all VGA consoles Manuel Schölling
2016-12-21 16:37     ` Manuel Schölling
2017-01-04 13:54   ` [PATCH RESEND v7 0/3] " Andrey Utkin
2017-01-04 13:54     ` Andrey Utkin
2017-01-05 11:33     ` [PATCH v8 " Manuel Schölling
2017-01-05 11:33       ` Manuel Schölling
2017-01-05 11:33     ` [PATCH v8 1/3] console: Move scrollback data into its own struct Manuel Schölling
2017-01-05 11:33       ` Manuel Schölling
2017-01-05 11:33     ` [PATCH v8 2/3] console: Add callback to flush scrollback buffer to consw struct Manuel Schölling
2017-01-05 11:33       ` Manuel Schölling
2017-01-05 11:33     ` [PATCH v8 3/3] console: Add persistent scrollback buffers for all VGA consoles Manuel Schölling
2017-01-05 11:33       ` Manuel Schölling
     [not found]       ` <CGME20170110162224epcas1p2095912fa6b73a1457fa86396149e78e9@epcas1p2.samsung.com>
2017-01-10 16:22         ` Bartlomiej Zolnierkiewicz
2017-01-10 16:22           ` Bartlomiej Zolnierkiewicz
     [not found]           ` <CGME20170110164435epcas1p314efb9c6ea3ffb971fce06f3bfaec736@epcas1p3.samsung.com>
2017-01-10 16:44             ` Bartlomiej Zolnierkiewicz
2017-01-10 16:44               ` Bartlomiej Zolnierkiewicz
2017-01-10 17:31               ` Manuel Schölling
2017-01-10 17:31                 ` Manuel Schölling
2017-01-10 21:28               ` [PATCH v9 0/4] " Manuel Schölling
2017-01-10 21:28                 ` Manuel Schölling
2017-01-10 21:28               ` [PATCH v9 1/4] console: Move scrollback data into its own struct Manuel Schölling
2017-01-10 21:28                 ` Manuel Schölling
2017-01-10 21:28               ` [PATCH v9 2/4] console: Add callback to flush scrollback buffer to consw struct Manuel Schölling
2017-01-10 21:28                 ` Manuel Schölling
2017-01-10 21:28               ` [PATCH v9 3/4] console: Add persistent scrollback buffers for all VGA consoles Manuel Schölling
2017-01-10 21:28                 ` Manuel Schölling
2017-01-10 21:28               ` [PATCH v9 4/4] console: Make persistent scrollback a boot parameter Manuel Schölling
2017-01-10 21:28                 ` Manuel Schölling
2017-01-10 22:58                 ` Adam Borowski
2017-01-10 22:58                   ` Adam Borowski
2017-01-11 21:41                   ` Manuel Schölling
2017-01-11 21:41                     ` Manuel Schölling
2017-01-13 20:00                   ` Manuel Schölling
2017-01-13 20:00                     ` Manuel Schölling
2017-01-14  7:26                     ` Greg KH
2017-01-14  7:26                       ` Greg KH
2017-01-11 13:32                 ` kbuild test robot
2017-01-11 13:32                   ` kbuild test robot
2017-01-13 20:07                   ` [PATCH v10 0/4] console: Add persistent scrollback buffers for all VGA consoles Manuel Schölling
2017-01-13 20:07                     ` Manuel Schölling
2017-01-25 10:55                     ` Greg KH
2017-01-25 10:55                       ` Greg KH
2017-01-13 20:07                   ` [PATCH v10 1/4] console: Move scrollback data into its own struct Manuel Schölling
2017-01-13 20:07                     ` Manuel Schölling
2017-01-13 20:07                   ` [PATCH v10 2/4] console: Add callback to flush scrollback buffer to consw struct Manuel Schölling
2017-01-13 20:07                     ` Manuel Schölling
2017-01-13 20:07                   ` [PATCH v10 3/4] console: Add persistent scrollback buffers for all VGA consoles Manuel Schölling
2017-01-13 20:07                     ` Manuel Schölling
2017-01-19 13:23                     ` Greg KH
2017-01-19 13:23                       ` Greg KH
2017-01-19 16:12                       ` Manuel Schölling [this message]
2017-01-19 16:12                         ` Manuel Schölling
2017-01-19 16:33                         ` Greg KH
2017-01-19 16:33                           ` Greg KH
2017-01-19 23:04                           ` Adam Borowski
2017-01-19 23:04                             ` Adam Borowski
2017-01-20 13:16                             ` Adam Borowski
2017-01-20 13:16                               ` Adam Borowski
2017-01-20 13:31                               ` Greg KH
2017-01-20 13:31                                 ` Greg KH
2017-01-20 14:27                                 ` Adam Borowski
2017-01-20 14:27                                   ` Adam Borowski
2017-01-19 17:20                         ` Adam Borowski
2017-01-19 17:20                           ` Adam Borowski
2017-01-13 20:07                   ` [PATCH v10 4/4] console: Make persistent scrollback a boot parameter Manuel Schölling
2017-01-13 20:07                     ` Manuel Schölling
2017-02-02 20:07                 ` [PATCH v9 " Paul Gortmaker
2017-02-02 20:07                   ` Paul Gortmaker
2017-02-03 16:04                   ` Manuel Schölling
2017-02-03 16:04                     ` Manuel Schölling
2017-02-03 16:45                     ` Adam Borowski
2017-02-03 16:45                       ` Adam Borowski
2017-01-02 14:27 ` [PATCH RESEND v7 0/3] console: Add persistent scrollback buffers for all VGA consoles Manuel Schölling
2017-01-02 14:27   ` Manuel Schölling
2017-01-02 14:27   ` [PATCH RESEND v7 1/3] console: Move scrollback data into its own struct Manuel Schölling
2017-01-02 14:27     ` Manuel Schölling
2017-01-02 14:27   ` [PATCH RESEND v7 2/3] console: Add callback to flush scrollback buffer to consw struct Manuel Schölling
2017-01-02 14:27     ` Manuel Schölling
2017-01-02 14:27   ` [PATCH RESEND v7 3/3] console: Add persistent scrollback buffers for all VGA consoles Manuel Schölling
2017-01-02 14:27     ` Manuel Schölling
     [not found] <20161118005309.GC26324@dell-m4800.home>
2016-11-20 21:58 ` [PATCH v5 0/2] console: Add persistent scrollback buffers for all VGA console Manuel Schölling
2016-11-20 21:58   ` Manuel Schölling
2016-11-20 21:58   ` [PATCH v5 1/2] console: Move scrollback data into its own struct Manuel Schölling
2016-11-20 21:58     ` Manuel Schölling
2016-11-20 21:58   ` [PATCH v5 2/2] console: Add persistent scrollback buffers for all VGA consoles Manuel Schölling
2016-11-20 21:58     ` Manuel Schölling
2016-11-20 22:23     ` kbuild test robot
2016-11-20 22:23       ` kbuild test robot
2016-11-21 20:17     ` Adam Borowski
2016-11-21 20:17       ` Adam Borowski
2016-11-22 16:56       ` Manuel Schölling
2016-11-22 16:56         ` Manuel Schölling
2016-11-23 17:33         ` Adam Borowski
2016-11-23 17:33           ` Adam Borowski
2016-11-27 16:51           ` [PATCH v7 0/3] " Manuel Schölling
2016-11-27 16:51             ` Manuel Schölling
2016-11-27 16:51             ` [PATCH v7 1/3] console: Move scrollback data into its own struct Manuel Schölling
2016-11-27 16:51               ` Manuel Schölling
2016-11-27 16:51             ` [PATCH v7 2/3] console: Add callback to flush scrollback buffer to consw struct Manuel Schölling
2016-11-27 16:51               ` Manuel Schölling
2016-11-27 16:51             ` [PATCH v7 3/3] console: Add persistent scrollback buffers for all VGA consoles Manuel Schölling
2016-11-27 16:51               ` Manuel Schölling
2016-11-27 21:37             ` [PATCH v7 0/3] " Andrey Utkin
2016-11-27 23:15               ` Adam Borowski
2016-11-27 23:15                 ` Adam Borowski
2016-11-27 23:30                 ` Jakub Wilk
2016-11-27 23:30                   ` Jakub Wilk
2016-11-28  0:02                 ` Andrey Utkin
2016-11-28 21:28               ` Manuel Schölling
2016-11-28 21:28                 ` Manuel Schölling
2016-11-29 10:01                 ` Andrey Utkin
2016-11-29 10:44                   ` Adam Borowski
2016-11-29 10:44                     ` Adam Borowski
2016-11-29 16:35                   ` Manuel Schölling
2016-11-29 16:35                     ` Manuel Schölling
2016-12-01 21:03                   ` Manuel Schölling
2016-12-01 21:03                     ` Manuel Schölling
2016-12-01 21:31                     ` Andrey Utkin
2016-12-01 21:31                       ` Andrey Utkin
2016-11-27 23:53             ` Adam Borowski
2016-11-27 23:53               ` Adam Borowski
2016-11-28 21:23               ` Manuel Schölling
2016-11-28 21:23                 ` Manuel Schölling
2016-11-23 17:33       ` [PATCH v5 2/2] " Manuel Schölling
2016-11-23 17:33         ` Manuel Schölling

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=1484842335.1250.7.camel@gmx.de \
    --to=manuel.schoelling@gmx.de \
    --cc=akpm@linux-foundation.org \
    --cc=andrey_utkin@fastmail.com \
    --cc=daniel.vetter@ffwll.ch \
    --cc=gregkh@linuxfoundation.org \
    --cc=hdegoede@redhat.com \
    --cc=jslaby@suse.com \
    --cc=kilobyte@angband.pl \
    --cc=linux-fbdev@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lkml14@scotdoyle.com \
    --cc=paul.burton@imgtec.com \
    --cc=rdunlap@infradead.org \
    --cc=shorne@gmail.com \
    --cc=tj@kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.