From owner-freebsd-mips@freebsd.org Thu May 28 20:08:42 2020 Return-Path: Delivered-To: freebsd-mips@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id E33362FC67E for ; Thu, 28 May 2020 20:08:42 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-qk1-f173.google.com (mail-qk1-f173.google.com [209.85.222.173]) (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 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 49XzKj5z5jz45BN for ; Thu, 28 May 2020 20:08:41 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: by mail-qk1-f173.google.com with SMTP id n11so141693qkn.8 for ; Thu, 28 May 2020 13:08:41 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=k/YWhquj0to5J3mTGPxWgQXXWe0luFVAvk8huBpPMLk=; b=CMZxm+SgWr2Em1MJ7dtw91B2Pkzo/l/1ygcwI8j3E5pDf5bFmoi3s3qGwkIiT0x5ZK 5AAB11NBA5vkbMQmKsSlnvE0okV9tcWS8ZWenWwsX7k132ljBByUnGU9ZdcJ+2NhZSFV p1XLscZuBRMpfBw0Z2V/pZSzQawS96CUjZDn2fvaXHdUbrHyCGj812JuxV8pVlzHt3Zp zEHSBQB1rpZ2z5oox8iLVYAPN+uSEYw6gkFSpB5N3ZId0BX/RTT4y4C3+3VXw0CWSQ6T EiG2jdtd3xbEHlTewPLTjqMaSVHei9zWOZR4iqGLpQtbH7+lGYq0yzKnA3djS4LJPyAA KlbA== X-Gm-Message-State: AOAM530ESnfUO3+EkQSvcgdPmVAU4JkHNkmDCtyWNEE5owwqlKQ3mU0w dSb95UDb3ntXbz5ppGuNwQQL9IuYD+XqQMBiFX8jbJt/ X-Google-Smtp-Source: ABdhPJxhdO7QTM/gFwvrEn2r9LbrlP9wcVisVHcJa9L4a4c50076lDkW6mor6ihJy39KzDP+ND8gl3Po9gdlxMKGgGY= X-Received: by 2002:a05:620a:c0f:: with SMTP id l15mr4693375qki.183.1590696519402; Thu, 28 May 2020 13:08:39 -0700 (PDT) MIME-Version: 1.0 From: Adrian Chadd Date: Thu, 28 May 2020 13:08:27 -0700 Message-ID: Subject: unaligned exception load emulation bugs To: "freebsd-mips@freebsd.org" X-Rspamd-Queue-Id: 49XzKj5z5jz45BN X-Spamd-Bar: / Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=pass (mx1.freebsd.org: domain of adrianchadd@gmail.com designates 209.85.222.173 as permitted sender) smtp.mailfrom=adrianchadd@gmail.com X-Spamd-Result: default: False [-0.69 / 15.00]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-0.04)[-0.038]; RCVD_COUNT_TWO(0.00)[2]; FROM_NEQ_ENVFROM(0.00)[adrian@freebsd.org,adrianchadd@gmail.com]; FROM_HAS_DN(0.00)[]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17:c]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-mips@freebsd.org]; DMARC_NA(0.00)[freebsd.org]; RCPT_COUNT_ONE(0.00)[1]; NEURAL_HAM_LONG(-0.93)[-0.930]; NEURAL_SPAM_SHORT(0.28)[0.282]; RCVD_TLS_ALL(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[209.85.222.173:from]; TO_DN_EQ_ADDR_ALL(0.00)[]; FORGED_SENDER(0.30)[adrian@freebsd.org,adrianchadd@gmail.com]; RWL_MAILSPIKE_POSSIBLE(0.00)[209.85.222.173:from]; R_DKIM_NA(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; MIME_TRACE(0.00)[0:+,1:+,2:~]; TAGGED_FROM(0.00)[]; TO_DOM_EQ_FROM_DOM(0.00)[] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.33 X-BeenThere: freebsd-mips@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: Porting FreeBSD to MIPS List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 May 2020 20:08:43 -0000 hi! I've discovered that our unaligned exception load emulation path likely hasn't worked in a while due to some exciting compiler behaviour. https://reviews.freebsd.org/D25040 I'd appreciate some pointers/suggestions on better ways to fix this. As I haven't unboxed my mips64 hardware in a while I'd also appreciate some testing there too. I think it's worth just combining the two macros and the address increment into a single macro w/ address offset just to be (a) slightly more efficient and (b) ensure that the dependency bits for assembler arguments are done right, but I'd prefer to do that in a subsequent commit. Thanks, -adrian