microsoft / LIS3.5

Development drivers for Linux Integration Services
GNU General Public License v2.0
32 stars 13 forks source link

Hyper-V Doesn't Build on Linux Kernel Because Function Required for Hyper-V Build Was Changed #4

Closed danfoxley closed 10 years ago

danfoxley commented 10 years ago

Hyper-V calls function utf8s_to_utf16s and passes three arguments, the updated function requires passing five arguments.

See this for reference: https://lkml.org/lkml/2013/6/4/731

Kernel: 2.6.32-431.el6.x86_64

Output

./rhel6-hv-driver-install

Building Modules make: Entering directory /usr/src/kernels/2.6.32-431.3.1.el6.x86_64' CLEAN /root/LIS3.5-master/LIS3.5-master/hv-rhel6.x/hv/.tmp_versions make: Leaving directory/usr/src/kernels/2.6.32-431.3.1.el6.x86_64' make: Entering directory `/usr/src/kernels/2.6.32-431.3.1.el6.x86_64' CC [M] /root/LIS3.5-master/LIS3.5-master/hv-rhel6.x/hv/netvsc_drv.o CC [M] /root/LIS3.5-master/LIS3.5-master/hv-rhel6.x/hv/netvsc.o CC [M] /root/LIS3.5-master/LIS3.5-master/hv-rhel6.x/hv/rndis_filter.o /root/LIS3.5-master/LIS3.5-master/hv-rhel6.x/hv/rndis_filter.c: In function ârndis_filter_set_device_macâ: /root/LIS3.5-master/LIS3.5-master/hv-rhel6.x/hv/rndis_filter.c:579: error: incompatible type for argument 3 of âutf8s_to_utf16sâ include/linux/nls.h:55: note: expected âenum utf16_endianâ but argument is of type âwchar_t â /root/LIS3.5-master/LIS3.5-master/hv-rhel6.x/hv/rndis_filter.c:579: error: too few arguments to function âutf8s_to_utf16sâ /root/LIS3.5-master/LIS3.5-master/hv-rhel6.x/hv/rndis_filter.c:584: error: incompatible type for argument 3 of âutf8s_to_utf16sâ include/linux/nls.h:55: note: expected âenum utf16_endianâ but argument is of type âwchar_t â /root/LIS3.5-master/LIS3.5-master/hv-rhel6.x/hv/rndis_filter.c:584: error: too few arguments to function âutf8s_to_utf16sâ

abgupta commented 10 years ago

Thanks for opening the issue. Is it possible for you to submit a pull request with a fix? Abhishek

kattisrinivasan commented 10 years ago

This is supposed to build only against 2.6.32 kernels.

K. Y

From: danfoxley [mailto:notifications@github.com] Sent: Thursday, January 16, 2014 11:37 AM To: LIS/LIS3.5 Subject: [LIS3.5] Hyper-V Doesn't Build on Linux Kernel Because Function Required for Hyper-V Build Was Changed (#4)

Hyper-V calls function utf8s_to_utf16s and passes three arguments, the updated function requires passing five arguments.

See this for reference: https://lkml.org/lkml/2013/6/4/731

Kernel: 2.6.32-431.el6.x86_64

Output ./rhel6-hv-driver-install

Building Modules make: Entering directory /usr/src/kernels/2.6.32-431.3.1.el6.x86_64' CLEAN /root/LIS3.5-master/LIS3.5-master/hv-rhel6.x/hv/.tmp_versions make: Leaving directory/usr/src/kernels/2.6.32-431.3.1.el6.x86_64' make: Entering directory `/usr/src/kernels/2.6.32-431.3.1.el6.x86_64' CC [M] /root/LIS3.5-master/LIS3.5-master/hv-rhel6.x/hv/netvsc_drv.o CC [M] /root/LIS3.5-master/LIS3.5-master/hv-rhel6.x/hv/netvsc.o CC [M] /root/LIS3.5-master/LIS3.5-master/hv-rhel6.x/hv/rndis_filter.o /root/LIS3.5-master/LIS3.5-master/hv-rhel6.x/hv/rndis_filter.c: In function ârndis_filter_set_device_macâ: /root/LIS3.5-master/LIS3.5-master/hv-rhel6.x/hv/rndis_filter.c:579: error: incompatible type for argument 3 of âutf8s_to_utf16sâ include/linux/nls.h:55: note: expected âenum utf16_endianâ but argument is of type âwchar_t â /root/LIS3.5-master/LIS3.5-master/hv-rhel6.x/hv/rndis_filter.c:579: error: too few arguments to function âutf8s_to_utf16sâ /root/LIS3.5-master/LIS3.5-master/hv-rhel6.x/hv/rndis_filter.c:584: error: incompatible type for argument 3 of âutf8s_to_utf16sâ include/linux/nls.h:55: note: expected âenum utf16_endianâ but argument is of type âwchar_t â /root/LIS3.5-master/LIS3.5-master/hv-rhel6.x/hv/rndis_filter.c:584: error: too few arguments to function âutf8s_to_utf16sâ

— Reply to this email directly or view it on GitHubhttps://github.com/LIS/LIS3.5/issues/4.

danfoxley commented 10 years ago

Am I mistaken, I was running the build on: 2.6.32-431.el6.x86_64, is that a 2.6.32 Kernel, and so I should expect it to build?

kattisrinivasan commented 10 years ago

We have built this against the kernels we support. Perhaps Vivek can comment on this.

K. Y

From: danfoxley [mailto:notifications@github.com] Sent: Thursday, January 16, 2014 11:53 AM To: LIS/LIS3.5 Cc: KY Srinivasan Subject: Re: [LIS3.5] Hyper-V Doesn't Build on Linux Kernel Because Function Required for Hyper-V Build Was Changed (#4)

Am I mistaken, I was running the build on: 2.6.32-431.el6.x86_64, is that a 2.6.32 Kernel, and so I should expect it to build?

— Reply to this email directly or view it on GitHubhttps://github.com/LIS/LIS3.5/issues/4#issuecomment-32528673.

vyadavmsft commented 10 years ago

This will build only till RHEL 6.3 kernel , the kernel you mentioned is for RHEL 6.5 .

RHEL 6 Update 5 2.6.32-431 RHEL 6 Update 4 2.6.32-358 RHEL 6 Update 3 2.6.32-279 RHEL 6 Update 2 2.6.32-220 RHEL 6 Update 1 2.6.32-131.0.15 RHEL 6 GA 2.6.32-71

Thanks Vivek

abgupta commented 10 years ago

Seems like Vivek answered the question. So closing the issue.

danfoxley commented 10 years ago

Guys, is there work toward updating this to compile on 6.4 and 6.5?

abgupta commented 10 years ago

6.5 already comes with most of the code in LIS 3.5. This code is only for distributions that do not come prebuilt with LIS drivers. You should check the source code in the 6.5 ISO and try to add what you need from here. Let us know if you have more questions.