uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(45):未命名union的后遗症

快乐虾

http://blog.csdn.net/lights_joy/

[email protected]

本文适用于

ADI bf561 DSP

优视BF561EVB开发板

uclinux-2008r1.5-rc3(smp patch)

Visual DSP++ 5.0(update 5)

欢迎转载,但请保留作者信息

在《uclinux-2008R1.5-RC3(bf561)VDSP5的移植(38):未命名union的问题》中,将signal_struct这个结构体中的未命名union起了个名字,引起了一个错误:

"..\..\linux-2.6.x\include\linux/sched.h", line 1088: cc0136: error: struct

"signal_struct" has no field "__session"

return sig->__session;

^

"..\..\linux-2.6.x\include\linux/sched.h", line 1098: cc0136: error: struct

"signal_struct" has no field "__session"

sig->__session = session;

所对应的代码为:

static inline pid_t signal_session(struct signal_struct *sig)

{

return sig->__session;

}

static inline void set_signal_session(struct signal_struct *sig, pid_t session)

{

sig->__session = session;

}

正确的做法是将它们改为:

static inline pid_t signal_session(struct signal_struct *sig)

{

return sig->signal_struct_union.__session;

}

static inline void set_signal_session(struct signal_struct *sig, pid_t session)

{

sig->signal_struct_union.__session = session;

}

1 参考资料

uclinux-2008R1.5-RC3(bf561)VDSP5的移植(40):远调用(2009-1-17)

uclinux-2008R1.5-RC3(bf561)VDSP5的移植(41)bfin_write_EVT15(2009-1-17)

uclinux-2008R1.5-RC3(bf561)VDSP5的移植(42).macro(2009-1-17)

uclinux-2008R1.5-RC3(bf561)VDSP5的移植(43)exception_stacks(2009-1-18)

uclinux-2008R1.5-RC3(bf561)VDSP5的移植(44)Out of memory(2009-01-19)

你可能感兴趣的:(linux,.net,Blog)