VMware Workstation 12.5에서 리눅스커널 4.9를 쓰면 VMware kernel Updater가 제대로 실행이 안됩니다.
다음처럼 명령어 실행과 해당코드줄 변경을 해주세요
sudo -s
cd /usr/lib/vmware/modules/source
tar -xf vmnet.tar
tar -xf vmmon.tar
cd vmnet-only/
gedit userif.c
In vmnet-only/userif.c, around line 113, change
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 6, 0)
retval = get_user_pages(addr, 1, 1, 0, &page, NULL);
#else
retval = get_user_pages(current, current->mm, addr,
1, 1, 0, &page, NULL);
#endif
to
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 9, 0)
retval = get_user_pages(addr, 1, 0, &page, NULL);
#else
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 6, 0)
retval = get_user_pages(addr, 1, 1, 0, &page, NULL);
#else
retval = get_user_pages(current, current->mm, addr,
1, 1, 0, &page, NULL);
#endif
#endif
cd ..
cd vmmon-only/linux/
gedit hostif.c
– and in vmmon-only/linux/hostif.c, around line 1162, change
retval = get_user_pages((unsigned long)uvAddr, numPages, 0, 0, ppages, NULL);
#else
retval = get_user_pages(current, current->mm, (unsigned long)uvAddr,
numPages, 0, 0, ppages, NULL);
#endif
to
retval = get_user_pages((unsigned long)uvAddr, numPages, 0, ppages, NULL);
#else
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 6, 0)
retval = get_user_pages((unsigned long)uvAddr, numPages, 0, 0, ppages, NULL);
#else
retval = get_user_pages(current, current->mm, (unsigned long)uvAddr,
numPages, 0, 0, ppages, NULL);
#endif
#endif
cd ..
cd ..
tar -cf vmnet.tar vmnet-only
tar -cf vmmon.tar vmmon-only
성공적으로 실행이 됩니다.
--------------------------------------------------광고(Advertising)-------------------------------------------------------------------------------------