[Drbd-dev] NULL pointer derefernce in 8.4.7-1 during drbd_destroy_connection()

Lars Ellenberg lars.ellenberg at linbit.com
Tue Dec 27 16:54:04 CET 2016


On Sun, Dec 25, 2016 at 11:58:32PM +0800, Feng Sun wrote:
> On Wed, 30 Mar 2016, Lars Ellenberg wrote:
> 
> >* On Wed, Mar 30, 2016 at 02:19:07AM +0000, Eric Wheeler wrote:
> *>* > Hello all,
> *>* >
> *>* > We are getting kernel crashes in linux 4.1.20 with the drbd-8.4.git tree
> *>* > at commit 3a6a769340ef93b1ba2792c6461250790795db49 .
> *>* >
> *>* > I don't see anything in the newer commits that addresses this issue so
> *>* > I'm posting---but I'll try the latest commit in master, too, just in case.
> *>* >
> *>* > Please see the backtrace below.  I also included our global_common.conf
> *>* > further down.  This is protocol A and the link is quite slow.  This NULL
> *>* > ptr dereference appears to show up when the drbd kernel thread is blocked
> *>* > for a long time.  It might happen at reconnect time because the
> BUG didn't
> *>* > show up until 13 seconds after the P_BARRIER error.
> *>* >
> *>* > The problem is pretty reproducable, so I can probably test patches.
> *>* > Please let me know what I can do to help test.
> *> >* DRBD logs of both peers leading up to the incident may be useful.*
> 
> 
> *I have met same issue with 8.4.9, but I cannot reproduce this easily.can

You likely want to apply this:
http://git.linbit.com/drbd-8.4.git/commitdiff/e0645836e870346cafe688cbdd8ec29092f6cdb5

> you help to share about the reproduce steps? *

Provoke:
you need a kernel >= 4.0,
you need to to hit congestion, but have "ko-count" set "high enough",
and DRBD pings on our meta socket need to still "feel" responsive
(ping-timeout is high enough).

It helps if DRBD does not use sendpage, which means you use protocol A,
or have "data-integrity-alg" enabled,
or have explicitly disabled sendpage (drbd module parameter)
or have some file system or other user that keeps submitting slab pages
or other pages with a reference count of zero.

Thanks,

-- 
: Lars Ellenberg
: LINBIT | Keeping the Digital World Running
: DRBD -- Heartbeat -- Corosync -- Pacemaker
: R&D, Integration, Ops, Consulting, Support

DRBD® and LINBIT® are registered trademarks of LINBIT


More information about the drbd-dev mailing list