Não há diferenças, são apenas opções diferentes para o mesmo comportamento. Eles provavelmente vêm de diferentes versões antigas de su
que implementaram uma dessas opções com o mesmo comportamento.
Da página do manual:
-m, -p, --preserve-environment
Preserve the current environment, except for:
$PATH
reset according to the /etc/login.defs options ENV_PATH or
ENV_SUPATH (see below);
$IFS
reset to “<space><tab><newline>”, if it was set.
If the target user has a restricted shell, this option has no
effect (unless su is called by root).