Subject: Re: ppp/pppoe, still panic 4.15.3 in ppp_push

From: Denys Fedoryshchenko <[email-masked]>
Date: Wed, 14 Feb 2018 18:49:19 +0200

On 2018-02-14 18:47, Guillaume Nault wrote:
> On Wed, Feb 14, 2018 at 06:29:34PM +0200, Denys Fedoryshchenko wrote:
>> On 2018-02-14 18:07, Guillaume Nault wrote:
>> > On Wed, Feb 14, 2018 at 03:17:23PM +0200, Denys Fedoryshchenko wrote:
>> > > Hi,
>> > >
>> > > Upgraded kernel to 4.15.3, still it crashes after while (several
>> > > hours,
>> > > cannot do bisect, as it is production server).
>> > >
>> > > dev ppp # gdb ppp_generic.o
>> > > GNU gdb (Gentoo 7.12.1 vanilla) 7.12.1
>> > > <<skipped>>
>> > > Reading symbols from ppp_generic.o...done.
>> > > (gdb) list *ppp_push+0x73
>> > > 0x681 is in ppp_push (drivers/net/ppp/ppp_generic.c:1663).
>> > > 1658			list = list->next;
>> > > 1659			pch = list_entry(list, struct channel, clist);
>> > > 1660
>> > > 1661			spin_lock(&pch->downl);
>> > > 1662			if (pch->chan) {
>> > > 1663				if (pch->chan->ops->start_xmit(pch->chan, skb))
>> > > 1664					ppp->xmit_pending = NULL;
>> > > 1665			} else {
>> > > 1666				/* channel got unregistered */
>> > > 1667				kfree_skb(skb);
>> > >
>> > >
>> > I expect a memory corruption. Do you have the possibility to run with
>> > KASAN by any chance?
>> I will try to enable it tonight. For now i reverted "drivers, net, 
>> ppp:
>> convert ppp_file.refcnt from atomic_t to refcount_t" for test.
>> 
> This commit looks good to me. Do you have doubts about it because it's
> new in 4.15? Does it mean that your last known-good kernel is 4.14?

I am just doing "manual" bisect, checking all possibilities, and picking 
patch to revert randomly.
Yes, correct, my known-good is 4.14.2.