From nobody Thu Feb 17 13:46:23 2022 X-Original-To: dev-commits-src-all@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 7EFBA19D55ED; Thu, 17 Feb 2022 13:46:24 +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 4Jzx1r17Snz3Pcs; Thu, 17 Feb 2022 13:46:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1645105584; 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=4FDnAHuGBU1VvECsGSMvL2XyRlBb1eee6tDFb3NaqMI=; b=nae5jM3MC+6PjS9Zdm7m21/CxnIcahESIXe8QhDV2Ic6TxKOZSW3V4VjfsFDlfb3fTMNnQ OfKD8tOETOfpeJm8jmKonS+aBOnGxhbq60mqxgdM14sPkY0cCdCuskfdjfnbCeQa39aKTG ZfLiv0B3M8oG1TJwDeuB+sVeTo4jpb/nuGEI1vnJDdz/I+g4fplKX5BUXDZuSa3O3aMDlI 4lREVB3MZ0KJ8lh5xxt5B5L1jt4NCspDhl8fuOc6Sck8jriudgE/mmmFn4Vesj3qAjeNBL TrI8i9TddXPV378Q35vAwnM+Pw8VX0+bCC9WqBH0Nrdfyy49RJdjF4luQ/cUEQ== 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 D1F012E20; Thu, 17 Feb 2022 13:46:23 +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 21HDkNjH048275; Thu, 17 Feb 2022 13:46:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 21HDkNk9048274; Thu, 17 Feb 2022 13:46:23 GMT (envelope-from git) Date: Thu, 17 Feb 2022 13:46:23 GMT Message-Id: <202202171346.21HDkNk9048274@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Edward Tomasz Napierala Subject: git: b36eaf0f4ce8 - stable/13 - linux: fix architecture returned for uname on aarch64 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: trasz X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: b36eaf0f4ce85b40e65a03235439fd827544dcc4 Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1645105584; 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=4FDnAHuGBU1VvECsGSMvL2XyRlBb1eee6tDFb3NaqMI=; b=GMMM8C5tRN7OK8lergRd3cUulDnISlodAMoyXi4Gkn1xrl/d7wwzMUvZJItuVmC7IS9ZFh Ll6E8hnAZWkzImOZEQohwl9cD4VKORznodgvV4zUnF8vuEPSQVSWMsTyb65/R54Y3XSpI9 xniD6muCkNEeYa8pyjrPlUmDLQJfFSNWDdLJgz7xcOEIrep9HVScj4YvmPUMud3vdvv55/ AinsC4ItrByeJPH1PqwAk63N3g6zkV4ipahdyyhARRNGy7/5OTXx1UQrF8KDjlXPK91mTn 2dkONs/91FawB76AWRov4kJeqyHSAwxsN6u7O4sRpCXgy5khvKl3pHbvafaUsw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1645105584; a=rsa-sha256; cv=none; b=JpAvBzS16pQWcUJYVxrec3gJufjr5EclzI3b9IdY2Db4cmO0FRJb523sAzwmCvSW1auzLS WbYSl0SCICk+zRcBU8tEpZ6TujjtpFDVGqkj/arn9zAg6cJmXQwWwX6DcYY3G6nLIX7Smr lTwyeGUmyUdJb2LNDFF51ZYbo4ZsLQFFFQ24wIGySa6dGebz9OXuy54q9YF8YG2rA73eAu 4bG32gPT+DnfCXg6t1WckFGttS9q6RQcZCcJ8kklJ7i3yNUYuRUSf0An+BsCFkrLU8ph1u XK1cC1awANhMPjosW1rBrLmRRlzfvo9PxN17IIDC54nwtHHDFC//KyIGuzBtJQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by trasz: URL: https://cgit.FreeBSD.org/src/commit/?id=b36eaf0f4ce85b40e65a03235439fd827544dcc4 commit b36eaf0f4ce85b40e65a03235439fd827544dcc4 Author: Edward Tomasz Napierala AuthorDate: 2021-05-28 23:01:55 +0000 Commit: Edward Tomasz Napierala CommitDate: 2022-02-13 23:21:20 +0000 linux: fix architecture returned for uname on aarch64 Previously it would return "arm64", which was breaking build for Linux kernel. While here, reshuffle entries in the auxv vector to match real Linux. Reviewed By: emaste Sponsored By: EPSRC Differential Revision: https://reviews.freebsd.org/D30500 (cherry picked from commit aa462cab60c8957a97f612d36ac0a4dfa501bbbe) --- sys/arm64/linux/linux_locore.asm | 2 +- sys/arm64/linux/linux_sysvec.c | 12 +++--------- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/sys/arm64/linux/linux_locore.asm b/sys/arm64/linux/linux_locore.asm index 0383e6770954..5f0729b363e8 100644 --- a/sys/arm64/linux/linux_locore.asm +++ b/sys/arm64/linux/linux_locore.asm @@ -40,7 +40,7 @@ .globl linux_platform linux_platform: - .asciz "arm64" + .asciz "aarch64" .text diff --git a/sys/arm64/linux/linux_sysvec.c b/sys/arm64/linux/linux_sysvec.c index 6d05d7efa08c..0ffdf9cb424e 100644 --- a/sys/arm64/linux/linux_sysvec.c +++ b/sys/arm64/linux/linux_sysvec.c @@ -175,11 +175,11 @@ linux_copyout_auxargs(struct image_params *imgp, uintptr_t base) #if 0 /* LINUXTODO: implement arm64 LINUX_AT_HWCAP */ AUXARGS_ENTRY(pos, LINUX_AT_HWCAP, cpu_feature); #endif + AUXARGS_ENTRY(pos, AT_PAGESZ, args->pagesz); AUXARGS_ENTRY(pos, LINUX_AT_CLKTCK, stclohz); AUXARGS_ENTRY(pos, AT_PHDR, args->phdr); AUXARGS_ENTRY(pos, AT_PHENT, args->phent); AUXARGS_ENTRY(pos, AT_PHNUM, args->phnum); - AUXARGS_ENTRY(pos, AT_PAGESZ, args->pagesz); AUXARGS_ENTRY(pos, AT_BASE, args->base); AUXARGS_ENTRY(pos, AT_FLAGS, args->flags); AUXARGS_ENTRY(pos, AT_ENTRY, args->entry); @@ -188,15 +188,14 @@ linux_copyout_auxargs(struct image_params *imgp, uintptr_t base) AUXARGS_ENTRY(pos, AT_GID, imgp->proc->p_ucred->cr_rgid); AUXARGS_ENTRY(pos, AT_EGID, imgp->proc->p_ucred->cr_svgid); AUXARGS_ENTRY(pos, LINUX_AT_SECURE, issetugid); -#if 0 /* LINUXTODO: implement arm64 LINUX_AT_PLATFORM */ - AUXARGS_ENTRY(pos, LINUX_AT_PLATFORM, PTROUT(linux_platform)); -#endif AUXARGS_ENTRY_PTR(pos, LINUX_AT_RANDOM, imgp->canary); if (imgp->execpathp != 0) AUXARGS_ENTRY_PTR(pos, LINUX_AT_EXECFN, imgp->execpathp); if (args->execfd != -1) AUXARGS_ENTRY(pos, AT_EXECFD, args->execfd); + AUXARGS_ENTRY(pos, LINUX_AT_PLATFORM, PTROUT(linux_platform)); AUXARGS_ENTRY(pos, AT_NULL, 0); + free(imgp->auxargs, M_TEMP); imgp->auxargs = NULL; KASSERT(pos - argarray <= LINUX_AT_COUNT, ("Too many auxargs")); @@ -465,13 +464,8 @@ linux_vdso_install(const void *param) linux_szsigcode); elf_linux_sysvec.sv_shared_page_obj = linux_shared_page_obj; - printf("LINUXTODO: %s: fix linux_kplatform\n", __func__); -#if 0 linux_kplatform = linux_shared_page_mapping + (linux_platform - (caddr_t)elf_linux_sysvec.sv_shared_page_base); -#else - linux_kplatform = "arm64"; -#endif } SYSINIT(elf_linux_vdso_init, SI_SUB_EXEC, SI_ORDER_ANY, linux_vdso_install, NULL);