Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp682323pxj; Fri, 14 May 2021 13:00:34 -0700 (PDT) X-Google-Smtp-Source: ABdhPJw0k2ajyhTzP7+s8Obyt7PzP/KqJtNrC7spHPH92bSgVyO4iXaJeKIG1mENmtbUqojA8dh4 X-Received: by 2002:a05:6638:329d:: with SMTP id f29mr33369346jav.49.1621022433955; Fri, 14 May 2021 13:00:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1621022433; cv=none; d=google.com; s=arc-20160816; b=PPfmZgGObpDoScAaoaZ3D/yUASakdC899qRW4dt+x+E//PudQ4cM1Q/wSn3CFGp2vc 2goab3t1c8N+CWLS5gSKXuWMT8GiH+LpKUvUMbIiv/Uv9jbmaGzn3rdccuK8gwzoI+PO wTs3ZjZWGuHwBOBEbHfj+RFCiOcmNRZVbQcKWBH+5NP2FfCxxMxjXx+KzBSksTS03FsU QrGTUqhFCB6hLw5ii7KfUgt4962TOG/cqZ/YeIpruzQ+cjftigmke+1Oz2MZVWxPMKr6 UmFpAVJlsmkw5LPZ5OTu28rjqzz//+2Z334WvqafYrQMLKGQigdHQvZPBGNin+PHTZIB gotA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject:dkim-signature:dkim-filter; bh=jSzPdXXc18oxGyRbNuujyb/chXDixgHnSADRJ1xFGAw=; b=Ez6g8AaBf69XdpGel6rCfHYvmmQdOBFCs2yu9dYcf3oWe1PAlMvbh8FFSomF6rSnO7 JoDYWs3eIi+2YoZ71YHhJDjVOvJFxBDHqSOtKRnKh2VCvw8oz/i7BRFDk0a44kqzJ6Aj fHbZxpQTqGhPwIYDzXnRSk3rIGtDxM2KgSSdoT/BGO1FNQXoELwFK1RUh4ROBQW2+7pQ Ovxk+ZUG0EWpF81HVWp+U4LebEw7gCkBBNwx4f7GVq1h3ueh4/vWPzc8a9NhSCZKW2o3 mbr3KiEFTH8gSJE1oQbJD07mwjPZCS0QXLAYL/mQHoDomIQTya5e5bNHJJrD0FWPN+1l 2/Cg== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@zytor.com header.s=2021042801 header.b=ZgJnsaf9; 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=fail (p=NONE sp=NONE dis=NONE) header.from=zytor.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id j6si8348104iow.6.2021.05.14.13.00.20; Fri, 14 May 2021 13:00:33 -0700 (PDT) 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=fail header.i=@zytor.com header.s=2021042801 header.b=ZgJnsaf9; 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=fail (p=NONE sp=NONE dis=NONE) header.from=zytor.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231801AbhENRaN (ORCPT + 99 others); Fri, 14 May 2021 13:30:13 -0400 Received: from terminus.zytor.com ([198.137.202.136]:55143 "EHLO mail.zytor.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229516AbhENRaM (ORCPT ); Fri, 14 May 2021 13:30:12 -0400 Received: from tazenda.hos.anvin.org ([IPv6:2601:646:8602:8be0:7285:c2ff:fefb:fd4]) (authenticated bits=0) by mail.zytor.com (8.16.1/8.15.2) with ESMTPSA id 14EHSaXc3149327 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NO); Fri, 14 May 2021 10:28:36 -0700 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.zytor.com 14EHSaXc3149327 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=zytor.com; s=2021042801; t=1621013318; bh=jSzPdXXc18oxGyRbNuujyb/chXDixgHnSADRJ1xFGAw=; h=Subject:To:Cc:References:From:Date:In-Reply-To:From; b=ZgJnsaf9WvSYOIHTsfdIIHP1/Yhs8t/6zK6uHxzk//1cTlkiwLo8CUGJkRx+roSNj KspkzNOpGlHIKX4POtuFDtmRY/EsUe6IGSI8D25gizCAtst3Z6bmTW/1QcAyeiozB1 /1WEI7OaP7Q/8/lFI163/CzIm+Lgwx1fpUO4dbRQycuSdZOO19PHjpMLVLG/sTpm09 62DgYkR8TbVugGuO7gwMfSSqJmZoaXP++4iMAUAnrsPVbt2apA6PnVqUpB9uw2Sy8A xPVnO8J4VKsw//i9+VRclX+OlLAjDk8IhDtLRXug/ZwviZ5d8SBZvocEUJ5FPGe7GQ 4gOnSv3hPZoGQ== Subject: Re: [PATCH] x86/i8259: Work around buggy legacy PIC To: David Laight , "'Thomas Gleixner'" , Maximilian Luz , Ingo Molnar , Borislav Petkov Cc: Sachi King , "x86@kernel.org" , "linux-kernel@vger.kernel.org" , "stable@vger.kernel.org" References: <20210512210459.1983026-1-luzmaximilian@gmail.com> <9b70d8113c084848b8d9293c4428d71b@AcuMS.aculab.com> <87r1i94eg6.ffs@nanos.tec.linutronix.de> From: "H. Peter Anvin" Message-ID: Date: Fri, 14 May 2021 10:28:30 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.10.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 5/14/21 9:12 AM, David Laight wrote: > > A more interesting probe would be: > - Write some value to register 1 - the mask. > - Write 9 to register zero (selects interrupt in service register). > - Read register 0 - should be zero since we aren't in as ISR. > - Read register 1 - should get the mask back. > You can also write 8 to register 0, reads then return the pending interrupts. > Their might be pending interrupts - so that value can't be checked. > > But if reads start returning the last written value you might only > have capacitors on the data bus. What data bus? These things haven't been on a physical parallel bus for ages. > The required initialisation registers are pretty fixed for the PC hardware. > But finding the values requires a bit of work. > > David And you always risk activating new bugs. Since this appears to be a specific platform advertising the wrong answer in firmware, this is better handled as a quirk. -hpa