On 02/04/17 03:03 PM, Sinan Kaya wrote: > Push the decision all the way to the user. Let them decide whether they > want this feature to work on a root port connected port or under the > switch. Yes, I prefer this too. If other folks agree with that I'd be very happy to go back to user chooses. I think Sagi was the most vocal proponent for kernel chooses at LSF so hopefully he will read this thread and offer some opinion. > I thought the issue was feature didn't work at all with some root ports > or there was some kind of memory corruption issue that you were trying to > avoid with the existing systems. I *think* there are some much older root ports where P2P TLPs don't even get through. But it doesn't really change the situation: in the nvmet case, the user would enable p2pmem and then be unable to connect and thus choose to disable it going forward. Not a big difference from the user seeing bad performance and not choosing to enable it. > I think you should get rid of all pci searching business in your code. Yes, my original proposal was when you configure the nvme target you chose the specific p2pmem device to use. That code had no tie ins to PCI code and could, in theory, work generically with any device and bus. Logan