Received: by 2002:a25:f815:0:0:0:0:0 with SMTP id u21csp2232929ybd; Mon, 24 Jun 2019 03:01:38 -0700 (PDT) X-Google-Smtp-Source: APXvYqwQVbnaq30IbzrPs2yusYKexq0vBpsaCqZKbZq0sR8aoiHwbNzRoyQlTdOXJR3BLGddJZvD X-Received: by 2002:a17:902:20e9:: with SMTP id v38mr106624674plg.62.1561370498677; Mon, 24 Jun 2019 03:01:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1561370498; cv=none; d=google.com; s=arc-20160816; b=Dojmf8fbkdk9QxG+aw6zNfXSKomJ3ZUsrPiQ/GwtSZ+X0CnMUYfVaGHgO7QaqyXXz4 sQXbz4mH5YeCA6DLvg2CeqCjPCdbWyT72gOYboW2ZEAG5EcBq7bpRimhKVRzgpNfDrep aStB0exIy/MqteBNYYIKlwrRQ7KvsWM8JavhjApeqw9k9BrJ/zB7LTFu3S0MhZr9C/Nz E9SCh/wNiUvWx0AfmYYAAFF/7V4qHyh1LhDn0xPk8hE6PmbyOyzxXbNvpzanDCPwSPc3 o8APauXzHELSLyHiRwItMFsTEHIOPCOtIwA2OiSp5Q21WKtacqflWxijz8D3VPR2h8RP 0qDA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:mime-version:user-agent:date:message-id:subject :from:cc:to; bh=Zldi7cM+4fRprJ3ExllmJdBfd5bA6ZEENoI4KO0XHvo=; b=fzq57kS51TSM2t/D+8ML123ul4J2a8vwKcgitSVwybWI3pe1Yr6j0ObWi+AEYUJk3h HQHdUII/nNyPJ82N2ckNeViRFrxhXFl/5pDU2nK5L2s/eLAm9CH2CfwheBqpZJ7ZozOK x5iRdWiEqNnrzLDgxQ5q15H3qX4eZk/7dNsiOHJvfFR5vcGPMh2h8JilX58+mazWka2t M5UInkXCcI/yZFKIDGTJTnRJjfRMfeBcRXzTCebGY9qx+Ft5MTg1Xz6EUWICDT2E9gxG NQiLqkEZww10kv/3ZwizRw/zPgLt9JD7aFDOGACBxIS29vDk88WnC26PSZnQ1VRT64Ym VJNw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=siemens.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 1si9724314pld.6.2019.06.24.03.01.22; Mon, 24 Jun 2019 03:01:38 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=siemens.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728763AbfFXKAe (ORCPT + 99 others); Mon, 24 Jun 2019 06:00:34 -0400 Received: from goliath.siemens.de ([192.35.17.28]:33266 "EHLO goliath.siemens.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728620AbfFXKAb (ORCPT ); Mon, 24 Jun 2019 06:00:31 -0400 Received: from mail2.sbs.de (mail2.sbs.de [192.129.41.66]) by goliath.siemens.de (8.15.2/8.15.2) with ESMTPS id x5OA03Fp014621 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 24 Jun 2019 12:00:03 +0200 Received: from [167.87.13.35] ([167.87.13.35]) by mail2.sbs.de (8.15.2/8.15.2) with ESMTP id x5OA01AA023870; Mon, 24 Jun 2019 12:00:02 +0200 To: Thomas Gleixner , Ingo Molnar , Borislav Petkov , x86@kernel.org Cc: Linux Kernel Mailing List From: Jan Kiszka Subject: x86: Spurious vectors not handled robustly Message-ID: Date: Mon, 24 Jun 2019 12:00:00 +0200 User-Agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv:1.8.1.12) Gecko/20080226 SUSE/2.0.0.12-1.1 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi all, probably since "x86: Avoid building unused IRQ entry stubs" (2414e021ac8d), the kernel can no longer tell spurious IRQs by the APIC apart from spuriously triggered unused vectors. We've managed to trigger such a cause with the Jailhouse hypervisor (incorrectly injected MANAGED_IRQ_SHUTDOWN_VECTOR), and the result was not only a misreport of the vector number (0xff instead of 0xef - took me a while...), but also stalled interrupts of equal and lower priority because a spurious interrupt is not (and must not be) acknowledged. How to address that best? I would say we should at least have separate entry paths for APIC interrupt vs. vectors, to improve robustness in the faulty case. Jan -- Siemens AG, Corporate Technology, CT RDA IOT SES-DE Corporate Competence Center Embedded Linux