Bruno Prémont
c267fd777a
viafb: fix releasing of /proc/viafb/ subtree
...
When unloading viafb module it does not remove it's /proc/viafb/ subtree
which causes multiple viafb directories to appear below proc when
mobprobing viafb and also lets kernel WARN() on duplicate proc entries:
[ 145.458387] WARNING: at /usr/src/linux-2.6.28-rc3-git6/fs/proc/generic.c:551 proc_register+0xe6/0x160()
[ 145.458945] proc_dir_entry '/proc/viafb' already registered
[ 145.459278] Modules linked in: viafb(+) i2c_algo_bit cfbcopyarea cfbimgblt cfbfillrect snd_hda_intel snd_pcm snd_timer snd soundcore snd_page_alloc sg via_agp agpgart [last unloaded: drm]
[ 145.460647] Pid: 1904, comm: modprobe Tainted: G W 2.6.28-rc3-git6 #4
[ 145.461064] Call Trace:
[ 145.461248] [<c01066f1>] ? dump_stack+0x1/0x80
[ 145.461533] [<c01228a3>] warn_slowpath+0x63/0x80
[ 145.461851] [<c0253ec9>] ? idr_get_empty_slot+0xe9/0x250
[ 145.462186] [<c0254120>] ? ida_get_new_above+0xf0/0x150
[ 145.462528] [<c019fb86>] proc_register+0xe6/0x160
[ 145.462827] [<c019fdc6>] proc_mkdir_mode+0x36/0x50
[ 145.463135] [<c019fdef>] proc_mkdir+0xf/0x20
[ 145.463457] [<f807173c>] viafb_init+0x73c/0xc86 [viafb]
[ 145.463823] [<f8071000>] ? viafb_init+0x0/0xc86 [viafb]
[ 145.464147] [<c010111d>] do_one_initcall+0x2d/0x160
[ 145.464460] [<c01a6543>] ? sysfs_add_file+0x13/0x20
[ 145.464786] [<c015f031>] ? vfree+0x21/0x30
[ 145.465049] [<c01433b5>] ? load_module+0x1215/0x1500
[ 145.465381] [<c014e455>] ? __alloc_pages_internal+0x95/0x400
[ 145.465755] [<c0143723>] sys_init_module+0x83/0x1a0
[ 145.466065] [<c016ceed>] ? sys_read+0x3d/0x70
[ 145.466354] [<c0103bc1>] sysenter_do_call+0x12/0x25
[ 145.466653] ---[ end trace c84b37826e16748c ]---
Signed-off-by: Bruno Prémont <bonbons@linux-vserver.org>
Cc: <JosephChan@via.com.tw>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-11-19 18:49:58 -08:00
..
2008-10-16 11:21:44 -07:00
2008-10-29 11:45:37 +08:00
2008-10-30 11:38:46 -07:00
2008-10-16 09:24:45 -07:00
2008-07-24 10:47:40 -07:00
2008-03-19 18:53:36 -07:00
2008-10-16 11:21:42 -07:00
2007-10-16 09:43:17 -07:00
2008-05-14 19:11:14 -07:00
2008-10-16 11:21:45 -07:00
2008-11-06 15:41:18 -08:00
2008-03-10 18:01:20 -07:00
2008-04-28 08:58:42 -07:00
2008-10-16 11:25:32 -07:00
2008-08-07 09:55:48 +01:00
2008-04-28 08:58:42 -07:00
2008-04-28 08:58:38 -07:00
2008-07-24 10:47:37 -07:00
2008-08-23 12:14:12 -07:00
2008-11-19 18:49:58 -08:00
2007-07-17 10:23:11 -07:00
2008-08-07 09:55:48 +01:00
2007-07-19 10:04:50 -07:00
2008-07-24 10:47:40 -07:00
2007-10-16 09:43:17 -07:00
2008-08-23 12:14:12 -07:00
2008-07-24 10:47:37 -07:00
2008-11-19 18:49:57 -08:00
2007-10-18 14:37:17 -07:00
2007-07-19 10:04:50 -07:00
2008-08-27 10:51:02 +08:00
2008-07-24 10:47:40 -07:00
2008-08-31 01:23:17 -07:00
2008-07-20 17:24:39 -07:00
2008-07-24 10:47:34 -07:00
2008-10-16 11:21:45 -07:00
2008-07-24 10:47:34 -07:00
2008-04-28 08:58:35 -07:00
2008-04-28 08:58:35 -07:00
2008-04-28 08:58:42 -07:00
2008-08-31 01:23:17 -07:00
2008-10-10 12:12:41 -07:00
2008-08-31 01:23:17 -07:00
2008-02-23 10:40:04 -08:00
2008-11-01 12:40:38 -07:00
2008-08-07 09:55:48 +01:00
2008-07-24 10:47:40 -07:00
2007-07-17 10:23:11 -07:00
2008-08-07 09:55:48 +01:00
2008-02-03 17:31:49 +02:00
2008-05-18 13:28:49 -07:00
2008-10-16 11:21:44 -07:00
2008-08-07 09:55:48 +01:00
2008-07-14 22:38:28 +02:00
2008-08-20 15:40:32 -07:00
2008-04-28 08:58:35 -07:00
2007-10-16 09:43:17 -07:00
2007-10-16 09:43:17 -07:00
2008-11-19 18:49:57 -08:00
2008-10-16 11:21:44 -07:00
2008-08-31 01:23:17 -07:00
2007-07-17 10:23:12 -07:00
2008-08-15 08:35:43 -07:00
2008-04-28 08:58:40 -07:00
2008-07-30 09:41:47 -07:00
2008-04-28 08:58:35 -07:00
2008-04-28 08:58:41 -07:00
2008-07-24 10:47:39 -07:00
2008-07-30 02:16:12 +09:00
2008-05-18 13:28:50 -07:00
2008-02-06 10:41:16 -08:00
2008-04-28 08:58:42 -07:00
2008-08-07 09:55:48 +01:00
2008-11-06 15:41:18 -08:00
2008-10-10 12:13:22 -07:00
2008-07-26 12:00:12 -07:00
2007-07-17 10:23:13 -07:00
2007-07-17 10:23:13 -07:00
2008-11-06 15:41:18 -08:00
2008-10-15 10:19:51 -07:00
2008-06-06 11:29:12 -07:00
2008-04-28 08:58:41 -07:00
2008-10-16 11:21:42 -07:00
2008-07-22 10:39:36 +10:00
2007-10-12 14:51:04 -07:00
2008-08-31 01:23:17 -07:00
2008-06-09 13:46:38 +10:00
2008-08-20 15:40:31 -07:00
2008-04-28 08:58:42 -07:00
2008-02-06 10:41:18 -08:00
2007-10-16 09:43:19 -07:00
2007-10-16 09:43:20 -07:00
2008-07-22 10:39:33 +10:00
2008-07-29 22:10:01 +09:00
2008-08-16 16:39:16 +01:00
2008-07-24 10:47:37 -07:00
2007-07-17 10:23:12 -07:00
2008-10-16 11:21:45 -07:00
2008-08-07 09:55:48 +01:00
2008-05-24 09:56:13 -07:00
2008-08-23 12:14:12 -07:00
2008-08-07 09:55:48 +01:00
2008-07-24 10:47:37 -07:00
2008-05-08 21:37:30 -07:00
2008-05-08 21:37:30 -07:00
2008-07-10 18:55:40 +02:00
2008-07-28 16:30:21 -07:00
2008-10-20 11:38:50 +09:00
2008-07-24 10:47:39 -07:00
2008-07-24 10:47:40 -07:00
2008-04-28 08:58:42 -07:00
2008-07-26 12:00:12 -07:00
2008-07-26 12:00:12 -07:00
2008-05-08 21:37:30 -07:00
2008-05-08 21:37:30 -07:00
2007-10-16 09:43:22 -07:00
2008-04-28 08:58:35 -07:00
2008-04-28 08:58:35 -07:00
2008-04-28 08:58:42 -07:00
2008-08-31 01:23:17 -07:00
2008-10-16 11:21:42 -07:00
2007-10-16 09:43:23 -07:00
2008-11-19 18:49:58 -08:00
2008-07-24 10:47:36 -07:00
2008-10-16 11:21:44 -07:00
2007-07-19 10:04:50 -07:00
2008-07-24 10:47:39 -07:00
2008-10-16 11:21:42 -07:00
2008-08-23 12:14:12 -07:00
2008-07-04 10:40:08 -07:00
2008-08-20 12:40:07 +02:00
2008-08-23 12:14:12 -07:00