On Thu, Apr 16, 2020 at 03:40:38PM +0800, Lu Baolu wrote:
description. I'd need to look at the final code, but it seems like
this will still cause bounce buffering instead of using dynamic
mapping, which still seems like an awful idea.
Yes. If the user chooses to use identity domain by default through
kernel command, identity domain will be applied for all devices. For
those devices with limited addressing capability, bounce buffering will
be used when they try to access the memory beyond their address
capability. This won't cause any kernel regression as far as I can see.
Switching domain during runtime with drivers loaded will cause real
problems as I said in the commit message. That's the reason why I am
proposing to remove it. If we want to keep it, we have to make sure that
switching domain for one device should not impact other devices which
share the same domain with it. Furthermore, it's better to implement it
in the generic layer to keep device driver behavior consistent on all
architectures.
I don't disagree with the technical points. What I pointed out is that
a) the actual technical change is not in the commit log, which it
should be
b) that I still think taking away the ability to dynamically map
devices in the identify domain after all the time we allowed for
that is going to cause nasty regressions.