Thread (4 messages) flat view 4 messages, 2 authors, 2015-03-11

Re: [PATCH 37/45] include/uapi/linux/socket.h: include sys/socket.h in userspace

From: Mikko Rapeli <hidden>
Date: 2015-03-11 00:59:39
Also in: lkml

On Wed, Mar 11, 2015 at 02:38:15AM +0200, Mikko Rapeli wrote:
On Tue, Feb 17, 2015 at 10:14:10AM +0100, Arnd Bergmann wrote:
quoted
On Tuesday 17 February 2015 00:05:40 Mikko Rapeli wrote:
quoted
This libc header has sockaddr definition for userspace.
Fixes compilation errors like:
error: field ‘ifru_addr’ has incomplete type
struct sockaddr ifru_addr;

Signed-off-by: Mikko Rapeli <redacted>
---
 include/uapi/linux/socket.h | 4 ++++
 1 file changed, 4 insertions(+)
This looks wrong: where do you see a use of ifru_addr
in uapi/linux/socket.h?
Indeed, this one seems completely wrong. Based on the test logs the
change should have gone to linux/if.h.
Hmm, turns out this was not so straight forward. If I drop this I get 20
more errors from headers which include linux/socket.h and expect sockaddr
to be defined which is not true since it comes from sys/socket.h.

One way to fix this for all linux/socket.h users is to include sys/socket.h
already in linux/socket.h. After this I get rid of all compile test errors from
missing sockaddr definitions except cases where headers fail to include even
linux/socket.h.

Other option would be to include sys/socket.h in all headers using sockaddr.

I would prefer to include sys/socket.h already in linux/socket.h but I will
improve the commit message with this detail.

-Mikko
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help