From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mx2.suse.de ([195.135.220.15]) by Galois.linutronix.de with esmtps (TLS1.0:DHE_RSA_CAMELLIA_256_CBC_SHA1:256) (Exim 4.80) (envelope-from ) id 1fAgpl-0007dL-S2 for speck@linutronix.de; Mon, 23 Apr 2018 21:09:06 +0200 Received: from relay2.suse.de (charybdis-ext.suse.de [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id 9232BAD2E for ; Mon, 23 Apr 2018 19:09:00 +0000 (UTC) Date: Mon, 23 Apr 2018 21:08:49 +0200 From: Borislav Petkov Subject: [MODERATED] Re: [PATCH v3 06/10] [PATCH v3 6/9] Linux Patch #6 Message-ID: <20180423190849.GN24245@pd.tnic> References: <20180423171426.795385641@dhcp-10-159-147-220.vpn.oracle.com> <20180423185755.GM24245@pd.tnic> MIME-Version: 1.0 In-Reply-To: <20180423185755.GM24245@pd.tnic> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable To: speck@linutronix.de List-ID: On Mon, Apr 23, 2018 at 08:57:55PM +0200, Borislav Petkov wrote: > Something's still fishy with this patch. I'm booting a guest with >=20 > spec_store_bypass_disable=3Don >=20 > but dmesg still says: >=20 > [ 0.044001] Speculative Store Bypass: Vulnerable Ok, there it is: static enum spec_store_bypass_mitigation_cmd __init spec_store_bypass_parse_c= mdline(void) { char arg[20]; int ret, i; enum spec_store_bypass_mitigation_cmd cmd =3D SPEC_STORE_BYPASS_CMD_A= UTO; if (!boot_cpu_has_bug(X86_BUG_CPU_SPEC_STORE_BYPASS)) { return SPEC_STORE_BYPASS_CMD_NONE; It needs to be if (!boot_cpu_has_bug(X86_BUG_CPU_SPEC_STORE_BYPASS)) not if (!boot_cpu_has(X86_FEATURE_STBUF_BYPASS)) which we set earlier in cpu_set_bug_bits(). Which makes me wonder why we even need X86_FEATURE_STBUF_BYPASS? Or why we need X86_BUG_CPU_SPEC_STORE_BYPASS? One of the two is superfluous AFAICT. --=20 Regards/Gruss, Boris. SUSE Linux GmbH, GF: Felix Imend=C3=B6rffer, Jane Smithard, Graham Norton, HR= B 21284 (AG N=C3=BCrnberg) --=20