请教arm Linux开发时setegid、seteuid引起死锁,是内核原因吗

renyuxiao 2012-08-31 04:26:09
请教各位,在嵌入式Linux开发时调用了setegid(),用于切换到普通用户的数据区写文件,但是调用后程序当机,根本不返回任何值,就死在这个函数上了。
我是 用root 启动程序gid=0 uid=0 用setegid() 设置成 nobody用户,gid=8002 uid=8002


查看下来是setegid或者seteuid引起了deadlock,是不是由于arm linux 内核设置编译问题,请高手指教。
简单测试一个setegid代码,不会死锁,但是在我的程序里运行到一定阶段后就死锁了。程序应该没问题,原来老的cpu上能跑的,这次是升级硬件。

以前记得好像有个linux环境变量可以设置pthread锁为RECURSIVE 锁,这样不会死锁了,最近怎么google都找不到,不知是不是记错了。
...全文
276 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhujl2000163 2012-10-25
  • 打赏
  • 举报
回复
c++不懂,帮顶
  • 打赏
  • 举报
回复
好高端的程序员... 不懂,帮顶下。
renyuxiao 2012-09-06
  • 打赏
  • 举报
回复
查看下来是setegid或者seteuid引起了deadlock,是不是由于arm linux 内核设置编译问题,请高手指教。
简单测试一个setegid代码,不会死锁,但是在我的程序里运行到一定阶段后就死锁了。程序应该没问题,原来老的cpu上能跑的,这次是升级硬件。
renyuxiao 2012-09-03
  • 打赏
  • 举报
回复
请教,有人否?

21,615

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
  • 驱动开发/核心开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧