<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/linux.git/include/linux/console_struct.h, branch v3.16.3</title>
<subtitle>Linux Kernel
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v3.16.3</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v3.16.3'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/'/>
<updated>2014-05-28T20:37:21Z</updated>
<entry>
<title>console: Use explicit pointer type for vc_uni_pagedir* fields</title>
<updated>2014-05-28T20:37:21Z</updated>
<author>
<name>Takashi Iwai</name>
<email>tiwai@suse.de</email>
</author>
<published>2014-05-13T10:09:28Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=e4bdab70dd07d8648a1ec3e029239aa86eb836b6'/>
<id>urn:sha1:e4bdab70dd07d8648a1ec3e029239aa86eb836b6</id>
<content type='text'>
The vc_data.vc_uni_pagedir filed is currently long int, supposedly to
be served generically.  This, however, leads to lots of cast to
pointer, and rather it worsens the readability significantly.

Actually, we have now only a single uni_pagedir map implementation,
and this won't change likely.  So, it'd be much more simple and
error-prone to just use the exact pointer for struct uni_pagedir
instead of long.

Ditto for vc_uni_pagedir_loc.  It's a pointer to the uni_pagedir, thus
it can be changed similarly to the exact type.

Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>tty: Move the vt_tty field from the vc_data into the standard tty_port</title>
<updated>2010-08-10T20:47:42Z</updated>
<author>
<name>Alan Cox</name>
<email>alan@linux.intel.com</email>
</author>
<published>2010-06-01T20:52:56Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=8ce73264b75be4d5ed480440ac32dfc1f25ff678'/>
<id>urn:sha1:8ce73264b75be4d5ed480440ac32dfc1f25ff678</id>
<content type='text'>
This takes all the tty references through the expected interface points so
we can refcount them.

Signed-off-by: Alan Cox &lt;alan@linux.intel.com&gt;
Cc: Arnd Bergmann &lt;arnd@arndb.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>tty: Make vt's have a tty_port</title>
<updated>2010-08-10T20:47:41Z</updated>
<author>
<name>Alan Cox</name>
<email>alan@linux.intel.com</email>
</author>
<published>2010-06-01T20:52:55Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=ff917ba4f1a6189f90ed2c975984d6a1a1dc553d'/>
<id>urn:sha1:ff917ba4f1a6189f90ed2c975984d6a1a1dc553d</id>
<content type='text'>
The vt layer isn't safely handling reference counts to tty object on the input
side. Add a tty port structure to the vt layer in order to implement this using
the standard helpers.

Signed-off-by: Alan Cox &lt;alan@linux.intel.com&gt;
Cc: Arnd Bergmann &lt;arnd@arndb.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>vt/console: try harder to print output when panicing</title>
<updated>2010-08-10T20:47:40Z</updated>
<author>
<name>Jesse Barnes</name>
<email>jbarnes@virtuousgeek.org</email>
</author>
<published>2010-06-23T19:56:12Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=8fd4bd22350784d5b2fe9274f6790ba353976415'/>
<id>urn:sha1:8fd4bd22350784d5b2fe9274f6790ba353976415</id>
<content type='text'>
Jesse's initial patch commit said:

"At panic time (i.e.  when oops_in_progress is set) we should try a bit
harder to update the screen and make sure output gets to the VT, since
some drivers are capable of flipping back to it.

So make sure we try to unblank and update the display if called from a
panic context."

I've enhanced this to add a flag to the vc that console layer can set to
indicate they want this behaviour to occur.  This also adds support to
fbcon for that flag and adds an fb flag for drivers to indicate they want
to use the support.  It enables this for KMS drivers.

Signed-off-by: Dave Airlie &lt;airlied@redhat.com&gt;
Signed-off-by: Jesse Barnes &lt;jbarnes@virtuousgeek.org&gt;
Acked-by: James Simmons &lt;jsimmons@infradead.org&gt;
Cc: Alan Cox &lt;alan@lxorguk.ukuu.org.uk&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>vt: drop bootmem/slab memory distinction</title>
<updated>2009-07-16T16:19:16Z</updated>
<author>
<name>Johannes Weiner</name>
<email>hannes@cmpxchg.org</email>
</author>
<published>2009-07-16T15:06:09Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=5c9228f0cfb09a098a8a380116b42ae099e967b6'/>
<id>urn:sha1:5c9228f0cfb09a098a8a380116b42ae099e967b6</id>
<content type='text'>
Bootmem is not used for the vt screen buffer anymore as slab is now
available at the time the console is initialized.

Get rid of the now superfluous distinction between slab and bootmem,
it's always slab.

This also fixes a kmalloc leak which Catalin described thusly:

Commit a5f4f52e ("vt: use kzalloc() instead of the bootmem allocator")
replaced the alloc_bootmem() with kzalloc() but didn't set vc_kmalloced to
1 and the memory block is later leaked.  The corresponding kmemleak trace:

unreferenced object 0xdf828000 (size 8192):
  comm "swapper", pid 0, jiffies 4294937296
  backtrace:
    [&lt;c006d473&gt;] __save_stack_trace+0x17/0x1c
    [&lt;c000d869&gt;] log_early+0x55/0x84
    [&lt;c01cfa4b&gt;] kmemleak_alloc+0x33/0x3c
    [&lt;c006c013&gt;] __kmalloc+0xd7/0xe4
    [&lt;c00108c7&gt;] con_init+0xbf/0x1b8
    [&lt;c0010149&gt;] console_init+0x11/0x20
    [&lt;c0008797&gt;] start_kernel+0x137/0x1e4

Signed-off-by: Johannes Weiner &lt;hannes@cmpxchg.org&gt;
Reviewed-by: Pekka Enberg &lt;penberg@cs.helsinki.fi&gt;
Tested-by: Catalin Marinas &lt;catalin.marinas@arm.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Alan Cox &lt;alan@lxorguk.ukuu.org.uk&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Revert "vt: fix background color on line feed"</title>
<updated>2008-10-14T19:12:02Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2008-10-14T19:12:02Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=93f78da405685a756beeaeae4b5e41fcec39eab3'/>
<id>urn:sha1:93f78da405685a756beeaeae4b5e41fcec39eab3</id>
<content type='text'>
This reverts commit c9e587abfdec2c2aaa55fab83bcb4972e2f84f9b, and the
subsequent commits that fixed it up:

 - afa9b649 "fbcon: prevent cursor disappearance after switching to 512
   character font"

 - d850a2fa "vt/fbcon: fix background color on line feed"

 - 7fe3915a "vt/fbcon: update scrl_erase_char after 256/512-glyph font
   switch"

by request of Alan Cox. Quoth Alan:
  "Unfortunately it's wrong and its been causing breakages because
   various apps like ncurses expect our previous (and correct)
   behaviour."

Alexander sent out a similar patch.

Requested-by: Alan Cox &lt;alan@lxorguk.ukuu.org.uk&gt;
Tested-by: Jan Engelhardt &lt;jengelh@medozas.de&gt;
Cc: Alexander V. Lukyanov &lt;lav@netis.ru&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>vt: fix background color on line feed</title>
<updated>2008-04-29T15:06:06Z</updated>
<author>
<name>Jan Engelhardt</name>
<email>jengelh@computergmbh.de</email>
</author>
<published>2008-04-29T07:59:46Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=c9e587abfdec2c2aaa55fab83bcb4972e2f84f9b'/>
<id>urn:sha1:c9e587abfdec2c2aaa55fab83bcb4972e2f84f9b</id>
<content type='text'>
A command that causes a line feed while a background color is active,
such as

	perl -e 'print "x" x 60, "\e[44m", "x" x 40, "\e[0m\n"'
and
	perl -e 'print "x" x 40, "\e[44m\n", "x" x 40, "\e[0m\n"'

causes the line that was started as a result of the line feed to be completely
filled with the currently active background color instead of the default
color.

When scrolling, part of the current screen is memcpy'd/memmove'd to the new
region, and the new line(s) that will appear as a result are cleared using
memset.  However, the lines are cleared with vc-&gt;vc_video_erase_char, causing
them to be colored with the currently active background color.  This is
different from X11 terminal emulators which always paint the new lines with
the default background color (e.g.  `xterm -bg black`).

The clear operation (\e[1J and \e[2J) also use vc_video_erase_char, so a new
vc-&gt;vc_scrl_erase_char is introduced with contains the erase character used
for scrolling, which is built from vc-&gt;vc_def_color instead of vc-&gt;vc_color.

Signed-off-by: Jan Engelhardt &lt;jengelh@computergmbh.de&gt;
Cc: "Antonino A. Daplas" &lt;adaplas@pol.net&gt;
Cc: "H. Peter Anvin" &lt;hpa@zytor.com&gt;
Cc: Alan Cox &lt;alan@lxorguk.ukuu.org.uk&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>vt/vgacon: Check if screen resize request comes from userspace</title>
<updated>2007-10-16T16:43:20Z</updated>
<author>
<name>Antonino A. Daplas</name>
<email>adaplas@gmail.com</email>
</author>
<published>2007-10-16T08:29:35Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=e400b6ec4ede4dc0aa8e5640425df5b29796fe0e'/>
<id>urn:sha1:e400b6ec4ede4dc0aa8e5640425df5b29796fe0e</id>
<content type='text'>
Various console drivers are able to resize the screen via the con_resize()
hook.  This hook is also visible in userspace via the TIOCWINSZ, VT_RESIZE and
VT_RESIZEX ioctl's.  One particular utility, SVGATextMode, expects that
con_resize() of the VGA console will always return success even if the
resulting screen is not compatible with the hardware.  However, this
particular behavior of the VGA console, as reported in Kernel Bugzilla Bug
7513, can cause undefined behavior if the user starts with a console size
larger than 80x25.

To work around this problem, add an extra parameter to con_resize().  This
parameter is ignored by drivers except for vgacon.  If this parameter is
non-zero, then the resize request came from a VT_RESIZE or VT_RESIZEX ioctl
and vgacon will always return success.  If this parameter is zero, vgacon will
return -EINVAL if the requested size is not compatible with the hardware.  The
latter is the more correct behavior.

With this change, SVGATextMode should still work correctly while in-kernel and
stty resize calls can expect correct behavior from vgacon.

Signed-off-by: Antonino Daplas &lt;adaplas@gmail.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Protect &lt;linux/console_struct.h&gt; from multiple inclusion</title>
<updated>2007-06-09T00:23:34Z</updated>
<author>
<name>Robert P. J. Day</name>
<email>rpjday@mindspring.com</email>
</author>
<published>2007-06-08T20:47:07Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=217397d7d267f832081169016e1ab66691a13e08'/>
<id>urn:sha1:217397d7d267f832081169016e1ab66691a13e08</id>
<content type='text'>
Prevent &lt;linux/console_struct.h&gt; from being included more than once,
otherwise you get a redefinition error if you happen to include
&lt;linux/vt_kern.h&gt; first.

Signed-off-by: Robert P. J. Day &lt;rpjday@mindspring.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>vt: add color support to the "underline" and "italic" attributes</title>
<updated>2007-05-08T18:15:27Z</updated>
<author>
<name>Jan Engelhardt</name>
<email>jengelh@linux01.gwdg.de</email>
</author>
<published>2007-05-08T07:38:04Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=fa6ce9ab5fbcb4c276c48861584b70d387e787b3'/>
<id>urn:sha1:fa6ce9ab5fbcb4c276c48861584b70d387e787b3</id>
<content type='text'>
Add color support to the "underline" and "italic" attributes as in
OpenBSD/NetBSD-style (vt220) and xterm.

Signed-off-by: Jan Engelhardt &lt;jengelh@gmx.de&gt;
Acked-by: "Antonino A. Daplas" &lt;adaplas@pol.net&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
</feed>
