<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/video/fbmem.c, branch linux-2.6.24.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.24.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.24.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2008-04-19T01:53:30Z</updated>
<entry>
<title>fbdev: fix /proc/fb oops after module removal</title>
<updated>2008-04-19T01:53:30Z</updated>
<author>
<name>Alexey Dobriyan</name>
</author>
<published>2008-04-16T02:45:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=acba01a4a72096cd60de7dad570acea3ec7f46ab'/>
<id>urn:sha1:acba01a4a72096cd60de7dad570acea3ec7f46ab</id>
<content type='text'>
upstream commit: c43f89c2084f46e3ec59ddcbc52ecf4b1e9b015a

/proc/fb is not removed during rmmod.

Steps to reproduce:

	modprobe fb
	rmmod fb
	ls /proc

BUG: unable to handle kernel paging request at ffffffffa0094370
IP: [&lt;ffffffff802b92a1&gt;] proc_get_inode+0x101/0x130
PGD 203067 PUD 207063 PMD 17e758067 PTE 0
Oops: 0000 [1] SMP
last sysfs file: /sys/devices/pci0000:00/0000:00:1e.0/0000:05:02.0/resource
CPU 1
Modules linked in: nf_conntrack_irc xt_state iptable_filter ipt_MASQUERADE iptable_nat nf_nat nf_conntrack_ipv4 nf_conntrack ip_tables x_tables vfat fat usbhid ehci_hcd uhci_hcd usbcore sr_mod cdrom [last unloaded: fb]
Pid: 21205, comm: ls Not tainted 2.6.25-rc8-mm2 #14
RIP: 0010:[&lt;ffffffff802b92a1&gt;]  [&lt;ffffffff802b92a1&gt;] proc_get_inode+0x101/0x130
RSP: 0018:ffff81017c4bfc78  EFLAGS: 00010246
RAX: 0000000000008000 RBX: ffff8101787f5470 RCX: 0000000048011ccc
RDX: ffffffffa0094320 RSI: ffff810006ad43b0 RDI: ffff81017fc2cc00
RBP: ffff81017e450300 R08: 0000000000000002 R09: ffff81017c5d1000
R10: 0000000000000000 R11: 0000000000000246 R12: ffff81016b903a28
R13: ffff81017f822020 R14: ffff81017c4bfd58 R15: ffff81017f822020
FS:  00007f08e71696f0(0000) GS:ffff81017fc06480(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
CR2: ffffffffa0094370 CR3: 000000017e54a000 CR4: 00000000000006e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
Process ls (pid: 21205, threadinfo ffff81017c4be000, task ffff81017de48770)
Stack:  ffff81017c5d1000 00000000ffffffea ffff81017e450300 ffffffff802bdd1e
 ffff81017f802258 ffff81017c4bfe48 ffff81016b903a28 ffff81017f822020
 ffff81017c4bfd48 ffffffff802b9ba0 ffff81016b903a28 ffff81017f802258
Call Trace:
 [&lt;ffffffff802bdd1e&gt;] ? proc_lookup_de+0x8e/0x100
 [&lt;ffffffff802b9ba0&gt;] ? proc_root_lookup+0x20/0x60
 [&lt;ffffffff802882a7&gt;] ? do_lookup+0x1b7/0x210
 [&lt;ffffffff8028883d&gt;] ? __link_path_walk+0x53d/0x7f0
 [&lt;ffffffff80295eb8&gt;] ? mntput_no_expire+0x28/0x130
 [&lt;ffffffff80288b4a&gt;] ? path_walk+0x5a/0xc0
 [&lt;ffffffff80288dd3&gt;] ? do_path_lookup+0x83/0x1c0
 [&lt;ffffffff80287785&gt;] ? getname+0xe5/0x210
 [&lt;ffffffff80289adb&gt;] ? __user_walk_fd+0x4b/0x80
 [&lt;ffffffff8028236c&gt;] ? vfs_lstat_fd+0x2c/0x70
 [&lt;ffffffff8028bf1e&gt;] ? filldir+0xae/0xf0
 [&lt;ffffffff802b92e9&gt;] ? de_put+0x9/0x50
 [&lt;ffffffff8029633d&gt;] ? mnt_want_write+0x2d/0x80
 [&lt;ffffffff8029339f&gt;] ? touch_atime+0x1f/0x170
 [&lt;ffffffff802b9b1d&gt;] ? proc_root_readdir+0x7d/0xa0
 [&lt;ffffffff802825e7&gt;] ? sys_newlstat+0x27/0x50
 [&lt;ffffffff8028bffb&gt;] ? vfs_readdir+0x9b/0xd0
 [&lt;ffffffff8028c0fe&gt;] ? sys_getdents+0xce/0xe0
 [&lt;ffffffff8020b39b&gt;] ? system_call_after_swapgs+0x7b/0x80

Code: b7 83 b2 00 00 00 25 00 f0 00 00 3d 00 80 00 00 74 19 48 89 93 f0 00 00 00 48 89 df e8 39 9a fd ff 48 89 d8 48 83 c4 08 5b 5d c3 &lt;48&gt; 83 7a 50 00 48 c7 c0 60 16 45 80 48 c7 c2 40 17 45 80 48 0f
RIP  [&lt;ffffffff802b92a1&gt;] proc_get_inode+0x101/0x130
 RSP &lt;ffff81017c4bfc78&gt;
CR2: ffffffffa0094370
---[ end trace c71hiarjan8ab739 ]---

Signed-off-by: Alexey Dobriyan &lt;adobriyan@gmail.com&gt;
"Antonino A. Daplas" &lt;adaplas@pol.net&gt;
Cc: &lt;stable@kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Chris Wright &lt;chrisw@sous-sol.org&gt;
</content>
</entry>
<entry>
<title>fb: move and rename extern declaration for global_mode_option</title>
<updated>2007-10-16T16:43:22Z</updated>
<author>
<name>Geert Uytterhoeven</name>
</author>
<published>2007-10-16T08:29:51Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9a054fbac8f8441f48896b855a9e11c13e0c3dc8'/>
<id>urn:sha1:9a054fbac8f8441f48896b855a9e11c13e0c3dc8</id>
<content type='text'>
Move the extern declaration for global_mode_option to &lt;linux/fb.h&gt; and rename
the variable to fb_mode_option.

Signed-off-by: Geert Uytterhoeven &lt;Geert.Uytterhoeven@sonycom.com&gt;
Cc: "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>
<entry>
<title>unexport fb_prepare_logo</title>
<updated>2007-10-16T16:43:15Z</updated>
<author>
<name>Adrian Bunk</name>
</author>
<published>2007-10-16T08:28:47Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ae4939bef3989e52d2fdaad1c2b013241d457897'/>
<id>urn:sha1:ae4939bef3989e52d2fdaad1c2b013241d457897</id>
<content type='text'>
The logo code is not and should not be used by modules.

Signed-off-by: Adrian Bunk &lt;bunk@stusta.de&gt;
Cc: "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>
<entry>
<title>fbdev: Fix logo if logo depth is less than framebuffer depth</title>
<updated>2007-07-31T22:39:37Z</updated>
<author>
<name>Antonino A. Daplas</name>
</author>
<published>2007-07-31T07:37:36Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1692b37c99d5087cf2f814466a907a3dd35a1453'/>
<id>urn:sha1:1692b37c99d5087cf2f814466a907a3dd35a1453</id>
<content type='text'>
The VGA16 logo (bpp = 4) and monochrome logo (bpp = 1) do not contain any
color information (no CLUT).  If the fb depth is &gt; logo depth, these logo's
will not properly display. Fix by using the console palette instead of
creating a new one.

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>fbdev: Add fb_append_extra_logo()</title>
<updated>2007-07-17T17:23:13Z</updated>
<author>
<name>Geert Uytterhoeven</name>
</author>
<published>2007-07-17T11:05:50Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9900abfb5e8192f0eafcd9b9dd5d54011e46c76c'/>
<id>urn:sha1:9900abfb5e8192f0eafcd9b9dd5d54011e46c76c</id>
<content type='text'>
Add fb_append_extra_logo(), to append extra lines of logos below the standard
Linux logo.

Signed-off-by: Geert Uytterhoeven &lt;Geert.Uytterhoeven@sonycom.com&gt;
Signed-off-by: Geoff Levand &lt;geoffrey.levand@am.sony.com&gt;
Acked-By: James Simmons &lt;jsimmons@infradead.org&gt;
Cc: "Antonino A. Daplas" &lt;adaplas@pol.net&gt;
Cc: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
Cc: Paul Mackerras &lt;paulus@samba.org&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>fbdev: extract fb_show_logo_line()</title>
<updated>2007-07-17T17:23:13Z</updated>
<author>
<name>Geert Uytterhoeven</name>
</author>
<published>2007-07-17T11:05:50Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=90da63e54604fd515c17014a0a7f332a018a0a11'/>
<id>urn:sha1:90da63e54604fd515c17014a0a7f332a018a0a11</id>
<content type='text'>
The Cell Broadband Engine contains a 64-bit PowerPC core with 2 hardware
threads (called PPEs) and 8 Synergistic Processing Engines (called SPEs).
When booting Linux, 2 penguins logos are shown on the graphical console by
the standard frame buffer console logo code.

To emphasize the existence of the SPEs (which can be used under Linux), we
added a second row of (smaller) helper penguin logos, one for each SPE.

A sample screenshot can be found at
http://www.kernel.org/pub/linux/kernel/people/geoff/cell/debian-penguin-shot.png
(or on the ps3linux T-shirts we wore at OLS :-)

This patch:

Extract the code to draw one line of logos into fb_show_logo_line()

Signed-off-by: Geert Uytterhoeven &lt;Geert.Uytterhoeven@sonycom.com&gt;
Signed-off-by: Geoff Levand &lt;geoffrey.levand@am.sony.com&gt;
Acked-By: James Simmons &lt;jsimmons@infradead.org&gt;
Cc: "Antonino A. Daplas" &lt;adaplas@pol.net&gt;
Cc: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
Cc: Paul Mackerras &lt;paulus@samba.org&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>fbdev: fbcon: console unregistration from unregister_framebuffer</title>
<updated>2007-07-17T17:23:11Z</updated>
<author>
<name>Jesse Barnes</name>
</author>
<published>2007-07-17T11:05:33Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=cfafca8067c6defbaeb28cb898b7b3f8abdfe20d'/>
<id>urn:sha1:cfafca8067c6defbaeb28cb898b7b3f8abdfe20d</id>
<content type='text'>
This allows for proper console unregistration via the VT layer, and updates
the FB layer to use it.  This makes debugging new console drivers much easier,
since you can properly clean them up before unloading.

[adaplas]
unregister_framebuffer() is typically called as part of the driver's
module_exit(). Doing so otherwise will freeze the machine as the VT layer is
holding reference counts on fbcon, and fbcon on the driver.  With this change,
it allows unregister_framebuffer() to be called safely anywhere as needed.

Additions from the original:  If multiple drivers are used by fbcon, and if
one of them unregisters, a driver will take over the consoles vacated by the
outgoing one (via set_con2fb_map).   Once only the outgoing driver remains,
then fbcon will unbind from the VT layer (if CONFIG_HW_CONSOLE_UNBINDING is
set to y).

It is important that these drivers implement fb_open() and fb_release()
just to ensure that no other process is using the driver. Likewise, these
drivers _must_ check the return value of unregister_framebuffer().

[akpm@linux-foundation.org: make fbcon_unbind() stub inline]
Signed-off-by: Jesse Barnes &lt;jesse.barnes@intel.com&gt;
Signed-off-by: Antonino Daplas &lt;adaplas@gmail.com&gt;
Cc: Geert Uytterhoeven &lt;geert@linux-m68k.org&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>fbdev: move arch-specific bits to their respective subdirectories</title>
<updated>2007-07-17T17:23:11Z</updated>
<author>
<name>Antonino A. Daplas</name>
</author>
<published>2007-07-17T11:05:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=10eb2659cc6059d0c4de2e2c66d1534091519f56'/>
<id>urn:sha1:10eb2659cc6059d0c4de2e2c66d1534091519f56</id>
<content type='text'>
Move arch-specific bits of fb_mmap() to their respective subdirectories

[bob.picco@hp.com: efi_range_is_wc is referenced but not declared]
[bunk@stusta.de: fix include/asm-m68k/fb.h]
Signed-off-by: Antonino Daplas &lt;adaplas@gmail.com&gt;
Acked-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Adrian Bunk &lt;bunk@stusta.de&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>fbdev: add support for AVR32</title>
<updated>2007-05-09T19:30:57Z</updated>
<author>
<name>Haavard Skinnemoen</name>
</author>
<published>2007-05-09T09:35:33Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=880169dd2edc4297b7811a0542be9766ca6945bc'/>
<id>urn:sha1:880169dd2edc4297b7811a0542be9766ca6945bc</id>
<content type='text'>
Provide framebuffer page protection flags and definitions of
fb_readl/fb_writel for AVR32.

Signed-off-by: Haavard Skinnemoen &lt;hskinnemoen@atmel.com&gt;
Cc: "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>
<entry>
<title>fbdev: clean up exit patch of fb_set_var</title>
<updated>2007-05-08T18:15:33Z</updated>
<author>
<name>Antonino A. Daplas</name>
</author>
<published>2007-05-08T07:39:52Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b1e7223f28b4ed5073d2029a3597bf514ff514f2'/>
<id>urn:sha1:b1e7223f28b4ed5073d2029a3597bf514ff514f2</id>
<content type='text'>
Clean up exit patch of fb_set_var():

- consolidate all return values into a single local variable
- ensure that return values are valid error codes
- fix fb_set_var() returning success when fb_check_caps() failed

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>
</feed>
