提交 9cfdf6f1 编写于 作者: R Ralf Baechle

[MIPS] VPE loader: Initialize lists before they're actually being used ...

kspd which due to makefile order happens to be initialized before the
vpe loader causes references to vpecontrol lists before they're actually
been initialized.
Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
上级 80aac59e
...@@ -139,13 +139,16 @@ struct tc { ...@@ -139,13 +139,16 @@ struct tc {
struct list_head list; struct list_head list;
}; };
struct vpecontrol_ { struct {
/* Virtual processing elements */ /* Virtual processing elements */
struct list_head vpe_list; struct list_head vpe_list;
/* Thread contexts */ /* Thread contexts */
struct list_head tc_list; struct list_head tc_list;
} vpecontrol; } vpecontrol = {
.vpe_list = LIST_HEAD_INIT(vpecontrol.vpe_list),
.tc_list = LIST_HEAD_INIT(vpecontrol.tc_list)
};
static void release_progmem(void *ptr); static void release_progmem(void *ptr);
/* static __attribute_used__ void dump_vpe(struct vpe * v); */ /* static __attribute_used__ void dump_vpe(struct vpe * v); */
...@@ -1388,8 +1391,6 @@ static int __init vpe_module_init(void) ...@@ -1388,8 +1391,6 @@ static int __init vpe_module_init(void)
/* dump_mtregs(); */ /* dump_mtregs(); */
INIT_LIST_HEAD(&vpecontrol.vpe_list);
INIT_LIST_HEAD(&vpecontrol.tc_list);
val = read_c0_mvpconf0(); val = read_c0_mvpconf0();
for (i = 0; i < ((val & MVPCONF0_PTC) + 1); i++) { for (i = 0; i < ((val & MVPCONF0_PTC) + 1); i++) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册