From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from [87.239.111.99] (localhost [127.0.0.1]) by dev.tarantool.org (Postfix) with ESMTP id 01670167861C; Wed, 10 Dec 2025 10:24:44 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 01670167861C DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tarantool.org; s=dev; t=1765351484; bh=kuDNjh/lB0FZYpuxg7NRCH7IWLvrXdfSiBcUiaiSR/Q=; h=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=f0QkRL5+qnlg3ZQRHxJWwRZovm4F8zbmUs/wdNNY2gursmI3jDp9vlOX624JDPoJK 0C186M1PF70RsPMEimdGO2gwGWpWxPCBYXTx2KNV48XQJw02SNnZQ/2WP5oQQyHEFe YYjsh3yNpsZIfmPy4o1M7GCbgKlUGJ2dL5sImGr4= Received: from mail-lj1-f170.google.com (mail-lj1-f170.google.com [209.85.208.170]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id 4031C1678619 for ; Wed, 10 Dec 2025 10:24:42 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 4031C1678619 Received: by mail-lj1-f170.google.com with SMTP id 38308e7fff4ca-37b495ce059so49551391fa.0 for ; Tue, 09 Dec 2025 23:24:42 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765351481; x=1765956281; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=KRHgDLdwuq0BX/XUtg/4ky4bdUIm7HDw8T8ExycfP8Q=; b=tmr0CMK8HJBH3TAXYaBxHOevUYCSWkAMne7RP+i3VWQV5whXaVlFNtEExSh+xH91MJ i5jSrcIemTUYk17weJTnCQj1MK0+s8C79olFw0x8CqSFCeUNebgTgtHwWGB2iDZO5PcX ptM094az/T0JB2Z9+6rDy1iSxNPNp/E9CaGxZp6P4Qxvz1jWJ2jNX4oByVEQCX3lVQMs ov+30jxJe8+ESacWi8U4NvzQYoBYFDui5YslGSDDqeMLze2o+ihmGaKwBk0LlaA3vk9K kTLVts2Ooo7I1vWjbB5jXK4HhiyAmGgb+NC3lG80jG6uiNbSw9u1aG6HG7/wsHuyc341 +Uiw== X-Gm-Message-State: AOJu0Yx3J2nNXykGsOmPrno59cVq2ymkfdHqb+Rm93senDezkeLaNTYp qQtFm8iR9qJIUK63lhQRe8BAe9TM++c0KmvSmGr95SfZMCD2IbZU62d0ZFgV95RpE6U= X-Gm-Gg: AY/fxX7/lnptUxnMi1WWlDCnD2CvuE6KzYyjlhgSiKPHf/4oVxfNuYCpyzD/ygjC+hJ 6upc93szKYIZ+XP6JTgei9WpMb9Xk5K4QXtxkbc3qtwLGVNoyDvP5/0HgL0r9Ps0/Hlu1R7jmhZ nUflKTP8Q17Krg7EBaa5+6UTWx8mvx9xLAdgOIZu6SkyzTU44PvcrmvorUxtBp4GmOg/PnTrsae hZqVaVJZ4dymp6O1lkEOTxOEdbCvYEocaAN5HC8nl18fBOpJSYhInIW2+r0BIBtHlwiVW75Jn+3 HoSZEgTAuMmu5Cn3+ix5/pgqV3j2CIZN0izoHoDRjA0kv9vkWT7TsGzYxc9DZCjqvzRP4+GE4me dAev3kA9aobdZGGfvTuUoXTb3gVTFjT/r3ztNxuctL4imnXEqKaRLl9pxSlWJ0qvfCZ9F0slymK BxrA== X-Google-Smtp-Source: AGHT+IF1zXb2N12QDYpXncsFXfBN7V8U42+9PsqIhEr9nx/4WoprtiGBIe8XRzIHQ4UlOdHAHgI21w== X-Received: by 2002:a05:651c:1502:b0:37f:9612:7447 with SMTP id 38308e7fff4ca-37fb2064e5amr3688281fa.14.1765351481137; Tue, 09 Dec 2025 23:24:41 -0800 (PST) Received: from localhost ([5.187.32.135]) by smtp.gmail.com with ESMTPSA id 38308e7fff4ca-37fa74dc71bsm13708241fa.0.2025.12.09.23.24.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 09 Dec 2025 23:24:40 -0800 (PST) X-Google-Original-From: Sergey Bronnikov To: tarantool-patches@dev.tarantool.org, Sergey Kaplun Date: Wed, 10 Dec 2025 10:23:27 +0300 Message-ID: <501e08d75b66efe4221def8226d5b43820cc8490.1765350224.git.sergeyb@tarantool.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Subject: [Tarantool-patches] [PATCH luajit 1/3] MIPS64: Fix xpcall() error case. X-BeenThere: tarantool-patches@dev.tarantool.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Sergey Bronnikov via Tarantool-patches Reply-To: Sergey Bronnikov Errors-To: tarantool-patches-bounces@dev.tarantool.org Sender: "Tarantool-patches" From: Mike Pall Thanks to François Perrad and Stefan Pejic. (cherry picked from commit ea7071d3c30b6432bfe6f8a9d263e0285cec25e3) The patch fixes `xpcall()` segfaults on MIPS64 commit. The similar patch for ARM64 has been backported previously, see the commit af889e4608e6eca495dd85e6161d8bcd7d3628e6 ("ARM64: Fix xpcall() error case (really)."). Sergey Bronnikov: * added the description Part of tarantool/tarantool#12134 --- src/vm_mips64.dasc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/vm_mips64.dasc b/src/vm_mips64.dasc index 44fba36c..da187a7a 100644 --- a/src/vm_mips64.dasc +++ b/src/vm_mips64.dasc @@ -1440,15 +1440,16 @@ static void build_subroutines(BuildCtx *ctx) |. nop | |.ffunc xpcall - | daddiu NARGS8:RC, NARGS8:RC, -16 + | daddiu NARGS8:TMP0, NARGS8:RC, -16 | ld CARG1, 0(BASE) | ld CARG2, 8(BASE) - | bltz NARGS8:RC, ->fff_fallback + | bltz NARGS8:TMP0, ->fff_fallback |. lbu TMP1, DISPATCH_GL(hookmask)(DISPATCH) | gettp AT, CARG2 | daddiu AT, AT, -LJ_TFUNC | bnez AT, ->fff_fallback // Traceback must be a function. |. move TMP2, BASE + | move NARGS8:RC, NARGS8:TMP0 | daddiu BASE, BASE, 24 | // Remember active hook before pcall. | srl TMP3, TMP3, HOOK_ACTIVE_SHIFT -- 2.43.0