Hi,
I'm running my Proxmox host as a iSCSI target for some backup purposes. This worked fine in 2.3. But not now when upgrading to 3.0
I use the iscsitarget and iscsitarget-dkms packages. The DKMS packages fails to compile because of missing definitions in linux/blkdev.h:
Apparently the definition of struct blk_plug is missing from the header files. Digging some more I found that /usr/src/linux-headers-2.6.32-20-pve/include/linux/blkdev.h does not define this. But it was there in the new wheezy kernel that came with 3.0 upgrade (/usr/src/linux-headers-3.2.0-4-common/include/linux/blkdev.h).
More checking found that the problem is really in the iscsitarget-dkms package. There is a patch that fixes the problem above, but the patch is for ver 2.6.38 and not applied. But the patch seems to fix the problems so what I did was to modify the /var/lib/dkms/iscsitarget/1.4.20.2/source/dkms.conf file so that the patch is applied.
So it works now; can't understand how I got it working for Proxmox 2.3
Maybe this will help someone
//Martin
I'm running my Proxmox host as a iSCSI target for some backup purposes. This worked fine in 2.3. But not now when upgrading to 3.0
I use the iscsitarget and iscsitarget-dkms packages. The DKMS packages fails to compile because of missing definitions in linux/blkdev.h:
Code:
CC [M] /var/lib/dkms/iscsitarget/1.4.20.2/build/kernel/block-io.o
/var/lib/dkms/iscsitarget/1.4.20.2/build/kernel/block-io.c: In function ‘blockio_make_request’:
/var/lib/dkms/iscsitarget/1.4.20.2/build/kernel/block-io.c:59:18: error: storage size of ‘plug’ isn’t known
Apparently the definition of struct blk_plug is missing from the header files. Digging some more I found that /usr/src/linux-headers-2.6.32-20-pve/include/linux/blkdev.h does not define this. But it was there in the new wheezy kernel that came with 3.0 upgrade (/usr/src/linux-headers-3.2.0-4-common/include/linux/blkdev.h).
More checking found that the problem is really in the iscsitarget-dkms package. There is a patch that fixes the problem above, but the patch is for ver 2.6.38 and not applied. But the patch seems to fix the problems so what I did was to modify the /var/lib/dkms/iscsitarget/1.4.20.2/source/dkms.conf file so that the patch is applied.
Code:
--- dkms.conf.org 2013-06-04 14:49:28.000000000 +0200
+++ dkms.conf 2013-06-04 14:50:26.000000000 +0200
@@ -37,3 +37,5 @@
PATCH_MATCH[13]="2\.6\.16\.60-.*"
PATCH[14]="compat-rhel4.patch"
PATCH_MATCH[14]="2\.6\.9-.*\.(el|plus\.c4)"
+PATCH[15]="compat-2.6.38.patch"
+PATCH_MATCH[15]="2\.6\.(9|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31|32|33|34|35|36|37|38)"
So it works now; can't understand how I got it working for Proxmox 2.3
Maybe this will help someone
//Martin