Yikes, this rdmavt code is completely fucked up and a very good example why people should not use __user casts or random internal helpers. The right fix is to remove this crap entirely, and if the rdmavt maintainer think that they absolutely need a non-temporal memcpy they need to work to add a core API for it.