search
Categories
Sponsors
VirtualMetric Hyper-V Monitoring, Hyper-V Reporting
Archive
Blogroll

Badges
MCSE
Community

Cozumpark Bilisim Portali
Debian 2.6.36 kernel upgrade for Hyper-V Client drivers
Posted in Linux Server | 41 Comments | 35,228 views | 31/10/2010 14:39
Warning! It seems this kernel upgrade only works on Debian 5. You should compile a new kernel for Debian 6.
See: http://www.yusufozturk.info/linux-server/building-your-own-kernel-packages-for-hyper-v-support.html

You can use Debian on Hyper-V with 4 vCPU support.

1) Install a clean Debian 5.0.6

2) Do following:

1
2
3
4
5
6
7
8
apt-get update
aptitude update
wget -c http://www.yusufozturk.info/linux/linux-image-2.6.36-hyperv-debian.x86_64.deb
wget -c http://www.yusufozturk.info/linux/linux-headers-2.6.36-hyperv-debian.x86_64.deb
apt-get install build-essential
dpkg -i linux-image-2.6.36-hyperv-debian.x86_64.deb linux-headers-2.6.36-hyperv-debian.x86_64.deb
echo -e "hv_vmbus\nhv_storvsc\nhv_blkvsc\nhv_netvsc" >> /etc/initramfs-tools/modules 
update-initramfs –u –k 2.6.36-hyperv

That’s it. Reboot your server with new kernel. Now you can use synthetic ethernet and 4 vCPU.

Also integrated shutdown is available:

You can use CPU stress tool for tests.


Comments (41)

Hyper-V Linux Integration Services now (unofficially) available as Debian package – mbrmexico.com

November 9th, 2010
15:23:07

[…] Ozturk has released a Debian package which provides Linux Integration Services for the Microsoft Hyper-V […]


Richard

December 6th, 2010
06:14:28

I tried to install, but received the following error:

# dpkg -i linux-image-2.6.36-hyperv-debian.x86_64.deb
dpkg: error processing linux-image-2.6.36-hyperv-debian.x86_64.deb (–install):
package architecture (amd64) does not match system (i386)

Pretty obvious why it has failed, but are there any plans to release an i386 version?


admin

December 6th, 2010
12:22:26

Ah right. I’ve never thought about i386, but I’ll work about it. Thanks for feedback.


Danny G Smith

December 9th, 2010
22:59:46

When I run the last command, I get an error message:
You must specify at least one of -c, -u, or -d.

I suspect it is operator error, but can you give me some hints to track it down?


Danny G Smith

December 10th, 2010
00:05:25

Ok, for some reason, update-initramfs -k all -u seemed to work. However, I initially installed it under legacy, not under a synthetic adapter, so now when our windows admin changed it to synthetic, it no longer gets a network connection. Did you start out in synthetic with a full dvd, not a net install? I would assume it is just the wrong device, i.e. eth0, not some other one. Dmesg, said that it was moved from eth0 to eth1, but when I changed /etc/network/interfaces to eth1, and tried it again, it still didn’t work.

Any help would be appreciated.


admin

December 11th, 2010
12:23:01

Hello Danny,
I started it with legacy with a full dvd image. After reboot, i switched that legacy adapter with synthetic. Did you do “ifconfig -a” to get all devices after reboot? So you can change your ethernet configuration with the new device id.


admin

January 7th, 2011
23:33:17

Hello Richard,

Please check here for 32 bit support:
http://www.yusufozturk.info/linux-server/debian-2-6-36-kernel-upgrade-for-hyper-v-client-drivers-32-bit.html


Erich Kaderka

February 11th, 2011
22:04:11

I’ve got a problem in boot sequence, it shows me these errors:

$ dmesg | grep ERROR
[ 4.377066] BLKVSC_DRV: blkvsc_probe() ERROR!! register_blkdev() failed! ret -16
[ 4.378431] VMBUS_DRV: vmbus_probe() ERROR!! probe() failed for device vmbus_0_1 (ffff880037b348c0) on driver blkvsc (-16)…
[ 4.380209] BLKVSC_DRV: blkvsc_probe() ERROR!! register_blkdev() failed! ret -16
[ 4.381148] VMBUS_DRV: vmbus_probe() ERROR!! probe() failed for device vmbus_0_2 (ffff880037b39cc0) on driver blkvsc (-16)…
[ 4.382538] BLKVSC_DRV: blkvsc_probe() ERROR!! register_blkdev() failed! ret -16
[ 4.383449] VMBUS_DRV: vmbus_probe() ERROR!! probe() failed for device vmbus_0_3 (ffff880037b318c0) on driver blkvsc (-16)…
[ 4.399578] BLKVSC_DRV: blkvsc_probe() ERROR!! register_blkdev() failed! ret -16
[ 4.400506] BLKVSC_DRV: blkvsc_probe() ERROR!! register_blkdev() failed! ret -16
[ 4.401317] BLKVSC_DRV: blkvsc_probe() ERROR!! register_blkdev() failed! ret -16
[ 4.402309] VMBUS_DRV: vmbus_probe() ERROR!! probe() failed for device vmbus_0_8 (ffff880037b39cc0) on driver blkvsc (-16)…
[ 4.403248] VMBUS_DRV: vmbus_child_device_register() ERROR!! unable to register child device (ffff880037b39cc0)
[ 4.404260] VMBUS: VmbusChannelProcessOffer() ERROR!! unable to add child device object (relid 1)
[ 4.405437] VMBUS_DRV: vmbus_probe() ERROR!! probe() failed for device vmbus_0_9 (ffff880037b348c0) on driver blkvsc (-16)…
[ 4.406567] VMBUS_DRV: vmbus_child_device_register() ERROR!! unable to register child device (ffff880037b348c0)
[ 4.407662] VMBUS: VmbusChannelProcessOffer() ERROR!! unable to add child device object (relid 2)
[ 4.409168] VMBUS_DRV: vmbus_probe() ERROR!! probe() failed for device vmbus_0_10 (ffff88003787ecc0) on driver blkvsc (-16)…
[ 4.410482] VMBUS_DRV: vmbus_child_device_register() ERROR!! unable to register child device (ffff88003787ecc0)
[ 4.411623] VMBUS: VmbusChannelProcessOffer() ERROR!! unable to add child device object (relid 3)

I tried to solve it with this how-to: http://social.technet.microsoft.com/Forums/en-US/windowsserver2008r2virtualization/thread/6f82a7f2-ddb2-4db4-af10-ee133be604eb , but it didn’t help.

Have you an idea what solution could me? Have you this problem too?


admin

February 12th, 2011
01:22:03

Hello Erich,

I haven’t seen that error before. Could you tell me exactly which version of Debian did you used? So I can use that version for test purposes.

Also could you tell me about Hyper-V version and VM configuration?

Thanks.

Yusuf.


Maciasz

February 12th, 2011
17:20:52

I’ve got the same problem as Erich with Debian 6. Now I can’t download any Debian 5 iso. Recently Debian sucks.


Erich Kaderka

February 13th, 2011
11:54:14

Hello,

I am using Debian version 6.0 Squeeze AMD64

Hyper-V – 2008 64 bit Standart

memory: 2GB
cpu: 2 Virtual
network: older adapter
HDD: IDE (2 every is on another physical disk)

It is default setting.

Thank you for your reply.


admin

February 13th, 2011
20:07:47

So it seems there are some kernel configuration changes in Debian 6..

Actually you can compile a new Hyper-V kernel. See:
http://www.yusufozturk.info/linux-server/building-your-own-kernel-packages-for-hyper-v-support.html

or you can wait for a while.. I’ll update kernel.


kev

March 14th, 2011
14:12:41

More easy: http://docs.homelinux.org/doku.php?id=using_linux_ic_with_debian_squeeze


Marco

March 15th, 2011
18:45:22

I just ran into the same error as Erich and Maciasz. The system seems to work fine though. Maybe (!) the error messages only appears at startup and can safely be ignored.


Jalal

March 28th, 2011
16:55:48

Hello Yusuf,

I am running Debian 6 on Hyper-v 2008 R2 and getting a strange problem:

I am getting the same errors above, and the VM works fine for one or two days but then loses network connectivity. I have to reboot the VM and only then it will work again.

Appreciate your help.


MarekB

March 30th, 2011
16:45:49

I’ve got the same problem as Erich, Maciasz and other with Debian 6.0.1a and kernel 2.6.38.2.

Linux starts without errors when I change note in file /etc/initramfs-tools/modules:
hv_vmbus -> vmbus
hv_storvsc -> storevsc
etc…

It seems to be fine, but I am not sure it’s correctly!?


admin

March 30th, 2011
17:34:28

@MarekB
I don’t know exact path right now, but you should see modules under kernel directory. Do you see them as hv_vmbus or vmbus? I think vmbus is not correct but you don’t see any error because that module is not exist.

@Jalal
You face that with emulated adapter or synthetic adapter? It’s very strange, have you checked logs?


jwpmzijl

March 31st, 2011
18:41:16

May I which version of the IC drivers will be installed using this method?
I’m asking because I get error messages in the Windows Event log stating:
– event 6 storvsp A storage device in ‘PM-web1’ loaded but has a different version from the server. Server version 4.2 Client version 2.0 (Virtual machine ID 7EE9196A-41E9-48FC-8503-E59FBE44BEF2). The device will work, but this is an unsupported configuration.

I am running Server 2008R2
These messages do not concern me much. But my VM locks up when I start copying files to a external drive (using FTP).


MarekB

April 1st, 2011
16:19:57

You are rights Yusuf. I don’t have a files vmbus, etc… in my system.
I found files /lib/modules/2.6.38.2-hyperv/kernel/drivers/staging/hv/hv_*.ko

Then I compiled again kernel 2.6.38.2-amd64 with hyper-v integration following Your instruction and copy *.deb packages to new installed virtual machine (debian 6.0.1a).
I install them and restart system without notes in file /etc/initramfs-tools/modules and without execute update-initramfs.
Linux starts without errors. In log file dmesg I see the modules hv_* there are loaded correctly.
It seems to be hyper-v integration working fine.

Maybe We don’t need notes in file /etc/initramfs-tools/modules?


tuxic

April 13th, 2011
12:38:10

I’m getting the same errors:
BLKVSC_DRV: blkvsc_probe() ERROR!! register_blkdev() failed! ret -16

The system seems to be running fine though, also in hyper-v log is encounter the same errors as jwpmzijl (reply above)


Hyper-V 上の CentOS 5.5 に統合サービスをインストール « COMPNET

June 2nd, 2011
05:58:55

[…] 5 (lenny) と Debian 6 (squeeze) 向けのものがそれぞれ「Yusuf Ozturk » Debian 2.6.36 kernel upgrade for Hyper-V Client drivers」と「Yusuf Ozturk » Building your own Debian Kernel packages for Hyper-V […]


alvelcom

June 20th, 2011
21:19:46

Hm… Debian packages seems to be unavalible, e.g. 404 Not Found
It’s strange because ls have they.


admin

June 21st, 2011
01:36:40

It’s a mime type issue. Sorry for that, I fixed it.

Yusuf.


Sierramike

July 18th, 2011
17:57:21

Hello,

I followed this link to download a new kernel :
http://docs.homelinux.org/doku.php?id=using_linux_ic_with_debian_squeeze

This is the 2.6.39.2, installation went fine on my Debian 6.0.2.1 amd64 running on Hyper-V role on a 2008 Std Server.

I had to add manually these lines to the /etc/initramfs-tools/modules:
hv_vmbus
hv_storvsc
hv_blkvsc
hv_netvsc
Then run update-initramfs -u and then reboot.

System hang after few seconds with error :
“Fixing recursive fault but reboot is needed”

After trying combinations, it seems to be the “hv_blkvsc” line that makes that problem …

Are you aware of anything that should be tuned or disabled in order to run with hv_blkvsc enabled ?
I’ve read it is used for IDE drives under Hyper-V, and as my boot drive is configured on IDE I think it should be useful to get this module loaded …


admin

July 19th, 2011
01:06:44

After reboot you’ve changes emulated adapter with synthetic adapter? If not, you should do.

Also I don’t know how they compile that build so i can’t tell anything about reason of the problem :(

Please test with synthetic network adapter and share the results.

Thanks.

Yusuf.


Taz

July 19th, 2011
08:20:24

Hi,
greate howto.

Are they any fixes for the blkvsc_probe() errors?
Like: BLKVSC_DRV: blkvsc_probe() ERROR!! register_blkdev() failed! ret -16

Greetz


Jonathan

July 20th, 2011
17:49:08

For the moment, this works for me:

http://docs.homelinux.org/doku.php?id=using_linux_ic_with_debian_squeeze#using_hyper-v_linux_integration_components_with_debian_squeeze_64bit


Microsoft Virtualisierungs Podcast Folge 3: Azure und Hyper-V – Carsten Rachfahl

July 27th, 2011
13:45:18

[…] Ozturk Artikel über Linux Versionen mit Hyper-V: “Debian 2.6.36 kernel upgrade for Hyper-V Client drivers” und “OpenSUSE 2.6.36 kernel upgrade for Hyper-V Client […]


Un point sur Linux et hyper-V | | Vecteur InformatiqueVecteur Informatique

August 8th, 2011
16:08:56

[…] […]


moo

March 10th, 2012
14:44:10

Using kernel 2.6.32-5-amd64 I tried to compile my own kernel, but it wouldn’t boot the kernel after that (caps and scroll lock flashing) Then I tried the link linked here http://docs.homelinux.org/doku.php?id=using_linux_ic_with_debian_squeeze and everything seemed to go ok. The network adapter seems to be working, but stress testing the CPU shows that Win server 2008 is only using around 1% of the CPU when the Debian CPU is 400% (4 cores?) Probably just gonna move over to VMWare


admin

March 11th, 2012
22:22:11

Hello moo,

Debian is not a supported OS at the moment. This examples are for experimental use only. You shouldn’t use them for production servers.

Have you tried Ubuntu? Ubuntu comes with LIC by default.

Yusuf.


Marvin256

May 30th, 2012
19:42:41

There is a problem with the download of http://www.yusufozturk.info/linux/linux-image-2.6.36-hyperv-debian.x86_64.deb (404 not found)

This is because you have to allow *.deb in your IIS configuration (simply add the mime type)


kipo

June 7th, 2012
13:51:05

Here You find perfect working hyper-v kernels with fixed ata_piix/storvsc module http://docs.homelinux.org/doku.php?id=using_linux_ic_with_debian_squeeze


Haji

July 24th, 2012
09:31:04

Hi There,

When you have a chance may you please update your IIS MIME settings to allow .deb file extensions as the following four files cannot be downloaded (404 error):

http://www.yusufozturk.info/linux/linux-headers-2.6.36-hyperv-debian.i386.deb
http://www.yusufozturk.info/linux/linux-headers-2.6.36-hyperv-debian.x86_64.deb
http://www.yusufozturk.info/linux/linux-image-2.6.36-hyperv-debian.i386.deb
http://www.yusufozturk.info/linux/linux-image-2.6.36-hyperv-debian.x86_64.deb

Kind regards,

Haji!


admin

July 25th, 2012
10:36:44

Sorry for my late response. I’ve added .deb mime type to IIS.

Regards,
Yusuf.


Haji

July 25th, 2012
17:36:44

Thank you so much!

Highly appreciated not only for your efforts but making awesome even more awesome!


Debian on HyperV – Admins Goodies

October 11th, 2012
19:37:11

[…] on a Hyper-V virtual machine. I had to add a legacy network card. I follow this tutorial http://www.yusufozturk.info/linux-server/debian-2-6-36-kernel-upgrade-for-hyper-v-client-drivers.htm… to add Hyper-V driver but when I reboot with the new kernel i got this […]


Chris

November 6th, 2012
20:42:21

Hi, trying to follow the guide but I am getting the Error 404 on the wget liske what someone else had mentioned before.


Criando um Kernel Linux preparado para Microsoft Hyper-V « Arquivo |-VSA-|

November 30th, 2012
18:31:30

[…] Debian que possuísse os drivers necessários para funcionar o adaptador “Synthetic”. No post ele disponibiliza a versão 2.6.36 do kernel para Debian 5, este era o problema, eu precisava de […]


Debian On Hyper-V | 開発メモ帳

August 3rd, 2013
17:56:38

[…] http://www.yusufozturk.info/linux-server/debian-2-6-36-kernel-upgrade-for-hyper-v-client-drivers.htm… […]


Zeta

October 15th, 2014
15:01:58

Hi ,

When you have a chance may you please update your IIS MIME settings to allow .deb file extensions as the following four files cannot be downloaded (404 error):

http://www.yusufozturk.info/linux/linux-headers-2.6.36-hyperv-debian.i386.deb
http://www.yusufozturk.info/linux/linux-headers-2.6.36-hyperv-debian.x86_64.deb
http://www.yusufozturk.info/linux/linux-image-2.6.36-hyperv-debian.i386.deb
http://www.yusufozturk.info/linux/linux-image-2.6.36-hyperv-debian.x86_64.deb

Kind regards,



Leave a Reply