Ah. This is definitely a bug. Each web application uses a cache named using the host (i.e. default-host) and context path, which in the case of the ROOT context, contributes nothing - resulting in it attempting to use a parent directory of the location used by other contexts.
Unfortunately, this is going to cause bigger issues that just an annoying log message. If you undeploy the ROOT war, the persisted sessions for all the other contexts will get inadvertently purged.
I can think of at least 1 workaround off the top of my head. It involves adding a new cache configuration (let's call it http-session-local-root) for use by the ROOT context, that uses a unique relative path, specified by <file-store path="..."/>.
You'll then need to specify the cache name in a jboss-web.xml file and deploy it with your application.
The workaround was perfect, thanks!
FYI - the issue is fixed in master.