Fixes waserror() memory leak in devwalk

The alloc was being ignored by the compiler.  As far as it was
concerned, at the waserror point (where error jumps back to), there was
no way for alloc to not be 0.  So we never freed the chan wq->clone.

We'll definitely have issues like this in the future.  We need some way
to tell the compiler to forget anything it might have known before a
certain point; otherwise we'll need to drop lots of volatiles around.
Not sure why we need this but plan9 didn't.
1 file changed