From nobody Fri Jan 07 13:30:58 2022 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id C360119408AF; Fri, 7 Jan 2022 13:31:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4JVkcz12c5z4hPk; Fri, 7 Jan 2022 13:30:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 439E13C7C; Fri, 7 Jan 2022 13:30:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 207DUwh0033055; Fri, 7 Jan 2022 13:30:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 207DUwid033054; Fri, 7 Jan 2022 13:30:58 GMT (envelope-from git) Date: Fri, 7 Jan 2022 13:30:58 GMT Message-Id: <202201071330.207DUwid033054@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Hans Petter Selasky Subject: git: a2e8fccd7ae4 - stable/13 - Implement suword16() for the 32-bit ARMv6/v7 architecture. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: hselasky X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: a2e8fccd7ae4d25867ed3b12f4a91a0cc2b5c698 Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1641562259; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GBzUr45i6hDKRKUG6nC1aQXHnMmQ7NKQLiWBMcOi5C0=; b=p7uXaBWafyI2EpPyiPOlG3RWuZahAWN4LqX08NTmFV2V5K4wDg7E62xChtfiK5XTi5y0jm oKQAjzgwSNlkd/xq807f+CbgmyGZ6f42aqyytPyVC5f4LyoVd/tS3r41we7rReZgGI48Dv WmiuIyIvF2B5o7kiUdt3dkM1ldk3yACklLWoMabgprlM31evb10GMbUhkCSPj/T8F4X5dy Iud5B1040yUocNs0g1qgye1IOv5uMsErFwKSU2cn2trRHY/zsDIt2aRfzXEzbD0Yf+Ri6x HznTIkS10UclvXz3z3Fsr3O6XRz3R37kV4Ynu3cTptgzcUBIlV8/pZrHYsuh2A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1641562259; a=rsa-sha256; cv=none; b=RQkJHigI/tpcZe2Em2ktRc/7EMQZoH3TiG5x59tvJB3jk5YFh67YcKt6FBZkqRctzzgXiK v/kYL+1Q4lxCimflRmAglMOTUOuOTn+jendhkmYb4Py859wyS8CsWBqRnmFDhxzIVFzuHX vCw8rb5n09dQXJ3xq30HFycH152YkSiC8yKWwWcvWIk+UDAJJbHGjbYtx0lzZyoAV3d1hY PqiOUnt3F1rs2sOWAv6SMPqlFDl4yFhPZdJX5GcfS2ukklwO2pHQdoYjDZD2l3Q0fj278L 2bJ/vuUORF3xgGl5t22f8sfBI6DQHvps1aRFN7i+O4Y7HFSyOxraz3q+3PM3Zw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by hselasky: URL: https://cgit.FreeBSD.org/src/commit/?id=a2e8fccd7ae4d25867ed3b12f4a91a0cc2b5c698 commit a2e8fccd7ae4d25867ed3b12f4a91a0cc2b5c698 Author: Hans Petter Selasky AuthorDate: 2021-12-19 11:12:58 +0000 Commit: Hans Petter Selasky CommitDate: 2022-01-07 13:25:23 +0000 Implement suword16() for the 32-bit ARMv6/v7 architecture. Sponsored by: NVIDIA Networking (cherry picked from commit 516df155820471dd333a9cbc35bca3680d7b0051) (cherry picked from commit 48014c6679024f5f1b8217508915fbcd69c2041b) --- sys/arm/arm/fusu.S | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/sys/arm/arm/fusu.S b/sys/arm/arm/fusu.S index 1a77377cb148..fd366542b283 100644 --- a/sys/arm/arm/fusu.S +++ b/sys/arm/arm/fusu.S @@ -212,6 +212,35 @@ fusupcbfaulttext: .align 2 #endif +/* + * suword16(caddr_t uaddr, int x); + * Store an uint16_t in the user's address space. + */ + +ENTRY(suword16) + ldr r3, =(VM_MAXUSER_ADDRESS-3) + cmp r0, r3 + mvncs r0, #0 + RETc(cs) + + GET_PCB(r2) + ldr r2, [r2] + +#ifdef DIAGNOSTIC + teq r2, #0x00000000 + beq .Lfusupcbfault +#endif + + adr r3, .Lfusufault + str r3, [r2, #PCB_ONFAULT] + + strht r1, [r0], #0 + + mov r0, #0x00000000 + str r0, [r2, #PCB_ONFAULT] + RET +END(suword16) + /* * suword(caddr_t uaddr, int x); * Store an int in the user's address space.