os/FileStore: do not loop in sync_entry on shutdown

Normally we repeat a sync if the journal is full and asks for it or if we 
have pending sync waiters.  This isn't for correctness: it's to move things 
along quickly.

If we are shutting down *and* the journal is full, however, we currently can
get stuck in a loop where we repeatedly sync.  However, the journal never
gets unfull because we aren't expiring anything.

We tried to fix this in 682b9daacb1960eb60b5f0e9b40d4a3a3e9afd5b but that 
didn't work because we don't tell the journal to stop before we shut down the
filestore sync thread.

I'm pretty sure there is another issue in the journal code as

 full_state == FULL_FULL
submit_manager.op_seq = 14761
apply_manager.committing_seq = 14761
apply_manager.committed_seq = 14761

which seems odd.  But I have no longs.  Meanwhile, this fixes the hang.

Fixes: #9545 Signed-off-by: Sage Weil <sage@redhat.com>
Is "sync_waiters" need to be in this condition? "sync_waiters" always will be cleared according to line:
  again:
    fin.swap(sync_waiters);