aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArtem Bityutskiy <Artem.Bityutskiy@nokia.com>2008-07-24 11:28:11 -0400
committerArtem Bityutskiy <Artem.Bityutskiy@nokia.com>2008-07-25 04:35:15 -0400
commitd37e6bf68fc1eb34a4ad21d9ae8890ed37ea80e7 (patch)
tree3132d9ed4829d022890b46e3526e105be893b3b7
parenteeb16e87b6747c9a4f5769f33467c9d173e9f5ee (diff)
UBI: always start the background thread
This fix only affects UBI debugging. If the the background thread is disabled for debugging purposes, start it anyway, because otherwise we see tonns of kernel debugging complaints like this: INFO: task ubi_bgt0d:26857 blocked for more than 120 seconds. "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. ubi_bgt0d D dd37bf94 0 26857 2 dd37bfcc 00000086 f8e17cea dd37bf94 00000046 00000000 00000000 f5c62430 f5c62430 f5c62590 c2a09c80 f6cbd498 dd8e9cbc 00000296 dd37bfb0 00000296 dd8e9cb8 dd8e9cbc dd37bfcc c0119774 00000000 00000000 c0132e89 f6961560 Call Trace: [<f8e17cea>] ? ubi_thread+0x0/0x127 [ubi] [<c0119774>] ? complete+0x43/0x4b [<c0132e89>] ? kthread+0x0/0x5b [<f8e17cea>] ? ubi_thread+0x0/0x127 [ubi] [<c0132eae>] kthread+0x25/0x5b [<c0132e89>] ? kthread+0x0/0x5b [<c0104953>] kernel_thread_helper+0x7/0x14 ======================= So start it, and go sleep inside it, instead of creating it and never start. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
-rw-r--r--drivers/mtd/ubi/build.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/mtd/ubi/build.c b/drivers/mtd/ubi/build.c
index eba760b3b8c7..c7630a228310 100644
--- a/drivers/mtd/ubi/build.c
+++ b/drivers/mtd/ubi/build.c
@@ -870,11 +870,9 @@ int ubi_attach_mtd_dev(struct mtd_info *mtd, int ubi_num, int vid_hdr_offset)
870 ubi->beb_rsvd_pebs); 870 ubi->beb_rsvd_pebs);
871 ubi_msg("max/mean erase counter: %d/%d", ubi->max_ec, ubi->mean_ec); 871 ubi_msg("max/mean erase counter: %d/%d", ubi->max_ec, ubi->mean_ec);
872 872
873 /* Enable the background thread */ 873 if (!DBG_DISABLE_BGT)
874 if (!DBG_DISABLE_BGT) {
875 ubi->thread_enabled = 1; 874 ubi->thread_enabled = 1;
876 wake_up_process(ubi->bgt_thread); 875 wake_up_process(ubi->bgt_thread);
877 }
878 876
879 ubi_devices[ubi_num] = ubi; 877 ubi_devices[ubi_num] = ubi;
880 return ubi_num; 878 return ubi_num;