From patchwork Mon Aug 21 22:28:09 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hauke Mehrtens X-Patchwork-Id: 9913903 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 81505603FA for ; Mon, 21 Aug 2017 22:28:49 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 61C12286AA for ; Mon, 21 Aug 2017 22:28:49 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 56995286B8; Mon, 21 Aug 2017 22:28:49 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=2.0 tests=BAYES_00,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 0E71A286AA for ; Mon, 21 Aug 2017 22:28:49 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754417AbdHUW2s (ORCPT ); Mon, 21 Aug 2017 18:28:48 -0400 Received: from mx1.mailbox.org ([80.241.60.212]:48937 "EHLO mx1.mailbox.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754383AbdHUW2r (ORCPT ); Mon, 21 Aug 2017 18:28:47 -0400 Received: from smtp1.mailbox.org (smtp1.mailbox.org [80.241.60.240]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.mailbox.org (Postfix) with ESMTPS id 5310442524; Tue, 22 Aug 2017 00:28:46 +0200 (CEST) X-Virus-Scanned: amavisd-new at heinlein-support.de Received: from smtp1.mailbox.org ([80.241.60.240]) by spamfilter02.heinlein-hosting.de (spamfilter02.heinlein-hosting.de [80.241.56.116]) (amavisd-new, port 10030) with ESMTP id khH0lUi04Y5c; Tue, 22 Aug 2017 00:28:44 +0200 (CEST) From: Hauke Mehrtens To: johannes@sipsolutions.net Cc: backports@vger.kernel.org, Hauke Mehrtens Subject: [PATCH 13/21] patch: Allow usage of pci_error_handlers->reset_notify Date: Tue, 22 Aug 2017 00:28:09 +0200 Message-Id: <20170821222817.17376-14-hauke@hauke-m.de> In-Reply-To: <20170821222817.17376-1-hauke@hauke-m.de> References: <20170821222817.17376-1-hauke@hauke-m.de> Sender: backports-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: backports@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP The member reset_notify in the struct pci_error_handlers was divided into reset_prepare and reset_done in upstream commit 775755ed3c65fb ("PCI: Split ->reset_notify() method into ->reset_prepare() and ->reset_done()"). Make new code also work with old kernel versions. Signed-off-by: Hauke Mehrtens --- patches/0082-pci_error_handlers.cocci | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 patches/0082-pci_error_handlers.cocci diff --git a/patches/0082-pci_error_handlers.cocci b/patches/0082-pci_error_handlers.cocci new file mode 100644 index 00000000..9b5573d4 --- /dev/null +++ b/patches/0082-pci_error_handlers.cocci @@ -0,0 +1,32 @@ +@r@ +identifier OPS; +identifier pcie_reset_prepare_fn; +identifier pcie_reset_done_fn; +fresh identifier pcie_reset_notify_fn = pcie_reset_prepare_fn ## "_notify"; +position p; +@@ +struct pci_error_handlers OPS@p = { ++#if LINUX_VERSION_IS_GEQ(4,13,0) + .reset_prepare = pcie_reset_prepare_fn, + .reset_done = pcie_reset_done_fn, ++#else ++ .reset_notify = pcie_reset_notify_fn, ++#endif +}; + + +@@ +identifier r.pcie_reset_prepare_fn; +identifier r.pcie_reset_done_fn; +identifier r.pcie_reset_notify_fn; +@@ +void pcie_reset_done_fn(...) {...} ++#if LINUX_VERSION_IS_LESS(4,13,0) ++static void pcie_reset_notify_fn(struct pci_dev *dev, bool prepare) ++{ ++ if (prepare) ++ pcie_reset_prepare_fn(dev); ++ else ++ pcie_reset_done_fn(dev); ++} ++#endif