From: Wesley Sheng <wesley.sheng@microchip.com> To: <kurt.schwemmer@microsemi.com>, <logang@deltatee.com>, <jdmason@kudzu.us>, <dave.jiang@intel.com>, <allenbh@gmail.com>, <linux-pci@vger.kernel.org>, <linux-ntb@googlegroups.com>, <linux-kernel@vger.kernel.org> Cc: <wesleyshenggit@sina.com>, <wesley.sheng@microchip.com>, <kelvin.cao@microchip.com> Subject: [PATCH 0/3] Redundant steps removal and bug fix of ntb_hw_switchtec Date: Mon, 22 Apr 2019 22:42:55 +0800 [thread overview] Message-ID: <1555944178-1957-1-git-send-email-wesley.sheng@microchip.com> (raw) Hi, Everyone, This patch series remove redundant steps and fix one bug of the ntb_hw_switchtec module. When a re-initialization is caused by a link event, the driver will re-setup the shared memory windows. But at that time, the shared memory is still valid, and it's unnecessary to free, reallocate and then initialize it again. Remove these redundant steps. In case of NTB crosslink topology, the setting of shared memory window in the virtual partition doesn't reset on peer's reboot. So skip the re-setup of shared memory window for that case. Switchtec does not support setting multiple MWs simultaneously. However, there's a race condition when a re-initialization is caused by a link event, the driver will re-setup the shared memory window asynchronously and this races with the client setting up its memory windows on the link up event. Fix this by ensure do the entire initialization in a work queue and signal the client once it's done. Regard, Wesley -- Changed since v1: - It's a resend of v1 -- Joey Zhang (2): ntb_hw_switchtec: Remove redundant steps of switchtec_ntb_reinit_peer() function ntb_hw_switchtec: Fix setup MW with failure bug Wesley Sheng (1): ntb_hw_switchtec: Skip unnecessary re-setup of shared memory window for crosslink case drivers/ntb/hw/mscc/ntb_hw_switchtec.c | 80 +++++++++++++++++++++------------- 1 file changed, 49 insertions(+), 31 deletions(-) -- 2.7.4
WARNING: multiple messages have this Message-ID (diff)
From: Wesley Sheng <wesley.sheng@microchip.com> To: kurt.schwemmer@microsemi.com, logang@deltatee.com, jdmason@kudzu.us, dave.jiang@intel.com, allenbh@gmail.com, linux-pci@vger.kernel.org, linux-ntb@googlegroups.com, linux-kernel@vger.kernel.org Cc: wesleyshenggit@sina.com, wesley.sheng@microchip.com, kelvin.cao@microchip.com Subject: [PATCH 0/3] Redundant steps removal and bug fix of ntb_hw_switchtec Date: Mon, 22 Apr 2019 22:42:55 +0800 [thread overview] Message-ID: <1555944178-1957-1-git-send-email-wesley.sheng@microchip.com> (raw) Hi, Everyone, This patch series remove redundant steps and fix one bug of the ntb_hw_switchtec module. When a re-initialization is caused by a link event, the driver will re-setup the shared memory windows. But at that time, the shared memory is still valid, and it's unnecessary to free, reallocate and then initialize it again. Remove these redundant steps. In case of NTB crosslink topology, the setting of shared memory window in the virtual partition doesn't reset on peer's reboot. So skip the re-setup of shared memory window for that case. Switchtec does not support setting multiple MWs simultaneously. However, there's a race condition when a re-initialization is caused by a link event, the driver will re-setup the shared memory window asynchronously and this races with the client setting up its memory windows on the link up event. Fix this by ensure do the entire initialization in a work queue and signal the client once it's done. Regard, Wesley -- Changed since v1: - It's a resend of v1 -- Joey Zhang (2): ntb_hw_switchtec: Remove redundant steps of switchtec_ntb_reinit_peer() function ntb_hw_switchtec: Fix setup MW with failure bug Wesley Sheng (1): ntb_hw_switchtec: Skip unnecessary re-setup of shared memory window for crosslink case drivers/ntb/hw/mscc/ntb_hw_switchtec.c | 80 +++++++++++++++++++++------------- 1 file changed, 49 insertions(+), 31 deletions(-) -- 2.7.4
next reply other threads:[~2019-04-22 6:44 UTC|newest] Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-04-22 14:42 Wesley Sheng [this message] 2019-04-22 14:42 ` [PATCH 0/3] Redundant steps removal and bug fix of ntb_hw_switchtec Wesley Sheng 2019-04-22 14:42 ` [PATCH 1/3] ntb_hw_switchtec: Remove redundant steps of switchtec_ntb_reinit_peer() function Wesley Sheng 2019-04-22 14:42 ` Wesley Sheng 2019-04-22 14:42 ` [PATCH 2/3] ntb_hw_switchtec: Skip unnecessary re-setup of shared memory window for crosslink case Wesley Sheng 2019-04-22 14:42 ` Wesley Sheng 2019-04-22 14:42 ` [PATCH 3/3] ntb_hw_switchtec: Fix setup MW with failure bug Wesley Sheng 2019-04-22 14:42 ` Wesley Sheng -- strict thread matches above, loose matches on Subject: below -- 2019-06-06 7:09 [PATCH 0/3] Redundant steps removal and bug fix of ntb_hw_switchtec Kelvin Cao 2019-06-06 7:09 ` Kelvin Cao 2019-06-13 13:22 ` Jon Mason 2019-04-08 14:45 Wesley Sheng 2019-04-08 14:45 ` Wesley Sheng 2019-04-08 16:00 ` Logan Gunthorpe
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1555944178-1957-1-git-send-email-wesley.sheng@microchip.com \ --to=wesley.sheng@microchip.com \ --cc=allenbh@gmail.com \ --cc=dave.jiang@intel.com \ --cc=jdmason@kudzu.us \ --cc=kelvin.cao@microchip.com \ --cc=kurt.schwemmer@microsemi.com \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-ntb@googlegroups.com \ --cc=linux-pci@vger.kernel.org \ --cc=logang@deltatee.com \ --cc=wesleyshenggit@sina.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.