From patchwork Wed Jan 25 21:56:36 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurent Vivier X-Patchwork-Id: 719900 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org 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 3v7zWM21yFz9rxl for ; Thu, 26 Jan 2017 09:00:31 +1100 (AEDT) Received: from localhost ([::1]:34730 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cWVcC-0001sO-Qs for incoming@patchwork.ozlabs.org; Wed, 25 Jan 2017 17:00:28 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33191) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cWVYl-0006nR-0A for qemu-devel@nongnu.org; Wed, 25 Jan 2017 16:56:55 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cWVYh-0003ZM-PX for qemu-devel@nongnu.org; Wed, 25 Jan 2017 16:56:55 -0500 Received: from mout.kundenserver.de ([217.72.192.73]:54799) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cWVYh-0003Yf-Ej for qemu-devel@nongnu.org; Wed, 25 Jan 2017 16:56:51 -0500 Received: from localhost.localdomain ([78.238.229.36]) by mrelayeu.kundenserver.de (mreue103 [212.227.15.183]) with ESMTPSA (Nemesis) id 0M95x7-1cdx9J3fuH-00CUk0; Wed, 25 Jan 2017 22:56:41 +0100 From: Laurent Vivier To: qemu-devel@nongnu.org Date: Wed, 25 Jan 2017 22:56:36 +0100 Message-Id: <20170125215637.2992-3-laurent@vivier.eu> X-Mailer: git-send-email 2.9.3 In-Reply-To: <20170125215637.2992-1-laurent@vivier.eu> References: <20170125215637.2992-1-laurent@vivier.eu> X-Provags-ID: V03:K0:/kTD1f0/kZoX0ma3vgjJKB8z00tOOSFOOvwK6RBpB7NcUtedTIt JVXm8cMpkiIb8R1Uc4qWc41KUgq0YaFj/Rzgrj7+xfrsK7xmWzvtqQUxSfL60PjwuevoCNF pYIV08lNPMqlAT28wPvjUGy8nxm1g/if4FD0bi06aevCMCzsSEkM3DnPT+EYTWDU5M07xdW as+D1C5dZrlzJbpg/wWqg== X-UI-Out-Filterresults: notjunk:1; V01:K0:TmArFH/8X50=:ZrleASkwWixdXtiqKK0eBj WtppLtZTTj4/TD99k7hLXqX+rdd+0Ggern+LUPmU5irn/qnZJPZrWTJN5VucNL+nVQ2x7HuBD qsgooNQdcgT0cWSr8WvQyQMrpVeb1FiJ3LYKr+U5UavL/MSF61SRejza8S1rVhc5UhYTGobFM VAS5brlae7zbX2IsHVwlns8JHQ8D1fjgLeUCGqbxfz/X/c90EEmKliz+0Sco/KPKxzqAb8HMj bchbPHH8STnrj3Z5haVWHmWK2yvkJLHwrJOKAUO9AU91gw6KSY9t/xS9+zVH0haGhzU9FUfPk C5aRBDlvTUGCLfHFxfJ6yu4+yDOqyTk18yU80F4QhQuInVilOHLWc6qtMy1vKiLheML70uNG0 7bLAX7cBKHfovWCVbDc6luHKLGY+DsXbtgLBrGmgXyVaSvT0LwJUzMniUdkYJ4zLlyIzeT/id wfilyUk4H+uGZ7P1hsTlODjSU9BspvZIOqtTPAi8+kNIqnwq9QbTwZxNTLT0+cmDFtwZvcHwj 1uijmDDYXCfdNjDr33UzsNRiKXci+wqHm+uNk7sVaqQBLv+cV5z1gXemmQbgyBb5F7n75tzVR kO8+ln28rfMHNYOd8lOFJvlhokkEmtz1ezc57dsiHvsdX4Do/80hICXtysyNdp97zexp20hLq fEc4yjSBCev/AR+8RCkTsAKj28IEvUD3DPlbjjZrTBHsaP2D90k2eS30+MlRFA95pYmU= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 217.72.192.73 Subject: [Qemu-devel] [PATCH v2 2/3] linux-user: fix "apt-get update" on linux-user hppa 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: Riku Voipio , Laurent Vivier , John Paul Adrian Glaubitz Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" apt-get was hanging on linux-user hppa. strace has shown the netlink data stream was not correctly byte swapped. It appears the fd translator function is unregistered just after it has been registered, so the translator function is not called. This patch removes the fd_trans_unregister() after the do_socket() in the TARGET_NR_socket case. This fd_trans_unregister() was added by commit e36800c linux-user: add signalfd/signalfd4 syscalls when do_socket() was not registering any fd translator. And as now it is, we must remove this fd_trans_unregister() to keep them. Reported-by: John Paul Adrian Glaubitz Signed-off-by: Laurent Vivier Tested-by: John Paul Adrian Glaubitz --- linux-user/syscall.c | 1 - 1 file changed, 1 deletion(-) diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 11a311f..9be8e95 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -9343,7 +9343,6 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1, #ifdef TARGET_NR_socket case TARGET_NR_socket: ret = do_socket(arg1, arg2, arg3); - fd_trans_unregister(ret); break; #endif #ifdef TARGET_NR_socketpair