From patchwork Mon Apr 28 08:09:17 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Thomas Schwinge X-Patchwork-Id: 4090161 Return-Path: X-Original-To: patchwork-dri-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork1.web.kernel.org (Postfix) with ESMTP id 5DFE59F39D for ; Wed, 30 Apr 2014 01:28:51 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 9213A20260 for ; Wed, 30 Apr 2014 01:28:50 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.kernel.org (Postfix) with ESMTP id 706EA2022D for ; Wed, 30 Apr 2014 01:28:49 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id E5B2F6EB29; Tue, 29 Apr 2014 18:28:46 -0700 (PDT) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org X-Greylist: delayed 324 seconds by postgrey-1.34 at gabe; Mon, 28 Apr 2014 01:09:24 PDT Received: from relay1.mentorg.com (relay1.mentorg.com [192.94.38.131]) by gabe.freedesktop.org (Postfix) with ESMTP id 8DB086E7BA for ; Mon, 28 Apr 2014 01:09:24 -0700 (PDT) Received: from svr-orw-exc-10.mgc.mentorg.com ([147.34.98.58]) by relay1.mentorg.com with esmtp id 1Wegct-00075D-P3 from Thomas_Schwinge@mentor.com ; Mon, 28 Apr 2014 01:09:23 -0700 Received: from SVR-IES-FEM-02.mgc.mentorg.com ([137.202.0.106]) by SVR-ORW-EXC-10.mgc.mentorg.com with Microsoft SMTPSVC(6.0.3790.4675); Mon, 28 Apr 2014 01:09:23 -0700 Received: from feldtkeller.schwinge.homeip.net (137.202.0.76) by SVR-IES-FEM-02.mgc.mentorg.com (137.202.0.106) with Microsoft SMTP Server id 14.2.247.3; Mon, 28 Apr 2014 09:09:21 +0100 From: Thomas Schwinge To: Jerome Glisse Subject: Re: radeon: screen garbled after page allocator change, was: Re: [patch v2 3/3] mm: page_alloc: fair zone allocator policy In-Reply-To: <20140427195527.GC9315@gmail.com> References: <1375457846-21521-1-git-send-email-hannes@cmpxchg.org> <1375457846-21521-4-git-send-email-hannes@cmpxchg.org> <87r45fajun.fsf@schwinge.name> <20140424133722.GD4107@cmpxchg.org> <20140427033110.GA15091@gmail.com> <20140427195527.GC9315@gmail.com> User-Agent: Notmuch/0.9-101-g81dad07 (http://notmuchmail.org) Emacs/23.4.1 (x86_64-pc-linux-gnu) Date: Mon, 28 Apr 2014 10:09:17 +0200 Message-ID: <87ppk1q3iq.fsf@schwinge.name> MIME-Version: 1.0 X-OriginalArrivalTime: 28 Apr 2014 08:09:23.0524 (UTC) FILETIME=[2A4DB040:01CF62B9] X-Mailman-Approved-At: Tue, 29 Apr 2014 18:28:30 -0700 Cc: Andrea Arcangeli , Zlatko Calusic , Rik van Riel , linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-mm@kvack.org, Minchan Kim , Mel Gorman , Johannes Weiner , Bjorn Helgaas , Alex Deucher , Andrew Morton , Christian =?utf-8?Q?K=C3=B6nig?= X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Spam-Status: No, score=-4.8 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Hi! On Sun, 27 Apr 2014 15:55:29 -0400, Jerome Glisse wrote: > If my ugly patch works does this quirk also work ? Unfortunately they both don't; see my other email, . Also, the quirk patch resulted in a NULL pointer dereference in pci_find_ht_capability+0x4/0x30, which I hacked around as follows: If needed, I can try to capture more data, but someone who has knowledge of PCI bus architecture and Linux kernel code (so, not me), might probably already see what's wrong. Grüße, Thomas diff --git drivers/pci/quirks.c drivers/pci/quirks.c index f025867..33aaad2 100644 --- drivers/pci/quirks.c +++ drivers/pci/quirks.c @@ -2452,6 +2452,8 @@ u64 pci_ht_quirk_dma_32bit_only(struct pci_dev *dev, u64 mask) struct pci_dev *bridge = bus->self; int pos; + if (!bridge) + goto skip; pos = pci_find_ht_capability(bridge, HT_CAPTYPE_SLAVE); if (pos) { int ctrl_off; @@ -2472,6 +2474,7 @@ u64 pci_ht_quirk_dma_32bit_only(struct pci_dev *dev, u64 mask) return 0xffffffff; } } + skip: bus = bus->parent; } while (bus); return mask;