Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Step:FrontRunner
irqbalance.13274
aarch64-compile-fixes.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File aarch64-compile-fixes.patch of Package irqbalance.13274
From af7523e4891d13c3c06fef056b243faa0547e406 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi> Date: Tue, 10 Jan 2017 09:44:04 +0200 Subject: [PATCH 1/3] Add missing #include <string.h> in user interface files Fixes several warnings when compiling under musl, e.g. ui/irqbalance-ui.c: In function 'create_credentials_msg': ui/irqbalance-ui.c:32:2: warning: implicit declaration of function 'memset' [-Wimplicit-function-declaration] memset(msg, 0, sizeof(struct msghdr)); ^~~~~~ ui/irqbalance-ui.c:32:2: warning: incompatible implicit declaration of built-in function 'memset' ui/irqbalance-ui.c:32:2: note: include '<string.h>' or provide a declaration of 'memset' ui/irqbalance-ui.c: In function 'init_connection': ui/irqbalance-ui.c:49:2: warning: incompatible implicit declaration of built-in function 'memset' memset(&addr, 0, sizeof(struct sockaddr_un)); ^~~~~~ --- ui/irqbalance-ui.c | 1 + 1 file changed, 1 insertion(+) diff --git a/ui/irqbalance-ui.c b/ui/irqbalance-ui.c index 74ba93c..75fc60f 100644 --- a/ui/irqbalance-ui.c +++ b/ui/irqbalance-ui.c @@ -3,6 +3,7 @@ #include <errno.h> #include <netdb.h> #include <stdio.h> +#include <string.h> #include <stdlib.h> #include <sys/socket.h> #include <sys/types.h> From 59f2a0e9bfd5b98bd5671174eb7e32b4e0b3ba2c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi> Date: Tue, 10 Jan 2017 09:46:17 +0200 Subject: [PATCH 2/3] Fix struct msghdr initialization musl defines struct msghdr with padding fields to be strictly POSIX compliant. The current code gives following warnings: irqbalance.c: In function 'sock_handle': irqbalance.c:333:42: warning: initialization makes integer from pointer without a cast [-Wint-conversion] struct msghdr msg = { NULL, 0, &iov, 1, NULL, 0, 0 }; ^~~~ irqbalance.c:333:42: note: (near initialization for 'msg.__pad1') irqbalance.c:333:9: warning: missing initializer for field '__pad2' of 'struct msghdr' [-Wmissing-field-initializers] struct msghdr msg = { NULL, 0, &iov, 1, NULL, 0, 0 }; ^~~~~~ In file included from /usr/include/sys/socket.h:20:0, from /usr/include/fortify/sys/socket.h:20, from irqbalance.c:34: /usr/include/bits/socket.h:7:28: note: '__pad2' declared here socklen_t msg_controllen, __pad2; ^~~~~~ Fix this by not relying on field ordering. Alternatively designated initializers could be used, but as they are not used elsewhere in the code, I used explicit assignments. --- irqbalance.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/irqbalance.c b/irqbalance.c index 35ad4da..95bb80a 100644 --- a/irqbalance.c +++ b/irqbalance.c @@ -330,7 +330,9 @@ gboolean sock_handle(gint fd, GIOCondition condition, gpointer user_data __attri int valid_user = 0; struct iovec iov = { buff, 500 }; - struct msghdr msg = { NULL, 0, &iov, 1, NULL, 0, 0 }; + struct msghdr msg = { 0 }; + msg.msg_iov = &iov; + msg.msg_iovlen = 1; msg.msg_control = malloc(CMSG_SPACE(sizeof(struct ucred))); msg.msg_controllen = CMSG_SPACE(sizeof(struct ucred)); From 65d71ea5f80b6d56907bd67825981042eaf98d6e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi> Date: Tue, 10 Jan 2017 09:51:32 +0200 Subject: [PATCH 3/3] fix aarch64 compile error due to undefined variable fixes #36 --- procinterrupts.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/procinterrupts.c b/procinterrupts.c index 6b37a88..c5c034c 100644 --- a/procinterrupts.c +++ b/procinterrupts.c @@ -148,6 +148,9 @@ GList* collect_full_irq_list() char *line = NULL; size_t size = 0; char *irq_name, *irq_mod, *savedptr, *last_token, *p; +#ifdef AARCH64 + char *tmp; +#endif file = fopen("/proc/interrupts", "r"); if (!file)
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor