The answer to this one, btw, is to use the SEEK event to seek to the current location.  This does all the flushing and makes all of the gstreamer internals happy.  Trying to flush manually got the filesrc component into an unhappy state.