NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/52147: deadlock when booting from USB disk



The following reply was made to PR kern/52147; it has been noted by GNATS.

From: mlelstv%serpens.de@localhost (Michael van Elst)
To: gnats-bugs%netbsd.org@localhost
Cc: 
Subject: Re: kern/52147: deadlock when booting from USB disk
Date: Wed, 12 Apr 2017 05:25:52 +0000 (UTC)

 christos%astron.com@localhost (Christos Zoulas) writes:
 
 >>There needs to be some notion of "module load path is unavailable" so
 >>that autoloading a module doesn't happen when this would cause a
 >>deadlock. I think scsipi is the only such place for now. A quick
 >>solution is to just load scsiverbose unconditionally instead of
 >>on-demand.
 
 >Can you print the deadlock path? Or instructions how to reproduce it?
 
 This here happened on RPI with root on an a USB drive and filesystems
 using WAPBL. The deadlock occurs shortly after starting userland
 when a journal is played back (e.g. when root is remounted).
 
 This could happen on all archs with SCSI disks.
 
 The journal play back triggered a SCSI error (bad MODE SENSE) which triggers
 a scsiverbose message which triggers the autoload but which cannot access
 the sd device because REQUEST SENSE processing has the periph frozen.
 Also, the message is printed synchronously in the completion thread, so
 even when you offload the module loading, no other error on the same scsi
 bus could be processed.
 
 A workaround was to put scsiverbose into /etc/modules.conf which is
 done while root is still read-only.
 
 -- 
 -- 
                                 Michael van Elst
 Internet: mlelstv%serpens.de@localhost
                                 "A potential Snark may lurk in every tree."
 


Home | Main Index | Thread Index | Old Index