The reason ksh wants HISTFILE set for root is that it is deemed impolite to automatically write the history file for a root user. That root user might be trying to repair a file system and writing history to that file system would be unfriendly.