[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH]: gdbsx: Check return of write()



On Tue, Nov 2, 2010 at 9:11 AM, Gianni Tedesco <gianni.tedesco@xxxxxxxxxx> wrote:
On Tue, 2010-11-02 at 10:34 +0000, Olaf Hering wrote:
> Hello,
>
> there is a regression between xen-unstable rev 22314 and 22344,
> gx_comm.c does not compile anymore due to -Werror, see below.
> I think a simpe 'if (write(args..)) perror("write");' will be good enough.
>
> Olaf

FYI: it doesn't look like a regression but perhaps a compiler/library
update?

---8<-------------8<--------------8<--------------------
This leads to warn_unused_result checks triggering in some libraries and
compilers. Combined with -Werror this breaks the build.

Signed-off-by: Gianni Tedesco <gianni.tedesco@xxxxxxxxxx>

diff -r ee4d52f0d16a tools/debugger/gdbsx/gx/gx_comm.c
--- a/tools/debugger/gdbsx/gx/gx_comm.c Tue Nov 02 07:35:52 2010 +0000
+++ b/tools/debugger/gdbsx/gx/gx_comm.c Tue Nov 02 16:06:43 2010 +0000
@@ -227,13 +227,15 @@ gx_getpkt (char *buf)

        gxprt("Bad checksum, sentsum=0x%x, csum=0x%x, buf=%s\n",
              (c1 << 4) + c2, csum, buf);
-        write(remote_fd, "-", 1);
+        if ( write(remote_fd, "-", 1) != 1 )
+            perror("write");
    }
    if (gx_remote_dbg) {
        gxprt("getpkt (\"%s\");  [sending ack] \n", buf);
    }

-    write(remote_fd, "+", 1);
+    if ( write(remote_fd, "+", 1) != 1 )
+        perror("write");

    if (gx_remote_dbg) {
        gxprt("[sent ack]\n");


Confirming the same problem:

o-unused-value -Wdeclaration-after-statement  -D__XEN_TOOLS__ -MMD -MF .gx_local.o.d  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -Werror -Wmissing-prototypes  -c -o gx_local.o gx_local.c
cc1: warnings being treated as errors
gx_comm.c: In function ‘gx_getpkt’:
gx_comm.c:230: error: ignoring return value of ‘write’, declared with attribute warn_unused_result
gx_comm.c:236: error: ignoring return value of ‘write’, declared with attribute warn_unused_result

%> gcc --version
gcc (Ubuntu 4.4.3-4ubuntu5) 4.4.3

-Bruce
 

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.