From nobody Mon Jul 18 19:06:54 2022 X-Original-To: soc-status@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 4Lms0J38drz4WwWy for ; Mon, 18 Jul 2022 19:07:12 +0000 (UTC) (envelope-from kotty.0704@gmail.com) Received: from mail-pf1-x435.google.com (mail-pf1-x435.google.com [IPv6:2607:f8b0:4864:20::435]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Lms0H3npCz3hHv for ; Mon, 18 Jul 2022 19:07:11 +0000 (UTC) (envelope-from kotty.0704@gmail.com) Received: by mail-pf1-x435.google.com with SMTP id 70so11500412pfx.1 for ; Mon, 18 Jul 2022 12:07:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:from:date:message-id:subject:to; bh=+k8x3Umi9updSbsrCNgB9jkp3zCrVBj39wsWpDhHCZw=; b=LvSegzjbOJ/YzjlU/sIYcOoNlZyuCJMdMhLLJoD9ORan0P7Ql0/Q2Jhk6wUxY1yuFT AmIoBAyDtXGWFTQOtcATVuOpCrBQM9KPRiiY22rIBWT4yonV624nUTfuLCWrsK52O8Yv YtoyBCDPELLEg2DtMR2XMoy3+NWHGdmdWxuShMc62NNpx0ZRkH4cO1CwQ1+X/5NYpSDi UgkyjyJG/TCiVqSiSU6vpmE9XCJDnmw7YHuoQ1M//mHBZ+4pICMboDxyJrKjJNZSfKiY eg2k7MgJIwL45apVuXVfyymfwtAK0WxXJudr/ggGsGm5k5z0kbecjp7cSmIQJ3Wcy58d adJA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=+k8x3Umi9updSbsrCNgB9jkp3zCrVBj39wsWpDhHCZw=; b=m/oomByWdEbvqUslx2/7CCYJL3JP2NWTnLApY1WM6GMhK9epeooNqS/fGCh+0A5JHt kEvQeG2wGEE0MLrR+YwfTnS69jnnzD6onHEeKn+zewdHtrohWRihnPSFvMkGV0dg+2rw /YGhX21KGWERBmASF5mpc9S6DZxcfNZzmQmGGzfFlx6ofCRKj7Oe3jLWDg9X+MYP/YMF oyFObDySGSJhdJAvz3zIl0bm5mnOPPkmv9sNmoWwZBZLNgzcMsqeOdQo4QWChuTIFJsd b/YVII2p5j8Qg6elyCAnKww6BiE6f/Jmp9hjvoK+bfK7JQwj7Akg32WoDHLMBspojIUa hZYg== X-Gm-Message-State: AJIora9JU/5b/B/wEPBMsKwC3AAQgowJ30WSPD4BopixdIWlf8xdXM4N Z+gqa2uijfk2x00/JSpZXp1QtfOB+ZYUVDoBLqMia11VwqY= X-Google-Smtp-Source: AGRyM1vHMU9iBzYunag0k+aHNVqaPi8S1XQ/LS2KkkmAT9pGLgcksjCj23ePCN0sNtgYvCGZQ119FQuaPLLNA2T7W3Y= X-Received: by 2002:a05:6a00:1915:b0:52b:17fa:6f33 with SMTP id y21-20020a056a00191500b0052b17fa6f33mr25922301pfi.54.1658171230166; Mon, 18 Jul 2022 12:07:10 -0700 (PDT) List-Id: Summer of Code Status Reports and Discussion List-Archive: https://lists.freebsd.org/archives/soc-status List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-soc-status@freebsd.org X-BeenThere: soc-status@freebsd.org MIME-Version: 1.0 From: =?UTF-8?B?5LuK5LqV6Iiq5LiA?= Date: Tue, 19 Jul 2022 04:06:54 +0900 Message-ID: Subject: [GSoC22 Weekly Status Report#5] Successfully built a minimum linuxulator for powerpc64: Koichi Imai To: soc-status@freebsd.org Content-Type: multipart/alternative; boundary="00000000000026a1f005e41913d5" X-Rspamd-Queue-Id: 4Lms0H3npCz3hHv X-Spamd-Bar: --- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20210112 header.b=LvSegzjb; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of kotty.0704@gmail.com designates 2607:f8b0:4864:20::435 as permitted sender) smtp.mailfrom=kotty.0704@gmail.com X-Spamd-Result: default: False [-3.93 / 15.00]; NEURAL_HAM_LONG(-1.00)[-0.997]; NEURAL_HAM_SHORT(-1.00)[-0.996]; NEURAL_HAM_MEDIUM(-0.94)[-0.940]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20210112]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36:c]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; RCPT_COUNT_ONE(0.00)[1]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::435:from]; ARC_NA(0.00)[]; FROM_HAS_DN(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[soc-status@freebsd.org]; TO_MATCH_ENVRCPT_ALL(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; TAGGED_FROM(0.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; MID_RHS_MATCH_FROMTLD(0.00)[]; TO_DN_NONE(0.00)[]; FREEMAIL_FROM(0.00)[gmail.com]; MLMMJ_DEST(0.00)[soc-status@freebsd.org]; DKIM_TRACE(0.00)[gmail.com:+]; RCVD_TLS_LAST(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; MIME_TRACE(0.00)[0:+,1:+,2:~]; RCVD_COUNT_TWO(0.00)[2] X-ThisMailContainsUnwantedMimeParts: N --00000000000026a1f005e41913d5 Content-Type: text/plain; charset="UTF-8" Hello, I could finally build the minimum linuxulator for powerpc64 this week. This took so much time since I needed to arrange the system call table and I had to write the other parts correctly to conform to the existing linuxulator code. One major change for my project is the change in supporting endian. Initially, I intended to do a little-endian implementation to reuse much of the existing linuxulator code. However, due to the following reasons, I decided to continue my development with big-endian for now. 1. The latest version of FreeBSD/powerpc64le 14.0 CURRENT doesn't work in my environment. (Stops while booting) 2. The STABLE version 13.1 of FreeBSD/powerpc64le works but since it has the old version of sys/compat/linux and some of machine-independent codes aren't defined here yet(ex. l_siginfo_t,). I tried to solve this by copying the new version of sys/compat/linux. However, there are functions that do not match the number of arguments (sys/kern/kern_cpuset.c:kern_cpuset_setaffinity()) due to the old kernel version, and functions such as kern_poll_maxfd() are not supported because the C++ version is C99. These do not seem to be unsolvable, but I do not want to spend time on this as such bugs should be resolved with a new kernel. Although there were some obstacles, I think I have made a big step forward. I will continue debugging in the next weeks to make sure the various system calls are usable. Koichi Imai --00000000000026a1f005e41913d5 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hello,

I could finall= y=C2=A0build the minimum linuxulator for powerpc64 this week.
Thi= s took so much time since I needed to arrange the system call table and=C2= =A0I had to write the other parts correctly to conform to the existing linu= xulator code.=C2=A0

One major change for my projec= t is the change in supporting endian.
Initially, I intended to do= a little-endian implementation to reuse much of the existing linuxulator c= ode. However, due to the following reasons, I decided to continue my develo= pment with big-endian for now.

1. The lat= est version of FreeBSD/powerpc64le 14.0 CURRENT doesn't work in my envi= ronment. (Stops while booting)
2. The STABLE version 13.1 of Free= BSD/powerpc64le works but since it has the old version of sys/compat/linux = and some of machine-independent codes aren't defined here yet(ex. l_sig= info_t,). I tried to solve this by copying the new version of sys/compat/li= nux.=C2=A0However, there are functions that do not match the number of argu= ments (sys/kern/kern_cpuset.c:kern_cpuset_setaffinity()) due to the old ker= nel version, and functions such as kern_poll_maxfd() are not supported beca= use the C++ version is C99. These do not seem to be unsolvable, but I do no= t want to spend time on this as such bugs should be resolved with a new ker= nel.


Although there were some= obstacles, I think I have made a big step forward.
I will continue de= bugging in the next weeks to make sure the various system calls are usable.=

Koichi Imai


--00000000000026a1f005e41913d5--