From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/9817 Path: news.gmane.org!not-for-mail From: Szabolcs Nagy Newsgroups: gmane.linux.lib.musl.general Subject: Re: recvmsg/sendmsg broken on mips64 Date: Fri, 1 Apr 2016 15:17:12 +0200 Message-ID: <20160401131712.GV9862@port70.net> References: <20160331201012.GR9862@port70.net> <20160331203004.GX21636@brightrain.aerifal.cx> <76c20e67-4d62-a929-9f1d-a3fc63758426@dd-wrt.com> <20160401094919.GT9862@port70.net> <02844173-9671-d0e9-a291-764b27899f44@dd-wrt.com> <20160401113146.GU9862@port70.net> <91bfe81c-73c4-9b25-6d9b-a97d4ee54e89@dd-wrt.com> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1459516652 13082 80.91.229.3 (1 Apr 2016 13:17:32 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 1 Apr 2016 13:17:32 +0000 (UTC) To: musl@lists.openwall.com Original-X-From: musl-return-9830-gllmg-musl=m.gmane.org@lists.openwall.com Fri Apr 01 15:17:30 2016 Return-path: Envelope-to: gllmg-musl@m.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by plane.gmane.org with smtp (Exim 4.69) (envelope-from ) id 1alyx5-0005HO-I9 for gllmg-musl@m.gmane.org; Fri, 01 Apr 2016 15:17:27 +0200 Original-Received: (qmail 10044 invoked by uid 550); 1 Apr 2016 13:17:25 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Original-Received: (qmail 10005 invoked from network); 1 Apr 2016 13:17:24 -0000 Mail-Followup-To: musl@lists.openwall.com Content-Disposition: inline In-Reply-To: <91bfe81c-73c4-9b25-6d9b-a97d4ee54e89@dd-wrt.com> User-Agent: Mutt/1.5.24 (2015-08-30) Xref: news.gmane.org gmane.linux.lib.musl.general:9817 Archived-At: * Sebastian Gottschall [2016-04-01 14:42:36 +0200]: > it only affects mips64 so far. not x64. i checked both using dd-wrt the types *must* be the same on the source level on *all* targets as specified by posix, the linux syscall abi is irrelevant, that is not visible to userspace code which is written for the c language level api, if you change the types it is not possible to write portable c code. > >(well, of course it may fail if the test code declares the structs > >independently, but then the test *is* broken whether the definition is > >standard-conformant or not.) > with mips64 (octeon) the whole netlink code in iproute2 doesnt work. it > simly fails since recvmsg returns no data. sendmsg is likelly broken in the your fix does not explain that unless there is a >4G message somewhere which i think is not supported on the kernel side either. please send a proper bug report about what breaks, it sounds like the padding is at the wrong place. changing int,int to size_t should make no difference for iproute2. > same way since it uses the same struct > my dirty musl hack again fixed it by using the same datatypes used in the > kernel. so this might be mips specific. > currently musl does convert the non conform kernel structures to posix > specified structures, but this doesnt seem to work for mips64 > > we should figure out why it does not work instead of breaking portability.