A ring counter wants a particular initial load-value or
you can get spurious states especially in very long
ones. I'd recommend using FFs with both set and clear,
tying (say) all but bit 0 resets to a common reset and
the sets inactive, and bit 0 opposite (getting a single
marching-one) or doing this by using N-1 reset-only
'flops and one set-only (this ought to give you better
results when you get to the fault-coverage design
analysis, where tied-off inputs are "untestable").
What you don't want, is multiple "ones" marching so
sparsely that the feedback logic (if any) doesn't
"see" how filthy the pipe is and can't correct it back
to whatever the desired "load" is.
You could also do this without set or reset, using a
data mux scheme. This could make your reset synchronous
(generally a good idea) and ensure that the ring is always
loaded back to initial on count=0 edge (reset being now
a second term in the feedback event).