Re: general protection fault in relay_open_buf

From: Greg KH
Date: Fri Feb 01 2019 - 04:07:19 EST


On Fri, Feb 01, 2019 at 03:57:48AM +0000, Al Viro wrote:
> On Thu, Jan 31, 2019 at 11:51:52AM +0100, Greg KH wrote:
> > Can you test the patch below?
> >
> > thanks,
> >
> > greg k-h
> >
>
> > @@ -461,7 +463,7 @@ static struct rchan_buf *relay_open_buf(struct rchan *chan, unsigned int cpu)
> > dentry = chan->cb->create_buf_file(NULL, NULL,
> > S_IRUSR, buf,
> > &chan->is_global);
> > - if (WARN_ON(dentry))
> > + if (IS_ERR_OR_NULL(dentry))
> > goto free_buf;
>
> Huh? That makes no sense; is it IS_ERR on error or is it NULL
> on error, or what?

Some of the fuction pointers seem to do one, some the other. I've
submitted patches to them to unify them now. Will take bit for those to
wind through the merges.

> Besides, how did it work before?

Obviously it never did at all :(

thanks,

greg k-h