From: VMware, Inc <> Date: Thu, 17 Dec 2009 22:58:07 +0000 (-0800) Subject: Internal branch sync. Included in this change: X-Git-Tag: 2009.12.16-217847~12 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=245e1fce520f8c822379ce9e2cb4fbe87093f602;p=thirdparty%2Fopen-vm-tools.git Internal branch sync. Included in this change: . Fix linux vmxnet2 driver checksum offload configuration. . Changes in shared code that don't affect open-vm-tools functionality. Signed-off-by: Marcelo Vanzin --- diff --git a/open-vm-tools/modules/linux/pvscsi/scsi_defs.h b/open-vm-tools/modules/linux/pvscsi/scsi_defs.h index 649cab477..935818fdc 100644 --- a/open-vm-tools/modules/linux/pvscsi/scsi_defs.h +++ b/open-vm-tools/modules/linux/pvscsi/scsi_defs.h @@ -864,6 +864,8 @@ typedef struct { // connect/disconnect page dimm :1, // disconnect immediate (SCSI-3) :3, emdp :1; // enable MODIFY DATA POINTER (SCSI-3) + uint8 reserved; + uint16 firstBurstSize; } SCSIConnectPage; typedef struct { // peripheral device page @@ -2369,7 +2371,7 @@ extern SCSICmdInfo scsiCmdInfo[256]; {SCSI_CMD_RELEASE_UNIT10, SCSI_XFER_AUTO, NULL, SCSI_DONT_EMULATE}, \ {0x58, SCSI_XFER_AUTO, NULL, SCSI_DONT_EMULATE}, \ {0x59, SCSI_XFER_AUTO, NULL, SCSI_DONT_EMULATE}, \ - {SCSI_CMD_MODE_SENSE10, SCSI_XFER_TOHOST, "MODE SENSE(10)", SCSI_DONT_EMULATE}, \ + {SCSI_CMD_MODE_SENSE10, SCSI_XFER_TOHOST, "MODE SENSE(10)", SCSI_EMULATE}, \ {SCSI_CMD_CLOSE_SESSION, SCSI_XFER_AUTO, NULL, SCSI_DONT_EMULATE}, \ {SCSI_CMD_READ_BUFFER_CAPACITY, SCSI_XFER_AUTO, NULL, SCSI_DONT_EMULATE}, \ {SCSI_CMD_SEND_CUE_SHEET, SCSI_XFER_AUTO, NULL, SCSI_DONT_EMULATE}, \ diff --git a/open-vm-tools/modules/linux/vmxnet/vmxnet.c b/open-vm-tools/modules/linux/vmxnet/vmxnet.c index 22f5b6c53..5ac843079 100644 --- a/open-vm-tools/modules/linux/vmxnet/vmxnet.c +++ b/open-vm-tools/modules/linux/vmxnet/vmxnet.c @@ -436,7 +436,7 @@ vmxnet_set_tx_csum(struct net_device *netdev, uint32 val) if (val) { #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,0) struct Vmxnet_Private *lp = netdev_priv(netdev); - if (lp->capabilities & VMNET_CAP_HW_CSUM) { + if (lp->capabilities & (VMNET_CAP_IP4_CSUM | VMNET_CAP_HW_CSUM)) { netdev->features |= NETIF_F_HW_CSUM; return 0; } @@ -1305,7 +1305,7 @@ vmxnet_probe_features(struct net_device *dev, // IN: printk(KERN_INFO "features:"); #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,0) if (lp->capabilities & VMNET_CAP_IP4_CSUM) { - dev->features |= NETIF_F_IP_CSUM; + dev->features |= NETIF_F_HW_CSUM; printk(" ipCsum"); } if (lp->capabilities & VMNET_CAP_HW_CSUM) { diff --git a/open-vm-tools/modules/linux/vmxnet/vmxnet_version.h b/open-vm-tools/modules/linux/vmxnet/vmxnet_version.h index bb4a27b0d..29146fecd 100644 --- a/open-vm-tools/modules/linux/vmxnet/vmxnet_version.h +++ b/open-vm-tools/modules/linux/vmxnet/vmxnet_version.h @@ -25,8 +25,8 @@ #ifndef _VMXNET_VERSION_H_ #define _VMXNET_VERSION_H_ -#define VMXNET_DRIVER_VERSION 2.0.5.0 -#define VMXNET_DRIVER_VERSION_COMMAS 2,0,5,0 -#define VMXNET_DRIVER_VERSION_STRING "2.0.5.0" +#define VMXNET_DRIVER_VERSION 2.0.6.0 +#define VMXNET_DRIVER_VERSION_COMMAS 2,0,6,0 +#define VMXNET_DRIVER_VERSION_STRING "2.0.6.0" #endif /* _VMXNET_VERSION_H_ */ diff --git a/open-vm-tools/modules/shared/vmxnet/npa_defs.h b/open-vm-tools/modules/shared/vmxnet/npa_defs.h index 2ce333aea..aa531c608 100644 --- a/open-vm-tools/modules/shared/vmxnet/npa_defs.h +++ b/open-vm-tools/modules/shared/vmxnet/npa_defs.h @@ -39,6 +39,10 @@ #define VMXNET3_NPA_CMD_FAILURE 1 #define VMXNET3_PLUGIN_INFO_LEN 32 // XXX: unify the definitions +#define VMXNET3_MAX_TX_DESC_SIZE 256 +#define VMXNET3_MAX_RX_DESC_SIZE 256 +#define VMXNET3_MAX_TX_RINGS 4 +#define VMXNET3_MAX_RX_RINGS 4 /* these structure are versioned using the vmxnet3 version */