hc
2023-11-06 15ade055295d13f95d49e3d99b09f3bbfb4a43e7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
From 2b9e01ee31c1b7596b19f0c89954e93e217b0479 Mon Sep 17 00:00:00 2001
From: Marcin Nowakowski <marcin.nowakowski@imgtec.com>
Date: Thu, 21 Sep 2017 10:16:33 +0200
Subject: [PATCH] internal.h: make inline functions static
 
With some GCC configurations/build options it is possible for gcc to
ignore the inline hint. As the methods are not declared static, gcc
expects a definition to be provided elsewhere, which is not the case
here resulting in the following linker error:
 
libtool: link: /home/marcin/br-test-pkg/br-arm-cortex-a9-glibc/host/bin/arm-linux-gcc
-fstack-protector-strong -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
-D_FILE_OFFSET_BITS=64 -Os -Wl,-z -Wl,relro -Wl,-z -Wl,now -o bin/kcapi
test/bin_kcapi-kcapi-main.o  ./.libs/libkcapi.so -Wl,-rpath
-Wl,/home/marcin/br-test-pkg/br-arm-cortex-a9-glibc/build/libkcapi-0.14.0/.libs
./.libs/libkcapi.so: undefined reference to `_kcapi_common_vmsplice_iov'
./.libs/libkcapi.so: undefined reference to `_kcapi_common_read_data'
./.libs/libkcapi.so: undefined reference to `_kcapi_aio_read_iov'
./.libs/libkcapi.so: undefined reference to `_kcapi_common_recv_data'
./.libs/libkcapi.so: undefined reference to `_kcapi_common_send_data'
./.libs/libkcapi.so: undefined reference to `_kcapi_common_vmsplice_chunk'
./.libs/libkcapi.so: undefined reference to `_kcapi_common_send_meta'
collect2: error: ld returned 1 exit status
 
$ arm-linux-gcc --version
arm-linux-gcc.br_real (Buildroot 2017.08-git-01078-g95b1dae) 7.1.0
 
Signed-off-by: Marcin Nowakowski <marcin.nowakowski@imgtec.com>
Signed-off-by: Stephan Mueller <smueller@chronox.de>
 
[Upstream commit: https://github.com/smuellerDD/libkcapi/commit/2b9e01ee31c1b7596b19f0c89954e93e217b0479]
Signed-off-by: Marcin Nowakowski <marcin.nowakowski@imgtec.com>
---
 lib/internal.h | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)
 
diff --git a/lib/internal.h b/lib/internal.h
index 0d98f24..addf450 100644
--- a/lib/internal.h
+++ b/lib/internal.h
@@ -233,7 +233,7 @@ void kcapi_dolog(int severity, const char *fmt, ...);
 int32_t _kcapi_common_send_meta_fd(struct kcapi_handle *handle, int *fdptr,
                    struct iovec *iov, uint32_t iovlen,
                    uint32_t enc, uint32_t flags);
-inline int32_t _kcapi_common_send_meta(struct kcapi_handle *handle,
+static inline int32_t _kcapi_common_send_meta(struct kcapi_handle *handle,
                        struct iovec *iov, uint32_t iovlen,
                        uint32_t enc, uint32_t flags)
 {
@@ -244,7 +244,7 @@ inline int32_t _kcapi_common_send_meta(struct kcapi_handle *handle,
 int32_t _kcapi_common_vmsplice_iov_fd(struct kcapi_handle *handle, int *fdptr,
                       struct iovec *iov, unsigned long iovlen,
                       uint32_t flags);
-inline int32_t _kcapi_common_vmsplice_iov(struct kcapi_handle *handle,
+static inline int32_t _kcapi_common_vmsplice_iov(struct kcapi_handle *handle,
                    struct iovec *iov, unsigned long iovlen,
                    uint32_t flags)
 {
@@ -255,7 +255,7 @@ inline int32_t _kcapi_common_vmsplice_iov(struct kcapi_handle *handle,
 int32_t _kcapi_common_send_data_fd(struct kcapi_handle *handle, int *fdprt,
                    struct iovec *iov, uint32_t iovlen,
                    uint32_t flags);
-inline int32_t _kcapi_common_send_data(struct kcapi_handle *handle,
+static inline int32_t _kcapi_common_send_data(struct kcapi_handle *handle,
                        struct iovec *iov, uint32_t iovlen,
                        uint32_t flags)
 {
@@ -265,7 +265,7 @@ inline int32_t _kcapi_common_send_data(struct kcapi_handle *handle,
 
 int32_t _kcapi_common_recv_data_fd(struct kcapi_handle *handle, int *fdptr,
                    struct iovec *iov, uint32_t iovlen);
-inline int32_t _kcapi_common_recv_data(struct kcapi_handle *handle,
+static inline int32_t _kcapi_common_recv_data(struct kcapi_handle *handle,
                        struct iovec *iov, uint32_t iovlen)
 {
     return _kcapi_common_recv_data_fd(handle, &handle->opfd, iov, iovlen);
@@ -273,7 +273,7 @@ inline int32_t _kcapi_common_recv_data(struct kcapi_handle *handle,
 
 int32_t _kcapi_common_read_data_fd(struct kcapi_handle *handle, int *fdptr,
                    uint8_t *out, uint32_t outlen);
-inline int32_t _kcapi_common_read_data(struct kcapi_handle *handle,
+static inline int32_t _kcapi_common_read_data(struct kcapi_handle *handle,
                        uint8_t *out, uint32_t outlen)
 {
     return _kcapi_common_read_data_fd(handle, &handle->opfd, out, outlen);
@@ -285,7 +285,7 @@ int _kcapi_common_close(struct kcapi_handle *handle, int fdptr);
 int32_t _kcapi_common_vmsplice_chunk_fd(struct kcapi_handle *handle, int *fdptr,
                         const uint8_t *in, uint32_t inlen,
                         uint32_t flags);
-inline int32_t _kcapi_common_vmsplice_chunk(struct kcapi_handle *handle,
+static inline int32_t _kcapi_common_vmsplice_chunk(struct kcapi_handle *handle,
                         const uint8_t *in, uint32_t inlen,
                         uint32_t flags)
 {
@@ -315,7 +315,7 @@ int _kcapi_aio_send_iov(struct kcapi_handle *handle, struct iovec *iov,
 
 int32_t _kcapi_aio_read_iov_fd(struct kcapi_handle *handle, int *fdptr,
                    struct iovec *iov, uint32_t iovlen);
-inline int32_t _kcapi_aio_read_iov(struct kcapi_handle *handle,
+static inline int32_t _kcapi_aio_read_iov(struct kcapi_handle *handle,
                    struct iovec *iov, uint32_t iovlen)
 {
     return _kcapi_aio_read_iov_fd(handle, &handle->opfd, iov, iovlen);