Received: by 2002:a05:6a10:2785:0:0:0:0 with SMTP id ia5csp2970530pxb; Tue, 12 Jan 2021 03:12:29 -0800 (PST) X-Google-Smtp-Source: ABdhPJylLQ5rmHE5vVdh+xOPArinfszx+ea8Xv31Bj/gCQcVp78BWlc7JRK21PsAGFH/1EghthbU X-Received: by 2002:a17:906:f98e:: with SMTP id li14mr1144512ejb.415.1610449949352; Tue, 12 Jan 2021 03:12:29 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1610449949; cv=none; d=google.com; s=arc-20160816; b=LxcV5eduXzaijb5Ab9ClY8cuchGaitb7J8k3oMBqw3p1RgNfi/2P2kNLh+4xiWMZZj 8rpkKQmfzflGXwpO07nTXWIdyc//G84GNa4o2C3I565xPSER55btLB+Jf4GUNyqfoK7K RcXCP5N2/pJaWu78i+D3B8BWR2+Ezs8wbhwooj2RadfXNYfQgRpREQ+Bp1S2Fq7X+syo UKkZTdNnJCGl9b1Otc/w0epKozcKVA8yFFg5AQUDwycW+J7IZNQQDh+r4pZd/nYUxtVq 9fnQ8F398D68m3gQtd9pKwap0UZ+5zsUDweWnRCPZCzMTxYrAWUQFckoMrz2gw3jD2qx CYyw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=o2xhT4T3UH/RNetGtqqN0SQK0/RxSdK1i96SsXfZ0g0=; b=cxhpY043c5bCDhfDf+5WudR03yNYzIYPHdbc1FrzN4auV+CnSf/C9W2A1JN3AsV4eD yXPPMtICnOSw6AC7EQj+u8P1DTFnFFPwFoEXfarBs7n8fxtJF49DpbzIfZXOn888wKIn 4btCwIoDyQ83lNWVKmm1gM1e+e8VrSPWQnsQaY0tMVrpzcqikNUADE0pUbK8oHWyzO7Y fH0r0wBF+lRs8TQxRBwiCSZJ+pnrPsg28Ob3k8S1aMbjLKiwbwb96VjytIg93K65a3ad 6bfk3/5VVsOSqnGQYTWNGDGwZ+1aTR9LjdykNolmMrbSD50fV9mscbnSMANkYYdd6Fdr 5Knw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=mJOTfjnF; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id w27si236935ejq.673.2021.01.12.03.12.05; Tue, 12 Jan 2021 03:12:29 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=mJOTfjnF; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726742AbhALDch (ORCPT + 99 others); Mon, 11 Jan 2021 22:32:37 -0500 Received: from mail.kernel.org ([198.145.29.99]:44946 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726602AbhALDch (ORCPT ); Mon, 11 Jan 2021 22:32:37 -0500 Received: by mail.kernel.org (Postfix) with ESMTPSA id 882BB22DFB for ; Tue, 12 Jan 2021 03:31:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1610422316; bh=LbikLWN0Wr/yfcAvca6bpWFUFuvrFZe518dAXl2GcfY=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=mJOTfjnFIOZQbQKPvrqZR8mKcj035uWjHHe4OCjVgCIEZwg9kTvUfwrDh417Nk3jg CskG85XcsNu7QFPGMNR7Fi/hS27ZvLeV02vpEXdldS97RdtnghiFSDC2+92FyeZbT4 f1yq2Hwqaukeyk5wsKyrbg4acxw1QvsmUY4D2f0qFhZ0JwG82bfcCLwIRcHIj78j/M jmcWhbYtLckPgmMdG7yNNwfdU+zS6lp1kFT5oDlGHxzW+XPVJPJ7h/ne6pUyqIAKjf Eay/bohnlFrhrjjvlTs1TQRIKxMXRsuawHnyLbNamH0+V5G7w3A59S3EKzGpNT3leV pX8NiRhn80rhA== Received: by mail-ed1-f51.google.com with SMTP id v26so696570eds.13 for ; Mon, 11 Jan 2021 19:31:56 -0800 (PST) X-Gm-Message-State: AOAM532xHpAbLjtKeOYGYhzYJp5YIyi69xRQCheyeZ1BxQpXDgIrH/Xx wT1QSTTGaBsTUXQYSf076iOwU8vo02zZATS6kLWFDA== X-Received: by 2002:aa7:c3cd:: with SMTP id l13mr1730459edr.97.1610422315014; Mon, 11 Jan 2021 19:31:55 -0800 (PST) MIME-Version: 1.0 References: <20210111200027.GH25645@zn.tnic> <0ad68c87-ac2e-478e-ed97-95256464a3ba@suse.de> In-Reply-To: <0ad68c87-ac2e-478e-ed97-95256464a3ba@suse.de> From: Andy Lutomirski Date: Mon, 11 Jan 2021 19:31:43 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: gdbserver + fsgsbase kaputt To: Tom de Vries Cc: Andy Lutomirski , Borislav Petkov , "Chang S. Bae" , tdevries@suse.com, x86-ml , lkml Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Jan 11, 2021 at 3:52 PM Tom de Vries wrote: > > On 1/12/21 12:40 AM, Andy Lutomirski wrote: > > On Mon, Jan 11, 2021 at 1:06 PM Andy Lutomirski wrote: > >> > >> > >>> On Jan 11, 2021, at 12:00 PM, Borislav Petkov wrote: > >>> > >> > >> > >>> Or do you mean I should add "unsafe_fsgsbase" to grub cmdline and bisect > >>> with fsgsbase enabled in all test kernels? > >> > >> Yes. But I can also look myself in a bit. > >> > > > > Tom, if I reproduce it in an interactive gdb and play a bit, I get: > > > > Program received signal SIGSEGV, Segmentation fault. > > 0xf7df2cb6 in init_cacheinfo () from target:/lib/libc.so.6 > > (gdb) p $gs = $gs > > $1 = 99 > > (gdb) si > > > > Program terminated with signal SIGSEGV, Segmentation fault. > > The program no longer exists. > > > > That's gdb itself crashing. Any idea what's wrong? > > > > The first "Program received signal SIGSEGV, Segmentation fault" means > that gdb intercepts the sigsegv, and allows you to inspect it f.i. by > printing $_siginfo. The inferior is still live at this point. > > Then when trying to continue using si, the signal is passed on to the > inferior, which means it'll be terminated. > > AFAIU, gdb has not crashed, and behaves as expected. See below for a > similar scenario. > > Thanks, > - Tom > > ... > $ cat test2.c > int > main (void) > { > *((int *)0) = 0; > return 0; > } > $ gcc test2.c > $ ./a.out > Segmentation fault (core dumped) > $ gdb -q ./a.out > Reading symbols from ./a.out... > (gdb) r > Starting program: /home/vries/a.out > > Program received signal SIGSEGV, Segmentation fault. > 0x00000000004004a0 in main () > (gdb) si > > Program terminated with signal SIGSEGV, Segmentation fault. > The program no longer exists. > (gdb) > ... > Hah, you're right. Is there an easy way to tell gdb to suppress the first signal and try again?