linux加载模块突然宕机重启

这个模块的作用是利用zookeeper来建立分布式锁,由于系统需要,我们都移植到了内核态下,单独的这个模块在加载的时候,突然就出现了宕机(次数也挺多,也有好的时候),然后过一段时间就重启了。查看日志,发现什么都没有,就直接restart了,请问这个该怎么得知我的程序哪里有错误呢?还是跟机器有关(有的机器挂掉的很频繁,有的很少)。而且挂掉的位置不固定,有时候在循环等待授予权限的时候挂掉,有时候直接在刚开始加载模块初始化zookeeper的时候挂掉,后者情况多一点。
请输入图片描述

请输入图片描述

模块初始化时的部分代码:

fl_lock_t *fl_lock = NULL;
int i;
printk("thread_init 1\n");
zoo_set_debug_level(ZOO_LOG_LEVEL_DEBUG);
printk("thread_init 2\n");
zoo_deterministic_conn_order(1); // enable deterministic order
printk("thread_init 3\n");
zh = zookeeper_init("192.168.2.77:2181", 0, 30000, &myid, 0, 0);

谢谢。

阅读 4.4k
1 个回答

嗯,请同学帮忙搞了一下,发现在另外一个机器上居然有错误提示。。原因是zookeeper本身有两个线程,但是在运行中无故就消失了一个。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题