diff options
author | marius <marius@FreeBSD.org> | 2014-05-28 09:06:36 +0000 |
---|---|---|
committer | marius <marius@FreeBSD.org> | 2014-05-28 09:06:36 +0000 |
commit | 9dc1c502483e7b4e232e9b286bf7843190986d13 (patch) | |
tree | fe065fe8dd2b5f496c17360d7b2ad0271dd88f6d /sys/dev/hyperv | |
parent | 357551c7e10fab9433eb757bde6ff1f02a30ee19 (diff) | |
download | FreeBSD-src-9dc1c502483e7b4e232e9b286bf7843190986d13.zip FreeBSD-src-9dc1c502483e7b4e232e9b286bf7843190986d13.tar.gz |
MFC: r264177
Make some unwise casts. On i386 these casts wind up being safe. Rather
than disturb the API, go with these casts to shut gcc up.
Diffstat (limited to 'sys/dev/hyperv')
-rw-r--r-- | sys/dev/hyperv/netvsc/hv_net_vsc.c | 20 | ||||
-rw-r--r-- | sys/dev/hyperv/netvsc/hv_netvsc_drv_freebsd.c | 6 | ||||
-rw-r--r-- | sys/dev/hyperv/netvsc/hv_rndis_filter.c | 5 | ||||
-rw-r--r-- | sys/dev/hyperv/storvsc/hv_storvsc_drv_freebsd.c | 16 |
4 files changed, 26 insertions, 21 deletions
diff --git a/sys/dev/hyperv/netvsc/hv_net_vsc.c b/sys/dev/hyperv/netvsc/hv_net_vsc.c index aeee94d..8f814cd 100644 --- a/sys/dev/hyperv/netvsc/hv_net_vsc.c +++ b/sys/dev/hyperv/netvsc/hv_net_vsc.c @@ -24,6 +24,8 @@ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * $FreeBSD$ */ /** @@ -179,7 +181,7 @@ hv_nv_init_rx_buffer_with_net_vsp(struct hv_device *device) /* Send the gpadl notification request */ ret = hv_vmbus_channel_send_packet(device->channel, init_pkt, - sizeof(nvsp_msg), (uint64_t)init_pkt, + sizeof(nvsp_msg), (uint64_t)(uintptr_t)init_pkt, HV_VMBUS_PACKET_TYPE_DATA_IN_BAND, HV_VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED); if (ret != 0) { @@ -277,7 +279,7 @@ hv_nv_init_send_buffer_with_net_vsp(struct hv_device *device) /* Send the gpadl notification request */ ret = hv_vmbus_channel_send_packet(device->channel, init_pkt, - sizeof(nvsp_msg), (uint64_t)init_pkt, + sizeof(nvsp_msg), (uint64_t)(uintptr_t)init_pkt, HV_VMBUS_PACKET_TYPE_DATA_IN_BAND, HV_VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED); if (ret != 0) { @@ -331,7 +333,7 @@ hv_nv_destroy_rx_buffer(netvsc_dev *net_dev) ret = hv_vmbus_channel_send_packet(net_dev->dev->channel, revoke_pkt, sizeof(nvsp_msg), - (uint64_t)revoke_pkt, + (uint64_t)(uintptr_t)revoke_pkt, HV_VMBUS_PACKET_TYPE_DATA_IN_BAND, 0); /* @@ -399,7 +401,7 @@ hv_nv_destroy_send_buffer(netvsc_dev *net_dev) ret = hv_vmbus_channel_send_packet(net_dev->dev->channel, revoke_pkt, sizeof(nvsp_msg), - (uint64_t)revoke_pkt, + (uint64_t)(uintptr_t)revoke_pkt, HV_VMBUS_PACKET_TYPE_DATA_IN_BAND, 0); /* * If we failed here, we might as well return and have a leak @@ -461,7 +463,7 @@ hv_nv_negotiate_nvsp_protocol(struct hv_device *device, netvsc_dev *net_dev, /* Send the init request */ ret = hv_vmbus_channel_send_packet(device->channel, init_pkt, - sizeof(nvsp_msg), (uint64_t)init_pkt, + sizeof(nvsp_msg), (uint64_t)(uintptr_t)init_pkt, HV_VMBUS_PACKET_TYPE_DATA_IN_BAND, HV_VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED); if (ret != 0) @@ -505,7 +507,7 @@ hv_nv_send_ndis_config(struct hv_device *device, uint32_t mtu) /* Send the configuration packet */ ret = hv_vmbus_channel_send_packet(device->channel, init_pkt, - sizeof(nvsp_msg), (uint64_t)init_pkt, + sizeof(nvsp_msg), (uint64_t)(uintptr_t)init_pkt, HV_VMBUS_PACKET_TYPE_DATA_IN_BAND, 0); if (ret != 0) return (-EINVAL); @@ -577,7 +579,7 @@ hv_nv_connect_to_vsp(struct hv_device *device) /* Send the init request */ ret = hv_vmbus_channel_send_packet(device->channel, init_pkt, - sizeof(nvsp_msg), (uint64_t)init_pkt, + sizeof(nvsp_msg), (uint64_t)(uintptr_t)init_pkt, HV_VMBUS_PACKET_TYPE_DATA_IN_BAND, 0); if (ret != 0) { goto cleanup; @@ -827,10 +829,10 @@ hv_nv_on_send(struct hv_device *device, netvsc_packet *pkt) if (pkt->page_buf_count) { ret = hv_vmbus_channel_send_packet_pagebuffer(device->channel, pkt->page_buffers, pkt->page_buf_count, - &send_msg, sizeof(nvsp_msg), (uint64_t)pkt); + &send_msg, sizeof(nvsp_msg), (uint64_t)(uintptr_t)pkt); } else { ret = hv_vmbus_channel_send_packet(device->channel, - &send_msg, sizeof(nvsp_msg), (uint64_t)pkt, + &send_msg, sizeof(nvsp_msg), (uint64_t)(uintptr_t)pkt, HV_VMBUS_PACKET_TYPE_DATA_IN_BAND, HV_VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED); } diff --git a/sys/dev/hyperv/netvsc/hv_netvsc_drv_freebsd.c b/sys/dev/hyperv/netvsc/hv_netvsc_drv_freebsd.c index 1542660..ba3eac4 100644 --- a/sys/dev/hyperv/netvsc/hv_netvsc_drv_freebsd.c +++ b/sys/dev/hyperv/netvsc/hv_netvsc_drv_freebsd.c @@ -344,7 +344,7 @@ netvsc_xmit_completion(void *context) struct mbuf *mb; uint8_t *buf; - mb = (struct mbuf *)packet->compl.send.send_completion_tid; + mb = (struct mbuf *)(uintptr_t)packet->compl.send.send_completion_tid; buf = ((uint8_t *)packet) - HV_NV_PACKET_OFFSET_IN_BUF; free(buf, M_DEVBUF); @@ -494,7 +494,7 @@ retry_send: /* Set the completion routine */ packet->compl.send.on_send_completion = netvsc_xmit_completion; packet->compl.send.send_completion_context = packet; - packet->compl.send.send_completion_tid = (uint64_t)m_head; + packet->compl.send.send_completion_tid = (uint64_t)(uintptr_t)m_head; /* Removed critical_enter(), does not appear necessary */ ret = hv_rf_on_send(device_ctx, packet); @@ -682,7 +682,7 @@ netvsc_recv(struct hv_device *device_ctx, netvsc_packet *packet) */ for (i=0; i < packet->page_buf_count; i++) { /* Shift virtual page number to form virtual page address */ - uint8_t *vaddr = (uint8_t *) + uint8_t *vaddr = (uint8_t *)(uintptr_t) (packet->page_buffers[i].pfn << PAGE_SHIFT); hv_m_append(m_new, packet->page_buffers[i].length, diff --git a/sys/dev/hyperv/netvsc/hv_rndis_filter.c b/sys/dev/hyperv/netvsc/hv_rndis_filter.c index 691cf7e..4197c16 100644 --- a/sys/dev/hyperv/netvsc/hv_rndis_filter.c +++ b/sys/dev/hyperv/netvsc/hv_rndis_filter.c @@ -26,6 +26,9 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + #include <sys/param.h> #include <sys/mbuf.h> #include <sys/socket.h> @@ -334,7 +337,7 @@ hv_rf_on_receive(struct hv_device *device, netvsc_packet *pkt) return (EINVAL); /* Shift virtual page number to form virtual page address */ - rndis_hdr = (rndis_msg *)(pkt->page_buffers[0].pfn << PAGE_SHIFT); + rndis_hdr = (rndis_msg *)(uintptr_t)(pkt->page_buffers[0].pfn << PAGE_SHIFT); rndis_hdr = (void *)((unsigned long)rndis_hdr + pkt->page_buffers[0].offset); diff --git a/sys/dev/hyperv/storvsc/hv_storvsc_drv_freebsd.c b/sys/dev/hyperv/storvsc/hv_storvsc_drv_freebsd.c index 7021f66..e847678 100644 --- a/sys/dev/hyperv/storvsc/hv_storvsc_drv_freebsd.c +++ b/sys/dev/hyperv/storvsc/hv_storvsc_drv_freebsd.c @@ -296,7 +296,7 @@ hv_storvsc_channel_init(struct hv_device *dev) dev->channel, vstor_packet, sizeof(struct vstor_packet), - (uint64_t)request, + (uint64_t)(uintptr_t)request, HV_VMBUS_PACKET_TYPE_DATA_IN_BAND, HV_VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED); @@ -330,7 +330,7 @@ hv_storvsc_channel_init(struct hv_device *dev) dev->channel, vstor_packet, sizeof(struct vstor_packet), - (uint64_t)request, + (uint64_t)(uintptr_t)request, HV_VMBUS_PACKET_TYPE_DATA_IN_BAND, HV_VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED); @@ -361,7 +361,7 @@ hv_storvsc_channel_init(struct hv_device *dev) dev->channel, vstor_packet, sizeof(struct vstor_packet), - (uint64_t)request, + (uint64_t)(uintptr_t)request, HV_VMBUS_PACKET_TYPE_DATA_IN_BAND, HV_VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED); @@ -389,7 +389,7 @@ hv_storvsc_channel_init(struct hv_device *dev) dev->channel, vstor_packet, sizeof(struct vstor_packet), - (uint64_t)request, + (uint64_t)(uintptr_t)request, HV_VMBUS_PACKET_TYPE_DATA_IN_BAND, HV_VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED); @@ -482,7 +482,7 @@ hv_storvsc_host_reset(struct hv_device *dev) ret = hv_vmbus_channel_send_packet(dev->channel, vstor_packet, sizeof(struct vstor_packet), - (uint64_t)&sc->hs_reset_req, + (uint64_t)(uintptr_t)&sc->hs_reset_req, HV_VMBUS_PACKET_TYPE_DATA_IN_BAND, HV_VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED); @@ -547,14 +547,14 @@ hv_storvsc_io_request(struct hv_device *device, &request->data_buf, vstor_packet, sizeof(struct vstor_packet), - (uint64_t)request); + (uint64_t)(uintptr_t)request); } else { ret = hv_vmbus_channel_send_packet( device->channel, vstor_packet, sizeof(struct vstor_packet), - (uint64_t)request, + (uint64_t)(uintptr_t)request, HV_VMBUS_PACKET_TYPE_DATA_IN_BAND, HV_VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED); } @@ -634,7 +634,7 @@ hv_storvsc_on_channel_callback(void *context) &request_id); while ((ret == 0) && (bytes_recvd > 0)) { - request = (struct hv_storvsc_request *)request_id; + request = (struct hv_storvsc_request *)(uintptr_t)request_id; KASSERT(request, ("request")); if ((request == &sc->hs_init_req) || |