Author: ngie
Date: Wed Jul  6 05:17:07 2016
New Revision: 302368
URL: https://svnweb.freebsd.org/changeset/base/302368

Log:
  Fix gcc build errors with SSE 4.2 detection and gcc warnings
  
  - Remove -Wunused-but-set-variable's (`len`, etc).
  - Replace clang-specific tests in sse42_supported(..) with generic,
    FreeBSD-supported CPU feature tests, using macros and functions
    from machine/cpufunc.h and machine/specialreg.h . The previous method
    for determining SSE4.2 availability was only compatible with clang.
  - Sort #includes per style(9).
  
  Approved by: re (gjb)
  Differential Revision: https://reviews.freebsd.org/D7119
  MFC after: 1 week
  X-MFC with: r302332
  Reported by: Jenkins
  Reviewed by: grehan (maintainer)
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/usr.sbin/bhyve/rfb.c

Modified: head/usr.sbin/bhyve/rfb.c
==============================================================================
--- head/usr.sbin/bhyve/rfb.c   Wed Jul  6 05:11:39 2016        (r302367)
+++ head/usr.sbin/bhyve/rfb.c   Wed Jul  6 05:17:07 2016        (r302368)
@@ -28,12 +28,14 @@
 #include <sys/cdefs.h>
 __FBSDID("$FreeBSD$");
 
+#include <sys/param.h>
 #include <sys/socket.h>
-#include <sys/time.h>
 #include <sys/select.h>
-#include <sys/param.h>
-#include <netinet/in.h>
+#include <sys/time.h>
 #include <arpa/inet.h>
+#include <machine/cpufunc.h>
+#include <machine/specialreg.h>
+#include <netinet/in.h>
 
 #include <assert.h>
 #include <pthread.h>
@@ -46,7 +48,6 @@ __FBSDID("$FreeBSD$");
 #include <unistd.h>
 
 #include <zlib.h>
-#include <cpuid.h>
 
 #include "bhyvegc.h"
 #include "console.h"
@@ -177,7 +178,6 @@ rfb_send_server_init_msg(int cfd)
 {
        struct bhyvegc_image *gc_image;
        struct rfb_srvr_info sinfo;
-       int len;
 
        gc_image = console_get_image();
 
@@ -194,8 +194,8 @@ rfb_send_server_init_msg(int cfd)
        sinfo.pixfmt.green_shift = 8;
        sinfo.pixfmt.blue_shift = 0;
        sinfo.namelen = htonl(strlen("bhyve"));
-       len = stream_write(cfd, &sinfo, sizeof(sinfo));
-       len = stream_write(cfd, "bhyve", strlen("bhyve"));
+       (void)stream_write(cfd, &sinfo, sizeof(sinfo));
+       (void)stream_write(cfd, "bhyve", strlen("bhyve"));
 }
 
 static void
@@ -223,9 +223,8 @@ static void
 rfb_recv_set_pixfmt_msg(struct rfb_softc *rc, int cfd)
 {
        struct rfb_pixfmt_msg pixfmt_msg;
-       int len;
 
-       len = stream_read(cfd, ((void *)&pixfmt_msg)+1, sizeof(pixfmt_msg)-1);
+       (void)stream_read(cfd, ((void *)&pixfmt_msg)+1, sizeof(pixfmt_msg)-1);
 }
 
 
@@ -233,14 +232,14 @@ static void
 rfb_recv_set_encodings_msg(struct rfb_softc *rc, int cfd)
 {
        struct rfb_enc_msg enc_msg;
-       int len, i;
+       int i;
        uint32_t encoding;
 
        assert((sizeof(enc_msg) - 1) == 3);
-       len = stream_read(cfd, ((void *)&enc_msg)+1, sizeof(enc_msg)-1);
+       (void)stream_read(cfd, ((void *)&enc_msg)+1, sizeof(enc_msg)-1);
 
        for (i = 0; i < htons(enc_msg.numencs); i++) {
-               len = stream_read(cfd, &encoding, sizeof(encoding));
+               (void)stream_read(cfd, &encoding, sizeof(encoding));
                switch (htonl(encoding)) {
                case RFB_ENCODING_RAW:
                        rc->enc_raw_ok = true;
@@ -256,27 +255,6 @@ rfb_recv_set_encodings_msg(struct rfb_so
        }
 }
 
-static void
-rfb_resize_update(struct rfb_softc *rc, int fd)
-{
-       struct rfb_srvr_updt_msg supdt_msg;
-        struct rfb_srvr_rect_hdr srect_hdr;
-
-       /* Number of rectangles: 1 */
-       supdt_msg.type = 0;
-       supdt_msg.pad = 0;
-       supdt_msg.numrects = htons(1);
-       stream_write(fd, &supdt_msg, sizeof(struct rfb_srvr_updt_msg));
-
-       /* Rectangle header */
-       srect_hdr.x = htons(0);
-       srect_hdr.y = htons(0);
-       srect_hdr.width = htons(rc->width);
-       srect_hdr.height = htons(rc->height);
-       srect_hdr.encoding = htonl(RFB_ENCODING_RESIZE);
-       stream_write(fd, &srect_hdr, sizeof(struct rfb_srvr_rect_hdr));
-}
-
 /*
  * Calculate CRC32 using SSE4.2; Intel or AMD Bulldozer+ CPUs only
  */
@@ -636,9 +614,8 @@ rfb_recv_update_msg(struct rfb_softc *rc
 {
        struct rfb_updt_msg updt_msg;
        struct bhyvegc_image *gc_image;
-       int len;
 
-       len = stream_read(cfd, ((void *)&updt_msg) + 1 , sizeof(updt_msg) - 1);
+       (void)stream_read(cfd, ((void *)&updt_msg) + 1 , sizeof(updt_msg) - 1);
 
        console_refresh();
        gc_image = console_get_image();
@@ -666,9 +643,8 @@ static void
 rfb_recv_key_msg(struct rfb_softc *rc, int cfd)
 {
        struct rfb_key_msg key_msg;
-       int len;
 
-       len = stream_read(cfd, ((void *)&key_msg) + 1, sizeof(key_msg) - 1);
+       (void)stream_read(cfd, ((void *)&key_msg) + 1, sizeof(key_msg) - 1);
 
        console_key_event(key_msg.down, htonl(key_msg.code));
 }
@@ -677,9 +653,8 @@ static void
 rfb_recv_ptr_msg(struct rfb_softc *rc, int cfd)
 {
        struct rfb_ptr_msg ptr_msg;
-       int len;
 
-       len = stream_read(cfd, ((void *)&ptr_msg) + 1, sizeof(ptr_msg) - 1);
+       (void)stream_read(cfd, ((void *)&ptr_msg) + 1, sizeof(ptr_msg) - 1);
 
        console_ptr_event(ptr_msg.button, htons(ptr_msg.x), htons(ptr_msg.y));
 }
@@ -876,13 +851,15 @@ rfb_thr(void *arg)
 }
 
 static int
-sse42_supported()
+sse42_supported(void)
 {
-       unsigned int eax, ebx, ecx, edx;
- 
-       __get_cpuid(1, &eax, &ebx, &ecx, &edx);
- 
-       return ((ecx & bit_SSE42) != 0);
+       u_int cpu_registers[4], ecx;
+
+       do_cpuid(1, cpu_registers);
+
+       ecx = cpu_registers[2];
+
+       return ((ecx & CPUID2_SSE42) != 0);
 }
 
 int
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to