Don't run io on an fd when it's busy with async

This fixes Valhalla Knights 1, which goes in game and is probably playable now.

Could fix others, although what the game was doing was weird, it was looping an sceIoLseekAsync() and sceIoPollAsync(), and so we were restarting the lseek over and over and never finishing.

Anyway, also noticed while testing this that "   ms0:/testfile.txt" opened totally fine.  Dunno if any game is crazy enough to do that but maybe there's a reason it works...

This has the chance of breaking things in games (since it denies io actions entirely while async is pending), but I tested several without issue.

-[Unknown]