From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754699AbcIAKPv (ORCPT ); Thu, 1 Sep 2016 06:15:51 -0400 Received: from mail-sn1nam01on0071.outbound.protection.outlook.com ([104.47.32.71]:40773 "EHLO NAM01-SN1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1754163AbcIAKPJ (ORCPT ); Thu, 1 Sep 2016 06:15:09 -0400 X-Greylist: delayed 17706 seconds by postgrey-1.27 at vger.kernel.org; Thu, 01 Sep 2016 06:15:09 EDT Authentication-Results: spf=pass (sender IP is 149.199.60.100) smtp.mailfrom=xilinx.com; wanadoo.fr; dkim=none (message not signed) header.d=none;wanadoo.fr; dmarc=bestguesspass action=none header.from=xilinx.com; From: Bharat Kumar Gogada To: , , , , , , , , CC: , , , , Bharat Kumar Gogada Subject: [PATCH 3/6] PCI: Xilinx: Clear correct msi set bit Date: Thu, 1 Sep 2016 15:44:43 +0530 Message-ID: <1472724886-28301-3-git-send-email-bharatku@xilinx.com> X-Mailer: git-send-email 2.1.1 In-Reply-To: <1472724886-28301-1-git-send-email-bharatku@xilinx.com> References: <1472724886-28301-1-git-send-email-bharatku@xilinx.com> X-RCIS-Action: ALLOW X-TM-AS-Product-Ver: IMSS-7.1.0.1224-8.0.0.1202-22548.005 X-TM-AS-User-Approved-Sender: Yes;Yes X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:149.199.60.100;IPV:NLI;CTRY:US;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(7916002)(2980300002)(438002)(189002)(199003)(76176999)(50466002)(46386002)(48376002)(19580405001)(5001770100001)(19580395003)(45336002)(86362001)(626004)(36386004)(50986999)(47776003)(106466001)(63266004)(8936002)(2201001)(5003940100001)(11100500001)(92566002)(103686003)(189998001)(42186005)(33646002)(2906002)(52956003)(107886002)(8676002)(2950100001)(50226002)(90966002)(4326007)(305945005)(7416002)(7846002)(81156014)(356003)(87936001)(4001430100002)(81166006)(229853001)(586003)(5660300001)(36756003)(107986001)(5001870100001);DIR:OUT;SFP:1101;SCL:1;SRVR:CY1PR0201MB1483;H:xsj-pvapsmtpgw02;FPR:;SPF:Pass;PTR:xapps1.xilinx.com,unknown-60-100.xilinx.com;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BL2NAM02FT023;1:Nso4zg7OtvB2Wy/nOLsIy9Rc2S9PaGZ+Sbt7qkQAwwqwp3an5XbxGCMpnm1OxiiEcNnuRVXuSQl+mNCRHA0q/tINY+jSW/7Rl/uLY+UF1f+G99CwuF+IiVsc8d8nZh2cpYNj5Ee7OBAewk1c20qPUeAdAYpthQt+z80h80Ab6ZzM+UPMhRMtnTQW24SCYYGQTAVjnQTbm2zWdFuTX4dwLJOaVdnAGG5+97m0nCOje3sF1+pDvCaKr/hAxVU+cwzJoH+V2o9UKBwrflkZsrdctOifbpVhk83asxKc/xXZm7VIgeiBL2cz8xQ1uXWp8+8JwmIpCyD6WRxV5IOvAsQX37YnC5bHDf0rSe0CpWsopeQ7gNo0PbqnfPDFuQrufjKUUEuodWkdZaliBdiAbJsyvTbYL0uOBq7GbodyxxGlx60Du4x6dki5HSsxGMltfVaBgc36Rt62K40Add14GgBO+odh2l/VCWWoiSyIXr0D6hnQ/bIx82E//mnVoOROKCEiK3PIyfkDnZWYDOMPMba65AsxxgxnSLTcqRmkbJxpv7olOYbfURm7YyPjsb3FTVjWwcNWo8e2yBnUcmuc51+dNNLUa6YZTObOpwtPiSAh68vmm8BRh0LFCV8A50HQwvvoDa9LvyCrRx+AbgNxnwaDAw== MIME-Version: 1.0 Content-Type: text/plain X-MS-Office365-Filtering-Correlation-Id: 8032c48d-15b8-4b82-9443-08d3d250d86e X-Microsoft-Exchange-Diagnostics: 1;CY1PR0201MB1483;2:tBv21bujSE9l6AG50x1htb7OIJWc0LOFweN7u9qzpQrIw+JbIJlKaRUeHdHtf6mZOpLRZScaoWDvwPgws9pHVVfWZfhtwdJG2KyrvJOy4/dpmrbEe+ZHv+TNnmImr8aUuTxhfp6rMuq0FJss9iiu6Yti9W8Raj72NQtT1KTyVMHfGeW2/K8ehWuL1/LOklwq;3:Qz74hwko8+sWpBTc9BUU3eF7kHDwlt70v4M9NN6pffEHs1uxRfmYIqfNhGM73bXYqfSjuXB32UwLlChiyptKbs3VHX2eQljylesB/FsbNWnfBltUVYY6f4uUuam9saxDg6W2VrUk+5Mh2pvtk2kaG48IQvWnWxOtPj6dCvrlRIQtI4c9JJsRwGiPHXCul4eDR610nq+knpxPAkgZHvMWlrz+XcXZYcX4j6MEIPXDJD7C+elLKO91WrfQFg4BT40uONF/Ey2PvNhymjm3QVa43g== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(8251501002);SRVR:CY1PR0201MB1483; X-Microsoft-Exchange-Diagnostics: 1;CY1PR0201MB1483;25:0PkwO0e9SzScN5fHNpi3D5+/r0Nv7w5u9SsfqXjhxK9Y0KQ6BezXBpHkJ1ERDk2ohqI5zq1+Hel9ig4AfiWkBELKwir34gTKczlMg15+dZtGoj0XAwsFooIaBU2dNWOgxCeUu0zi70vs/Hjv9A2hB2N1WToN22FK34LCTJG6XQ7jYuen82b2w88G0kUBivMPiZnjwjqjvgpgdgHwtlclTZexgnXpYdXgQ6aAykel6IwJRlbEdPK1C6GpoyTQR0k+LHTSuWdVFSqc7xHG3vwznKFAXiwr8mJUZGx9gFG9y5DTvVd8DwP6NREZrxC68KzRlU4DK299As03ojKSuww9SzTKmKZ2kC4yiMI3HOqn9dQCA4zJ7Ko2xunl80ZNVkGzFwu5IR+sB4ZkD7dR1Ky2zMY4mlF/jvnFriV34xqOAKmKLCaUKq2OXBkrVDkP33+4VzITqUWMkhzjztTZAKZ1v1G0tdbyt+IvSGPu6/emL/8Dp95YQls+pUAm6Wb2+4TQpdoo5VkcdVk1S14kIAooQFM4EFuzKgk2P7dj9irw3RUf438L8r3BbF257QSWwk24o9cX/xUWxRQLvNIIdJNGt0/WpT+ASCb1rXMGUbI4OomAb3VlXvEmqkb85B1VPDWbz5/l68D4p26u0r+zgeuF0DwlR4bnNUXYSI6j8DoN60rTgNHb9LIRNO/D5PrE9s805sNd/7pdzJjsb3hp0FkIOlplwpaglujXqqyc4GZYnlfzSyAps/mOBVZ9AfS6ncMaG5cGtJn2LgAl639GmvrobEWKkiBUGVDfUCZEs+s7jNM= X-Microsoft-Exchange-Diagnostics: 1;CY1PR0201MB1483;31:MX92k8JqnnUk6NkRZmd/NEx/SgTUQurjV9IHzBkizAHKpruQH/bnkStBLLeDosGlLs4Z13Rb5RnGuyVRBmw52naklcXDbcvJqt0uvPxSpQd2Y067KbwOIGchRciptnj++/rZ5xyq3GB6m8HYDzzTzl6oMBgc2o8dMPPho6TuW5JaHHl4UP0wwcqVNk56m8WfXm2uO3yQfi8eTuS7EvVMGFybGUifjKg6KWE621Xbhk8=;20:uap7cLkv/WRxo5552L5EWcz+Bje08VoTphiispqDBLmlleZ4F3gGcBXsCaEN28hn/0yifstE1cNO1f1RaRy0+NAmWoGO/RTmCPWnXmrjikenn5+LM8V5tqs8qkr4nR5m50xFnH9rsigchhnqJ+HikF4SJmtStZ/PPveLSYw12Z0DbBzDUa5jp36KhGNg+hKglTgd9bX4c1XvPD7iZaDwyiLPPvJP+764XJZExlpljzPHQxfIOunZIvIEvg9wD+6yJ7ZUzw7TYilbNwuXldSJ+LQPYE23uqg9099U76bZsuPTKvX6sEzrI4xIBiMsS1IiQY39hQTi/Hpm8z8XX8456+5YHTJJGnpNtaYO4ang8SO6wWHtWMnhR9lHEC6UhZ+/Ky0bavih/JoDXHMjmj2Aup9KDFXLXlA9k/4qjeFkO2pCK9qe7fBh/R7ny1YjOzv79aXmSTZYc7CAO2sCYbc2D4WgwpnwxY1TURI3ciPmcPuLqrSpu7WiYQWPfeqfbdMx X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(192813158149592); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040176)(601004)(2401047)(8121501046)(5005006)(13017025)(13015025)(13023025)(13024025)(13018025)(3002001)(10201501046)(6055026);SRVR:CY1PR0201MB1483;BCL:0;PCL:0;RULEID:;SRVR:CY1PR0201MB1483; X-Microsoft-Exchange-Diagnostics: 1;CY1PR0201MB1483;4:OuD3AmCxUJGhCddxB2Y3FTus36HYazsa8LfyyOmfNOPc/0duw5Jjhwa+7VFyEuCOidUPCxALRWfjipVlJ9xme0ridGGPFLiy5a4F7QiyMHk4bdeTeYmAdrBh97immFl1xQMvHMWWpaPfddqkcCCyZ0tSAHu3gMUM5rz0n9YEVlSKoMS52ADrmRWOCCoBZpPTP5XorLvurb3VxEGwLCOvn5DCDZYQ2530L+BM7A6K0hd4Psxcl8cfp1BtBjmAZy64XebCE5MqP0cXxfD2yWlq1KqSRu6RhwB65zfzx+WGtToNrW/GvSV89T10M47MaukRkTBQyzkVsBymF5u9GpT8MOMTRLdZhdd70zSYdB5dGUFC2OKODr7RtlSlX4vtPk7wEUhFu8hn2+498V5WUjSNHsQ2MYxs76UjdjfXOEi7R2NPiLOT2I4o5xWoBFQHtysj1DCmq5uytmkThwjFUTDFQh0aIjB351ZxgjbIIT+udYypnlAiOJ+r1RWwuKpmRXQngCLdT6OQU9SjqK3Bv2XahQ9rehEM3BKYNr3SN6BlXNs= X-Forefront-PRVS: 0052308DC6 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;CY1PR0201MB1483;23:tKA4Sdn6krYXHJp9E1PWHna7xfY56QYJ8U/ymYx?= =?us-ascii?Q?yd+W0e8lHWLXYCCjnZhi2YqX4fsWBda9zrXqrl+i4iW9LuPZZqFRgZ7PeKga?= =?us-ascii?Q?oeDif0nLCofHI79Na/GcQSbjaU7hzvmi59AePBT1pAkPIt37viibRAezyLbt?= =?us-ascii?Q?ASdBj04HLxvxQ9ukmCYP1PjKK7cdg6legN821NQmEmsBdFnr/VcZZmettm/5?= =?us-ascii?Q?1zRGh+HhLML0xlCjRWF0Yqy0LqsgAc0OcLHelBW9FT3yai+raYWnqDeMHvSC?= =?us-ascii?Q?rjEZZBOt9Pb0dg+jFsCHKp7SfkXWqHInn2m9F5Mp+qNJ2d5wRRAxLxEqQN8M?= =?us-ascii?Q?FPwiatkUFvLSjk+BoYQuQ+rH5iBR3++7/3KrIQ/0/z64kq3qeKl4TuZVKTNL?= =?us-ascii?Q?8EuVExC+58fyeWFAd+wRXStB8ALH1f6n0ctg5QPnuXUavHZzCnqBSLX5FrVP?= =?us-ascii?Q?xOq0uoxSvatNoq0YKMyXtCi9rst/9wmhxT+bTtvVtb3113Ld2eEVI9rHNjQB?= =?us-ascii?Q?AYGfV+2M7iFl33XhuRWUF+SgREx03HOSdLnMNY8Wuuv6Ky93ZSiiPAz7YlU5?= =?us-ascii?Q?08m2czfmIb0k3ZqRExkbKkHvHjpXIgriLvJ06Pw4zlutimJ7W/7bGmYH6okM?= =?us-ascii?Q?OKLJczdLEEvSN+qqugMXELo/dj0Q8zduvpxC2iAjsm2KkmEVWYGe7KHYjwE+?= =?us-ascii?Q?fDiVyGbhhITnXMg+wOqugiUjeqOe+gZT7zZ9ASLIJmITutGTatgUSXiEcji1?= =?us-ascii?Q?CzAF4OneAgsPhi8NJEw6Qd2QGm0fO2XNosv8bCwPz5JneH9ocPDWx2vglrk7?= =?us-ascii?Q?xmNg2RkJFEeILDzxlCCm0Z8JjOKazhdKMT+y/XKeDvC6vD4FSbWqyD/+K4dx?= =?us-ascii?Q?p2eA52EJjzMzvjtGm/mVGw4/TvfdmM7xc7fCdB7qMeMkEAO6Aq63pL/GIThs?= =?us-ascii?Q?0+5YPvr6NjLPj2GLRE7aCBeQ6Yogkq1CaLQLAO+G9S6JjC/Zii0UhcaXh9vX?= =?us-ascii?Q?KO5eUgY/pKPaZCDTde2uCcYHIps6vDKxDtdpeG3D5k2P/u6GEm0Ro8nb5bjm?= =?us-ascii?Q?mpycqCbimI3cVusTcCnhcZ91ZAcZy5+cBCefO6HA0znIGEKo6okyf4/G52tp?= =?us-ascii?Q?xoBYPGBOLoIGL1RiuLEj3/OZHCD/1w0A5guA9eT8rJDh7IaMQ5wVK9lP6CfX?= =?us-ascii?Q?k/dd/KJGtpy+yAJuEK75U/W8TW9VVpQdYx2F4ZerB0ZhOVqMkADPJz0o4j7x?= =?us-ascii?Q?sJOdN+A0vHiHscn8+aOxWKOJ/1RwoxoqN6tnJ0wap?= X-Microsoft-Exchange-Diagnostics: 1;CY1PR0201MB1483;6:3XnAupRfSZnniobBjxn+qLsHozEL2713rVBEP9A46H/8G50qKZhj9AAuP8OxgV4ROau7AxpC315anGawsAvNg1wC0iPHMWm0yW43NoZJvsFVmhlt+FdAg3kyOcu8UXlSHUBl6jaGrFQ5asGxLDqndjyKHhS9BCTqsttbPGTo3FpQ2CgK8bcqzxovdpecs2zTZ0uT0Lgf3Vt+5f3xUlz2hTzIqrD3Ck62Y78ZQHwqtD0rDR2OoiUbSbxwe0zFfLc5cLmPlXUse/mUuZ52o68NO1vaTASSNSFarleutGy8iPEKPfN42o/Cynx99mxlwpMk9Hr1CgWbcJlKqWZL/n+SfQ==;5:tnWie/CesdZlyID6Wni2H/p5DEjIAChOqxkIKC8U4q3KkAdVX6aWfvbI4s1a97o6vljLFt0hnyp5dObwuDO/PggWg2g/HJR8WtJXkUTop7OY7cbMT41HcjK5ZHahto2CCYqAKLToeJ6O761wI9fdzA==;24:A7ICZ296O2+uLaSsv4c2xVDXUPIKH2CDJwGs0mS9iYzx9kOXyGdUDZHiOUQOdL2HdkH4o4b5LbSI2DFmzOg+3jnTJWzZacX479W0dxtfYSs=;7:XoLT5ZHO51vSBvScYlLPHUKB8pRbwmU9pNYBQM9E7zZLNv81YKz4ke6KsfuuFV4EX5C9Mi/4ObADrseKOHu6U4ax/WHmt8XBZfsWi2wc/HiXe0/M1sbYxld47HjFAaA1DhJR57bEFcmHLBgtf1x3+FvwdHbMe8a7nyEfoBRqZxgXKBCDQ2z+zhXN3ln83gdflLtWpH225f3iiYruLAgvbElE7t9rGXSNHSsO0kVonZXakPM8V8X2IdiTKyvGJbAU SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: xilinx.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2016 10:15:05.7839 (UTC) X-MS-Exchange-CrossTenant-Id: 657af505-d5df-48d0-8300-c31994686c5c X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=657af505-d5df-48d0-8300-c31994686c5c;Ip=[149.199.60.100];Helo=[xsj-pvapsmtpgw02] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR0201MB1483 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Kernel provides virtual irq number at teardown. Get hwirq number from virtual irq and clear correct MSI set bit. Signed-off-by: Bharat Kumar Gogada --- drivers/pci/host/pcie-xilinx.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/pci/host/pcie-xilinx.c b/drivers/pci/host/pcie-xilinx.c index de1c758..ec2844a 100644 --- a/drivers/pci/host/pcie-xilinx.c +++ b/drivers/pci/host/pcie-xilinx.c @@ -221,13 +221,15 @@ static void xilinx_pcie_destroy_msi(unsigned int irq) { struct msi_desc *msi; struct xilinx_pcie_port *port; + struct irq_data *d = irq_get_irq_data(irq); + irq_hw_number_t hwirq = irqd_to_hwirq(d); - if (!test_bit(irq, msi_irq_in_use)) { + if (!test_bit(hwirq, msi_irq_in_use)) { msi = irq_get_msi_desc(irq); port = msi_desc_to_pci_sysdata(msi); dev_err(port->dev, "Trying to free unused MSI#%d\n", irq); } else { - clear_bit(irq, msi_irq_in_use); + clear_bit(hwirq, msi_irq_in_use); } } -- 2.1.1