After creating a VM for Ubuntu 17.04 64-bit, in Parallels Desktop 11.2.3 (32663), I get the following compilation errors when trying to install Parallels Tools into the VM:
make[2]: Entering directory '/usr/src/linux-headers-4.10.0-19-generic'
CC [M] /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.o
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c: In function 'map_user_request':
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:484:9: error: passing argument 5 of 'get_user_pages' from incompatible pointer type [-Werror=incompatible-pointer-types]
uple->p, NULL);
^~~~
In file included from ./include/linux/scatterlist.h:7:0,
from ./include/linux/dmapool.h:14,
from ./include/linux/pci.h:1286,
from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:11:
./include/linux/mm.h:1293:6: note: expected 'struct vm_area_struct **' but argument is of type 'struct page **'
long get_user_pages(unsigned long start, unsigned long nr_pages,
^~~~~~~~~~~~~~
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:481:8: error: too many arguments to function 'get_user_pages'
got = get_user_pages(
^~~~~~~~~~~~~~
In file included from ./include/linux/scatterlist.h:7:0,
from ./include/linux/dmapool.h:14,
from ./include/linux/pci.h:1286,
from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:11:
./include/linux/mm.h:1293:6: note: declared here
long get_user_pages(unsigned long start, unsigned long nr_pages,
The /var/log/parallels-tools-install.log file is attached.
make[2]: Entering directory '/usr/src/linux-headers-4.10.0-19-generic'
CC [M] /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.o
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c: In function 'map_user_request':
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:484:9: error: passing argument 5 of 'get_user_pages' from incompatible pointer type [-Werror=incompatible-pointer-types]
uple->p, NULL);
^~~~
In file included from ./include/linux/scatterlist.h:7:0,
from ./include/linux/dmapool.h:14,
from ./include/linux/pci.h:1286,
from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:11:
./include/linux/mm.h:1293:6: note: expected 'struct vm_area_struct **' but argument is of type 'struct page **'
long get_user_pages(unsigned long start, unsigned long nr_pages,
^~~~~~~~~~~~~~
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:481:8: error: too many arguments to function 'get_user_pages'
got = get_user_pages(
^~~~~~~~~~~~~~
In file included from ./include/linux/scatterlist.h:7:0,
from ./include/linux/dmapool.h:14,
from ./include/linux/pci.h:1286,
from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:11:
./include/linux/mm.h:1293:6: note: declared here
long get_user_pages(unsigned long start, unsigned long nr_pages,
The /var/log/parallels-tools-install.log file is attached.