X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=kernel%2Frelay.c;h=32b0befdcb6a6cba585cb555d9db4a87246d9468;hb=5ce1bbb97bf1e6707102d30499e7feaa1e6a2134;hp=8d13a7855c0808858c20fd01d6decebc08c8eeaa;hpb=170465ee7f5a9a2d0ac71285507e52642e040353;p=~andy%2Flinux diff --git a/kernel/relay.c b/kernel/relay.c index 8d13a7855c0..32b0befdcb6 100644 --- a/kernel/relay.c +++ b/kernel/relay.c @@ -400,7 +400,7 @@ void relay_reset(struct rchan *chan) } mutex_lock(&relay_channels_mutex); - for_each_online_cpu(i) + for_each_possible_cpu(i) if (chan->buf[i]) __relay_reset(chan->buf[i], 0); mutex_unlock(&relay_channels_mutex); @@ -611,10 +611,9 @@ struct rchan *relay_open(const char *base_filename, return chan; free_bufs: - for_each_online_cpu(i) { - if (!chan->buf[i]) - break; - relay_close_buf(chan->buf[i]); + for_each_possible_cpu(i) { + if (chan->buf[i]) + relay_close_buf(chan->buf[i]); } kref_put(&chan->kref, relay_destroy_channel);