diff options
author | Gleb Smirnoff <glebius@FreeBSD.org> | 2014-03-13 03:42:24 +0000 |
---|---|---|
committer | Gleb Smirnoff <glebius@FreeBSD.org> | 2014-03-13 03:42:24 +0000 |
commit | b245f96c44c5c3b395480706327250c29f8d19cc (patch) | |
tree | 23c54b335bf31cd906e8cf3bad37e838d9a80c2d /sys/dev/vxge/vxge.c | |
parent | 3d31c75401c066d17bb3d3baef0a2a7c4ffe7708 (diff) | |
download | src-b245f96c44c5c3b395480706327250c29f8d19cc.tar.gz src-b245f96c44c5c3b395480706327250c29f8d19cc.zip |
Since 32-bit if_baudrate isn't enough to describe a baud rate of a 10 Gbit
interface, in the r241616 a crutch was provided. It didn't work well, and
finally we decided that it is time to break ABI and simply make if_baudrate
a 64-bit value. Meanwhile, the entire struct if_data was reviewed.
o Remove the if_baudrate_pf crutch.
o Make all fields of struct if_data fixed machine independent size. The
notion of data (packet counters, etc) are by no means MD. And it is a
bug that on amd64 we've got a 64-bit counters, while on i386 32-bit,
which at modern speeds overflow within a second.
This also removes quite a lot of COMPAT_FREEBSD32 code.
o Give 16 bit for the ifi_datalen field. This field was provided to
make future changes to if_data less ABI breaking. Unfortunately the
8 bit size of it had effectively limited sizeof if_data to 256 bytes.
o Give 32 bits to ifi_mtu and ifi_metric.
o Give 64 bits to the rest of fields, since they are counters.
__FreeBSD_version bumped.
Discussed with: emax
Sponsored by: Netflix
Sponsored by: Nginx, Inc.
Notes
Notes:
svn path=/head/; revision=263102
Diffstat (limited to 'sys/dev/vxge/vxge.c')
-rw-r--r-- | sys/dev/vxge/vxge.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/dev/vxge/vxge.c b/sys/dev/vxge/vxge.c index 365084359809..20e5e245e0ce 100644 --- a/sys/dev/vxge/vxge.c +++ b/sys/dev/vxge/vxge.c @@ -322,7 +322,7 @@ vxge_init_locked(vxge_dev_t *vdev) status = vxge_hal_device_mtu_check(vpath_handle, ifp->if_mtu); if (status != VXGE_HAL_OK) { device_printf(vdev->ndev, - "invalid mtu size %ld specified\n", ifp->if_mtu); + "invalid mtu size %u specified\n", ifp->if_mtu); goto _exit1; } @@ -2908,7 +2908,7 @@ vxge_change_mtu(vxge_dev_t *vdev, unsigned long new_mtu) goto _exit0; (vdev->ifp)->if_mtu = new_mtu; - device_printf(vdev->ndev, "MTU changed to %ld\n", (vdev->ifp)->if_mtu); + device_printf(vdev->ndev, "MTU changed to %u\n", (vdev->ifp)->if_mtu); if (vdev->is_initialized) { if_down(vdev->ifp); @@ -3241,7 +3241,7 @@ vxge_device_hw_info_print(vxge_dev_t *vdev) snprintf(vdev->config.nic_attr[VXGE_PRINT_MTU_SIZE], sizeof(vdev->config.nic_attr[VXGE_PRINT_MTU_SIZE]), - "%lu", vdev->ifp->if_mtu); + "%u", vdev->ifp->if_mtu); snprintf(vdev->config.nic_attr[VXGE_PRINT_LRO_MODE], sizeof(vdev->config.nic_attr[VXGE_PRINT_LRO_MODE]), |