On Mon, Dec 04, 2017 at 03:10:20PM -0500, Allen Hubbe <[email protected]> wrote: > From: Serge Semin > > The multi-port NTB API was introduced in kernel 4.13 as well as the > > first driver for the true multi-port devices of IDT PCIe-switches > > series. But the test drivers still were left almost unchanged. Yes, > > they didn't fail being used with new NTB API, but they only worked > > with two-ports NTB devices. This patchset is intended to fix the > > issue, by amending the NTB test drivers and script so they would be > > fully compatible with multi-port NTB API. > > > > Additionally I found a few NTB subsystem issues while developing the > > submitted patches. So they are also fixed in this patchset >
Hello Allen > Thanks for bringing the multiport support to the ntb tools and tests, and > getting it all tested with help of @pallam. I wondered about setting the dma > mask on the ntb device object, and it is better now that you have done that. > In addition to the contact information to the file comments, MODULE_AUTHOR > can also be specified more than once per module. > > As Logan said, some of the renaming was not really necessary and made those > patches more noisy than the needed to be. I am not as much bothered by it, > but it is a valid criticism. > Yeah, I know that. As I already said, it isn't usual of my patches being so complicated. The reason why I made so many small renamings was the code refactoring. I tried to set all the test drivers code up to the same naming convention, so it would be easier for a code reader to study it. Definitely, such the alterations should have been done within a separate patch. But I started refactoring the code and changing the logic for multi-portness all together, so it would be too painful to unpick one from another after the work was done. It especially concerned the ntb_tool and ntb_perf drivers. Next time the procedures will be separately. Sorry for inconvenience and thanks for understanding. > I can't find an earlier comment I thought I had made regarding the changes in > ntb_tool. Maybe it was only on IRC. I think the use of the anonymous unions > tool_mw is confusing. It seems to require the reader to first understand how > local and peer mw setup works, and then see that the anonymous unions are > accessed by the proper member names depending on the situation. In my > review, the use of those members appears to be correct in your code. Since > these drivers are also intended to be example code, I would have preferred > distinct types instead of a common type with anonymous union members. > Distinct types would make type checking by the compiler more effective at > catching improper use, and I think it would make the code more clear in its > use as an example ntb driver. Also, there might be some confusion in the > naming of members "mw", since it might refer to a tool_mw or a tool_mw_wrap, > and the name alone doesn't disclose the type, that requires reading and > understanding the surrounding context in the code. > Oops. We discussed it in the IRC. We agreed to add commentaries around the types definition, so a reader would better understand their purpose. I just forgot to move the change from my repo to the fork of Jon's one. I'll do it and resend the patch. > I am satisfied with these patches. This is important for getting the > multiport support established, and other than some comments about style and > presentation of the patch set, nothing looks obviously wrong. You should > probably also seek Dave's ack on at least ntb_perf. > > Acked-by: Allen Hubbe <[email protected]> > Thanks for your commentary and ack sign. Dave also made a great effort in testing the ntb_perf driver. Especially in helping Ujjal with our remote debugging procedure on the Intel platforms.) Anyway I'll be waiting for his explicit ack under the patches he agrees on. Thanks, -Sergey > > Serge Semin (15): > > NTB: Rename NTB messaging API methods > > NTB: Set dma mask and dma coherent mask to NTB devices > > NTB: Fix UB/bug in ntb_mw_get_align() > > NTB: ntb_pp: Add full multi-port NTB API support > > NTB: ntb_tool: Add full multi-port NTB API support > > NTB: ntb_perf: Add full multi-port NTB API support > > NTB: ntb_test: Safely use paths with whitespace > > NTB: ntb_test: Add ntb_tool port tests > > NTB: ntb_test: Update ntb_tool link tests > > NTB: ntb_test: Update ntb_tool DB tests > > NTB: ntb_test: Update ntb_tool Scratchpad tests > > NTB: ntb_test: Add ntb_tool Message tests > > NTB: ntb_test: Update ntb_tool MW tests > > NTB: ntb_test: Update ntb_perf tests > > NTB: ntb_hw_idt: Set NTB_TOPO_SWITCH topology > > > > drivers/ntb/hw/amd/ntb_hw_amd.c | 4 + > > drivers/ntb/hw/idt/ntb_hw_idt.c | 37 +- > > drivers/ntb/hw/intel/ntb_hw_intel.c | 4 + > > drivers/ntb/ntb.c | 1 - > > drivers/ntb/test/ntb_perf.c | 1826 > > +++++++++++++++++++++---------- > > drivers/ntb/test/ntb_pingpong.c | 450 +++++--- > > drivers/ntb/test/ntb_tool.c | 1805 > > ++++++++++++++++++++---------- > > include/linux/ntb.h | 36 +- > > tools/testing/selftests/ntb/ntb_test.sh | 307 ++++-- > > 9 files changed, 3013 insertions(+), 1457 deletions(-) > > > > -- > > 2.12.0 > > -- > You received this message because you are subscribed to the Google Groups > "linux-ntb" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/linux-ntb/000001d36d3b%24e9f211d0%24bdd63570%24%40dell.com. > For more options, visit https://groups.google.com/d/optout.

