From nobody Mon Apr 08 20:31:17 2024 X-Original-To: freebsd-arm@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 4VD12r5pGCz5HjNl for ; Mon, 8 Apr 2024 20:31:32 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-ej1-x62b.google.com (mail-ej1-x62b.google.com [IPv6:2a00:1450:4864:20::62b]) (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 4VD12r3qrjz49bc for ; Mon, 8 Apr 2024 20:31:32 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-ej1-x62b.google.com with SMTP id a640c23a62f3a-a47385a4379so1086851766b.0 for ; Mon, 08 Apr 2024 13:31:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1712608289; x=1713213089; darn=freebsd.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=NaeOREw+Qd576UzLOTbbasr4eyJK7k/9KRDzLDeq+Bk=; b=xoLL1Q6odUHcnJW7phhpt2iofDYzK9a80k5lxGhQdP2/xSnKBXPl/rmS+t/iBxLnBd sba8AOGH/2HOAzQ40XVLfDjPmYWKlxeMG7XO3I3Gt6Pxf5DrWUqNFbWwdWMXz267upmH Usmi5dW+dfQ4uPXyjoZOUecEJTRzpyrk9YTLeIenaFiPqjrOICdkyrN7DQu0+c/FjBnt GusTcjMQupVKS9Ji7LNDOWv2KjXIqI/rmON/Q5+Z9i8ST6Vxcp9Ice9xnIZdqdZ3ltGi dVzsffAOhkt6LisfurAhMCpa81wnkvToCMebg7ageNiQ9mjsqI0exBVBti6Ay5zU+Jp4 VW4A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1712608289; x=1713213089; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=NaeOREw+Qd576UzLOTbbasr4eyJK7k/9KRDzLDeq+Bk=; b=KaCUP87aTrrxyd/ztbeyGU+/IqeMEXUIF/mD43X3ZmjbKsJyg6ofwvHdD6sngDcfEp GNTG1MIeqGgIke5vWZPwfU5ML2ZGK2Pno9OYtjbs5Ypl+Qo/SYrsBhn+jXxxtyYXyXb1 lz34WtFF5Cqk2lBQDAGLUb1OpNyrfUGuvCCdtFxVML11bXm960qsaKYLOoChHOyzvpZX yJwCq1daUCkLZMNklQUZAEcC75Drlfq6+QqoUb1jXS6z7jjQ/GxWNJFV2TidXBBbpc8/ AFi3aBIlcFHe/5Pz3+lC41cJp42TfKFebeKXT4bpyTg94Pq8MgnXCIjUuiMQ9y+hpLMv XW/Q== X-Gm-Message-State: AOJu0YzcAib2ryRqSF97nJt4hkn549brwZ3ul+Wa8BaWmzIibmGuOd2m eXX8zl9bdL99Vm8hj0hKnb/mopEwVOpsvBuGpAFHckC0hPe23I1OoQj+P2iuA6vLWc5WB4ucN+J GoVf5GcCiQkwYVkZU7E98Toe2C15hHnJxH1gA8DNp3kIoDFWmB7M= X-Google-Smtp-Source: AGHT+IH2mFw6zP69u97ytAHiWlBml24dh6QySFcx48j5lgFyQvdL72mDcKTK4R0Azt5N1HxoTiEjGY8cY43CRo0ZQ7c= X-Received: by 2002:a17:906:a88f:b0:a4e:a23d:4b73 with SMTP id ha15-20020a170906a88f00b00a4ea23d4b73mr603214ejb.1.1712608288954; Mon, 08 Apr 2024 13:31:28 -0700 (PDT) List-Id: Porting FreeBSD to ARM processors List-Archive: https://lists.freebsd.org/archives/freebsd-arm List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-arm@freebsd.org MIME-Version: 1.0 References: In-Reply-To: From: Warner Losh Date: Mon, 8 Apr 2024 22:31:17 +0200 Message-ID: Subject: Re: arm64 mrs and system registers To: Paul Floyd Cc: freebsd-arm@freebsd.org Content-Type: multipart/alternative; boundary="000000000000b3f6b806159bb09b" X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US] X-Rspamd-Queue-Id: 4VD12r3qrjz49bc --000000000000b3f6b806159bb09b Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, Apr 8, 2024 at 9:03=E2=80=AFPM Paul Floyd wrot= e: > Hi > > I've been looking at this bugzilla item > > https://bugs.kde.org/show_bug.cgi?id=3D392146 > > Is there any difference between Linux and FreeBSD when it comes to what > registers and fields are exposed by the kernel (see comment 17 in the > link above). > I don't think so. We've not seen issues with other drivers on aarch64 excep= t when they were written on x86 and didn't have the synchronization needed for the weaker memory models in aarch64 systems. > I did have a poke around the kernel code but it's a bit hard to tell > exactly which of the access macros are being used, without exhaustively > grepping for them one by one. > Yea, I think that there's missing atomics on the state transitions and/or some missing locking that "magically" provides barriers that make it work on x86. Warner --000000000000b3f6b806159bb09b Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


=
On Mon, Apr 8, 2024 at 9:03=E2=80=AFP= M Paul Floyd <pjfloyd@wanadoo.fr> wrote:
Hi=

I've been looking at this bugzilla item

https://bugs.kde.org/show_bug.cgi?id=3D392146

Is there any difference between Linux and FreeBSD when it comes to what registers and fields are exposed by the kernel (see comment 17 in the
link above).

I don't think so. We&#= 39;ve not seen issues with other drivers on aarch64 except
when t= hey were written on x86 and didn't have the synchronization needed
for the weaker memory models in aarch64 systems.
=C2=A0
I did have a poke around the kernel code but it's a bit hard to tell exactly which of the access macros are being used, without exhaustively grepping for them one by one.

Yea, I th= ink that there's missing atomics on the state transitions and/or
<= div>some missing locking that "magically" provides barriers that = make it work
on x86.

Warner=C2=A0
<= /div>
--000000000000b3f6b806159bb09b--