Author: protochaos
Forum: 설치/부팅 관련
Date: 2014-06-15
/home/hopeless/다운로드/DPO_RT3290_LinuxSTA_V2600_20120508/os/linux/../../os/linux/rt_linux.c:1136:20: error: incompatible types when assigning to type ‘int’ from type ‘kuid_t’
pOSFSInfo->fsuid = current_fsuid();
커널 3.10 이상이던가 부터 데이터형이 바꼈습니다.
kuid_t 형이 int가 아니라, struct로 바뀌었고, val멤버를 통해서 접근하게 되었습니다.
if (bSet) {
/* Save uid and gid used for filesystem access. */
/* Set user and group to 0 (root) */
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,29)
pOSFSInfo->fsuid = current->fsuid;
pOSFSInfo->fsgid = current->fsgid;
current->fsuid = current->fsgid = 0;
#elif LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0)
pOSFSInfo->fsuid = current_fsuid().val;
pOSFSInfo->fsgid = current_fsgid().val;
#else
pOSFSInfo->fsuid = current_fsuid();
pOSFSInfo->fsgid = current_fsgid();
#endif
pOSFSInfo->fs = get_fs();
set_fs(KERNEL_DS);
} else {
커널버전 몇 부터 바뀌었는지는 정확히 모르겠지만, 여튼, os/linux/rt_linux.c를 위의 코드처럼 바꿔주시면 됩니다.
Forum: 설치/부팅 관련
Date: 2014-06-15
/home/hopeless/다운로드/DPO_RT3290_LinuxSTA_V2600_20120508/os/linux/../../os/linux/rt_linux.c:1136:20: error: incompatible types when assigning to type ‘int’ from type ‘kuid_t’
pOSFSInfo->fsuid = current_fsuid();
커널 3.10 이상이던가 부터 데이터형이 바꼈습니다.
kuid_t 형이 int가 아니라, struct로 바뀌었고, val멤버를 통해서 접근하게 되었습니다.
if (bSet) {
/* Save uid and gid used for filesystem access. */
/* Set user and group to 0 (root) */
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,29)
pOSFSInfo->fsuid = current->fsuid;
pOSFSInfo->fsgid = current->fsgid;
current->fsuid = current->fsgid = 0;
#elif LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0)
pOSFSInfo->fsuid = current_fsuid().val;
pOSFSInfo->fsgid = current_fsgid().val;
#else
pOSFSInfo->fsuid = current_fsuid();
pOSFSInfo->fsgid = current_fsgid();
#endif
pOSFSInfo->fs = get_fs();
set_fs(KERNEL_DS);
} else {
커널버전 몇 부터 바뀌었는지는 정확히 모르겠지만, 여튼, os/linux/rt_linux.c를 위의 코드처럼 바꿔주시면 됩니다.