From patchwork Fri Jan 18 21:30:34 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Henderson X-Patchwork-Id: 156051 Delivered-To: patch@linaro.org Received: by 2002:a02:48:0:0:0:0:0 with SMTP id 69csp3729722jaa; Fri, 18 Jan 2019 13:35:05 -0800 (PST) X-Google-Smtp-Source: ALg8bN5qnklFpRINo+TtPTzmT6ADb9OVniLE33TolbvWgtmvOOpszvmIRH+tWrbj0M1qy/nFiBwg X-Received: by 2002:a1c:2d08:: with SMTP id t8mr15217992wmt.5.1547847305060; Fri, 18 Jan 2019 13:35:05 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1547847305; cv=none; d=google.com; s=arc-20160816; b=uhaYLERfa2AKwGpoHWSAsJ+U5ukk5UI/QD1p1QxRdUr199rD4c6ORNKlv1d5RYYnCy xkp6zqb/0xXq5F+i3hHPzd48Ss0DXthOQpQfjy0QSG2dQjZfTMGZcReuV8Xj+qGEDVHc ZBFJQlvaItC5p8BZ38f0Ky0L20+TN0Np+7jPVZrWzOgGu7NED8ONTjM8ESdPLUgYK7fa yKUZdo6thUQF7Nf7FhVK3rffa6JuhqKsZqDlsGvZ0TZrKK25xVd/pcnCo5aQVzZFCmPe WC9+RnuPRv1/dcKvy89wE/mLekRd8Atovq0BJ5ipDB5XlerVYkixv4Pi4yP6u0v+r+QS Vwxw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject:message-id:date:to:from :dkim-signature; bh=7XdBdCjS1XtmvL5CDB9o6zhyVavhgJBjr1QZn0vK7sI=; b=bW9Be4yWrIGJbt+yxAUtuSf1H/2g1jwePZoYwdk9Vgnwi4585mx4XOWDHphNCLfoKN /xZgdmy/woe/BXXeoawNCxAaNa0Ywa5XUUk7720ke5YGKf8QTCyfNHlCakiixBH4llyr 5RHQv2LLus13DyBdKCl580Zz7P3IzCaGjBS8jiwvrW6WnImd7H+p/bzyaWYvPlXfecTC shwJSjd3SNWsr6cK5/88iNIC2o4qjcFQuoitXQdemRxzK7y+jMFFa3ekvQtJsiCpG7vu Ykcj4BBI7USkN2b01U8Y11Y6oThdSlo5NmGqFFLs47ruWS6KKpKRp3zjwKuqY1ljoZ/d eqdA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=c1E048oL; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id j123si28278138wmb.138.2019.01.18.13.35.04 for (version=TLS1 cipher=AES128-SHA bits=128/128); Fri, 18 Jan 2019 13:35:05 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=c1E048oL; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([127.0.0.1]:47399 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gkbn3-000645-G4 for patch@linaro.org; Fri, 18 Jan 2019 16:35:01 -0500 Received: from eggs.gnu.org ([209.51.188.92]:55736) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gkbjv-0004i1-7H for qemu-devel@nongnu.org; Fri, 18 Jan 2019 16:31:48 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gkbjt-0003xl-Jc for qemu-devel@nongnu.org; Fri, 18 Jan 2019 16:31:47 -0500 Received: from mail-pf1-x430.google.com ([2607:f8b0:4864:20::430]:46312) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gkbjs-0003iT-Ik for qemu-devel@nongnu.org; Fri, 18 Jan 2019 16:31:45 -0500 Received: by mail-pf1-x430.google.com with SMTP id c73so7181730pfe.13 for ; Fri, 18 Jan 2019 13:31:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id; bh=7XdBdCjS1XtmvL5CDB9o6zhyVavhgJBjr1QZn0vK7sI=; b=c1E048oLiEP89AkZPqxBaJN6Amu69i1SAnD+mHUlP8mU75FXNaBU3l53tCHVuqPOxT Z/lLzw26TK+4yPBRkS7iPxy/gC+6OUlwS1966Sgm63WB2UsvGnP6MOPj9zjeljljVioA baTY/droO2CUpnZgaV8H+V2rSvL3IFy4aTwYI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=7XdBdCjS1XtmvL5CDB9o6zhyVavhgJBjr1QZn0vK7sI=; b=AyzNe4RJvuWlZU6qCtmsWzHpIhz8AYot6ftUgzg7IPEEbvTL/RLSW+KRTF70bj9cRl r+TXd9H83yr05WxjAiaHrKA6UFOHWT3iNT6rGTUYcPouqYcwiKlfeCr8+8daoZz+JEQr fUBTVSz4bumWFrv0Od76rU1iUxWCMmz+ll/+CWX3Li3gi4stjL1wzk8r2MCawJ/rBXUC YGU9JY3PZHZYJTfo8BVpDfQyrxdHWtSVQ3GJDasS3sJ7jMaJlAYoFxKY8djYbuBOD6Fz 5ToLTgUpBX1soiCYiZxfPQ/WGRsCbK1WlNkRfpNmd2jHXSSrv38SKRfWfbMae3sh4fBx xyEQ== X-Gm-Message-State: AJcUukc4bHkogbkaNKoBZEJHPZP6VrxFufaueQm1ctCmZu7/2Ywmxm9G +q2GoYUsdKSuxpOfYXApQ9Ui7Bm45LM= X-Received: by 2002:a63:2586:: with SMTP id l128mr3501125pgl.104.1547847089618; Fri, 18 Jan 2019 13:31:29 -0800 (PST) Received: from cloudburst.twiddle.net ([2001:8000:10e0:a000:c673:a6b6:fdef:1933]) by smtp.gmail.com with ESMTPSA id v12sm5833667pgg.41.2019.01.18.13.31.26 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 18 Jan 2019 13:31:28 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Date: Sat, 19 Jan 2019 08:30:34 +1100 Message-Id: <20190118213122.22865-1-richard.henderson@linaro.org> X-Mailer: git-send-email 2.17.2 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::430 Subject: [Qemu-devel] [PATCH v6 00/49] linux-user: Split do_syscall 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: laurent@vivier.eu Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Since v5, I've split the patches into smaller pieces, and done a few more syscalls. But I've also been approaching them in a more "systematic" way -- taking from the top of the switch. I've been trying to fix up checkpatch failures as I've moved code, but I've surely missed some. I've also been trying to share code between the "*at" syscalls and their original. I've tested x86_64->armhf and aarch64->i386 vs LTP. FYI, as measured by the line count of do_syscall1, this is about 25% of the total job to be done. r~ PS: Patch 2/49 is a debugging patch I forgot to remove. Rather than regenerate the series, I just omitted it here. Richard Henderson (49): linux-user: Setup split syscall infrastructure linux-user: Split out open, open_at linux-user: Share more code for open and openat linux-user: Tidy do_openat loop over fakes linux-user: Split out readlink, readlinkat linux-user: Split out close linux-user: Split out read, write linux-user: Reduce regpairs_aligned & target_offset64 ifdefs linux-user: Split out readv, writev linux-user: Split out pread64, pwrite64 linux-user: Split out preadv, pwritev linux-user: Split out name_to_handle_at, open_by_handle_at linux-user: Split out ipc syscalls linux-user: Split out memory syscalls linux-user: Split out exit linux-user: Split out brk linux-user: Split out clone, fork, vfork linux-user: Split out wait4, waitid, waitpid linux-user: Implement rusage argument to waitid linux-user: Split out creat linux-user: Split out link, linkat linux-user: Split out unlink, unlinkat, rmdir linux-user: Split out execve linux-user: Implement execveat linux-user: Split out chdir linux-user: Split out time linux-user: Split out mknod, mknodat linux-user: Split out chmod, fchmod, fchmodat linux-user: Split out lseek, llseek linux-user: Split out getpid, getppid, getxpid linux-user: Split out mount linux-user: Split out umount, umount2 linux-user: Split out stime linux-user: Split out alarm, pause linux-user: Split out utime, utimes, futimesat linux-user: Split out access, faccessat linux-user: Split out nice linux-user: Split out sync, syncfs linux-user: Split out kill linux-user: Split out rename, renameat, renameat2 linux-user: Split out mkdir, mkdirat linux-user: Split out dup, dup2, dup3 linux-user: Split out pipe, pipe2 linux-user: Split out times linux-user: Split out acct linux-user: Move syscall_init to the end linux-user: Split out ioctl linux-user: Split out fcntl, fcntl64 linux-user/syscall-defs.h | 240 ++ linux-user/syscall.h | 102 + linux-user/strace.c | 1258 +++------- linux-user/syscall-fcntl.inc.c | 322 +++ linux-user/syscall-file.inc.c | 1229 ++++++++++ linux-user/syscall-ioctl.inc.c | 873 +++++++ linux-user/syscall-ipc.inc.c | 1086 +++++++++ linux-user/syscall-mem.inc.c | 244 ++ linux-user/syscall-proc.inc.c | 593 +++++ linux-user/syscall-sig.inc.c | 41 + linux-user/syscall-time.inc.c | 44 + linux-user/syscall.c | 4128 ++------------------------------ configure | 20 - linux-user/strace.list | 285 --- 14 files changed, 5376 insertions(+), 5089 deletions(-) create mode 100644 linux-user/syscall-defs.h create mode 100644 linux-user/syscall.h create mode 100644 linux-user/syscall-fcntl.inc.c create mode 100644 linux-user/syscall-file.inc.c create mode 100644 linux-user/syscall-ioctl.inc.c create mode 100644 linux-user/syscall-ipc.inc.c create mode 100644 linux-user/syscall-mem.inc.c create mode 100644 linux-user/syscall-proc.inc.c create mode 100644 linux-user/syscall-sig.inc.c create mode 100644 linux-user/syscall-time.inc.c -- 2.17.2