From patchwork Sun Aug 19 22:17:06 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurent Vivier X-Patchwork-Id: 959459 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=nongnu.org (client-ip=2001:4830:134:3::11; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=vivier.eu Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 41trv70mm6z9s4c for ; Mon, 20 Aug 2018 08:18:59 +1000 (AEST) Received: from localhost ([::1]:44268 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1frW2C-00028t-Nk for incoming@patchwork.ozlabs.org; Sun, 19 Aug 2018 18:18:56 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38893) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1frW1N-0001ql-Ho for qemu-devel@nongnu.org; Sun, 19 Aug 2018 18:18:06 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1frW1J-00037j-I5 for qemu-devel@nongnu.org; Sun, 19 Aug 2018 18:18:05 -0400 Received: from mout.kundenserver.de ([212.227.17.24]:53057) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1frW1J-00037O-9T for qemu-devel@nongnu.org; Sun, 19 Aug 2018 18:18:01 -0400 Received: from localhost.localdomain ([78.238.229.36]) by mrelayeu.kundenserver.de (mreue105 [212.227.15.183]) with ESMTPSA (Nemesis) id 0MQOHk-1fPtu63dWe-00TmML; Mon, 20 Aug 2018 00:17:27 +0200 From: Laurent Vivier To: qemu-devel@nongnu.org Date: Mon, 20 Aug 2018 00:17:06 +0200 Message-Id: <20180819221707.20693-6-laurent@vivier.eu> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180819221707.20693-1-laurent@vivier.eu> References: <20180819221707.20693-1-laurent@vivier.eu> X-Provags-ID: V03:K1:iWGP6zWkwqiEWKoqm7g0iZGytJd8aWrz4MmwhE74r7Lc9Zq3CCn PrbF3+ZtVPeti29D7PT8MZMDvFZNAPow62rns84vfdD9tplAyP5o+Wjrz7UMUbzUTx9gHN+ Mvjz4Pc27FpS+QNHT8l/r5/m1xqhNdh6owYE/BBS0TS0ts4MlYpJ654A2v3NhImeYSnX9lL oZ8rmohc0RTKWrOEfzTQA== X-UI-Out-Filterresults: notjunk:1; V01:K0:gSrcFSz6i1o=:r7J9VM2x30ubLQLJcQ3Jlp xq1IeWbkydvZ5zk7vYwcWE+Yy2FtpqMv7cPJwmsjofACXCFraEnTSACQSo1lh2t+xKh499dRC 7umeUnUgSsaGLIC5D/9703Lxp2AAxa3Pnop1QZupqXSXY9LbXSJiYrzFmBW2jjVSFpRXHlwXf EhAWqJlZz2FK0RPKi00ehnGd527r9+KQg9HPJW8KenKHvGvQJQ73jHJM/tlM2v+fTkNRUUIQ3 E9DMhJigo3dhj4pov05KAZCV7Ou8+vOaciFcvlMc/x5SXpB64TrDh/O0uNng6pdnAplbkl+9S Fj1xrour5DY46ZbjOMvOTSYHnFqW5lTRGSGMlpVOr9Nxf9HKO8WUI6jBo5vH8EgPKZQ3SFIMi S5HTSkI8n1fwrDEU7+oofVConMEjyPaVcxelWhU+Y4djC0ZOuyXs8Eq6Y4xhBOF8MBCFE+kvJ wLeYH1z/R9u/qBcWzqcNZ+NimJJFv2lL9orV0oa/2V0Z3HwqRuJXXAjr1UETRLdBsxSadjCyt VyAgQjBaf+tmKry/I8x/4zD9CV23HyKH5vat4HKFdnA8Sa8spRCe6+e05UACb48kNAgCILhkg of8Jewm70/zI+SwOeRtMsRIb0AfjphZKTQZTADB2ngnsBG/qX1nhchoDuC0M2VO64EyY7+CVm s4nW0jn69Tw9OKb5t+OvDPN/Imct8BHbi4IwHv/stIF6O+b+gBrsiSUpBsPp4rDqxyQ8= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 212.227.17.24 Subject: [Qemu-devel] [PULL 5/6] linux-user: update netlink route types X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Crosthwaite , Riku Voipio , Laurent Vivier , Paolo Bonzini , Aurelien Jarno , Richard Henderson Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" Add RTA_PREF and RTA_CACHEINFO. Fix following errors when we start gedit: Unknown host RTA type: 12 Unknown host RTA type: 20 Signed-off-by: Laurent Vivier Message-Id: <20180814161904.12216-3-laurent@vivier.eu> --- linux-user/syscall.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/linux-user/syscall.c b/linux-user/syscall.c index e66faf1c62..da1fcaf4ca 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -2659,12 +2659,17 @@ static abi_long host_to_target_data_addr_rtattr(struct rtattr *rtattr) static abi_long host_to_target_data_route_rtattr(struct rtattr *rtattr) { uint32_t *u32; + struct rta_cacheinfo *ci; + switch (rtattr->rta_type) { /* binary: depends on family type */ case RTA_GATEWAY: case RTA_DST: case RTA_PREFSRC: break; + /* u8 */ + case RTA_PREF: + break; /* u32 */ case RTA_PRIORITY: case RTA_TABLE: @@ -2672,6 +2677,20 @@ static abi_long host_to_target_data_route_rtattr(struct rtattr *rtattr) u32 = RTA_DATA(rtattr); *u32 = tswap32(*u32); break; + /* struct rta_cacheinfo */ + case RTA_CACHEINFO: + ci = RTA_DATA(rtattr); + ci->rta_clntref = tswap32(ci->rta_clntref); + ci->rta_lastuse = tswap32(ci->rta_lastuse); + ci->rta_expires = tswap32(ci->rta_expires); + ci->rta_error = tswap32(ci->rta_error); + ci->rta_used = tswap32(ci->rta_used); +#if defined(RTNETLINK_HAVE_PEERINFO) + ci->rta_id = tswap32(ci->rta_id); + ci->rta_ts = tswap32(ci->rta_ts); + ci->rta_tsage = tswap32(ci->rta_tsage); +#endif + break; default: gemu_log("Unknown host RTA type: %d\n", rtattr->rta_type); break;