make non-exchanging __d_move() copy ->d_parent rather than swap them