ZFS panic: solaris assert: BP_EQUAL(bp, &zio->io_bp_orig)

Xin Li delphij at delphij.net
Fri Apr 11 01:06:12 UTC 2014


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

On 04/10/14 17:57, Garrett Wollman wrote:
> I have a file server that has panic()ed twice today with the 
> following:
> 
> panic: solaris assert: BP_EQUAL(bp, &zio->io_bp_orig), file:
> /usr/src/sys/modules/zfs/../../cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c,
> line: 2955 cpuid = 20 KDB: stack backtrace: db_trace_self_wrapper()
> at db_trace_self_wrapper+0x2a/frame 0xffffff98a38d2900 
> kdb_backtrace() at kdb_backtrace+0x37/frame 0xffffff98a38d29c0 
> panic() at panic+0x1ce/frame 0xffffff98a38d2ac0 assfail() at
> assfail+0x1a/frame 0xffffff98a38d2ad0 zio_done() at
> zio_done+0x120/frame 0xffffff98a38d2b30 zio_execute() at
> zio_execute+0xc3/frame 0xffffff98a38d2b70 taskqueue_run_locked() at
> taskqueue_run_locked+0x74/frame 0xffffff98a38d2bc0 
> taskqueue_thread_loop() at taskqueue_thread_loop+0x46/frame
> 0xffffff98a38d2be0 fork_exit() at fork_exit+0x11f/frame
> 0xffffff98a38d2c30 fork_trampoline() at fork_trampoline+0xe/frame
> 0xffffff98a38d2c30 --- trap 0, rip = 0, rsp = 0xffffff98a38d2cf0,
> rbp = 0 --- Uptime: 11d15h27m51s Automatic reboot in 15 seconds -
> press a key on the console to abort --> Press a key on the console
> to reboot, --> or switch off the system now.
> 
> (It also failed to reboot automatically, as if a character had
> been sent to the console.)
> 
> Anyone have a guess about what's going on here?  I obviously can't 
> keep manually restarting a production file server every 14 hours. 
> Here's the code in question:
> 
> if (bp != NULL) { ASSERT(bp->blk_pad[0] == 0); 
> ASSERT(bp->blk_pad[1] == 0); ASSERT(bcmp(bp, &zio->io_bp_copy,
> sizeof (blkptr_t)) == 0 || (bp == zio_unique_parent(zio)->io_bp)); 
> if (zio->io_type == ZIO_TYPE_WRITE && !BP_IS_HOLE(bp) && 
> zio->io_bp_override == NULL && !(zio->io_flags &
> ZIO_FLAG_IO_REPAIR)) { ASSERT(!BP_SHOULD_BYTESWAP(bp)); 
> ASSERT3U(zio->io_prop.zp_copies, <=, BP_GET_NDVAS(bp)); 
> ASSERT(BP_COUNT_GANG(bp) == 0 || (BP_COUNT_GANG(bp) ==
> BP_GET_NDVAS(bp))); } if (zio->io_flags & ZIO_FLAG_NOPWRITE) 
> VERIFY(BP_EQUAL(bp, &zio->io_bp_orig)); }
> 
> And it just now panicked again.  Help!

Have you tried setting vfs.zfs.nopwrite_enabled=0 in /boot/loader.conf?

Cheers,
- -- 
Xin LI <delphij at delphij.net>    https://www.delphij.net/
FreeBSD - The Power to Serve!           Live free or die
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (FreeBSD)

iQIcBAEBCgAGBQJTR0ACAAoJEJW2GBstM+nsewsP/RqBXgufS6cAv0m9c8EQI0AP
mnBdmIpN2fGNUZM+3vaHf+cRxwLNpgfzZ+6XZGJOPJbMYjT/EQkx7jOpXvmnWSV9
F4RmDMrwzkgmP/ER12mk03HTaXaQTsrHbIPmtzuUfOWBchQONXXDCdVXLN1XIv4u
fkihDDsT/E22Be+3HoW0Z9r3uW4PCAe2td92N4nRMUZR0KRnju2qwOkXWJDN4TYG
Sp/xfAeqpURY8sBHB6cQj/L3Q8zd5DHD72MGLvZk32BOJXfUubTjLI7Zdn15cUci
hiz6XTzINn4ft/C8Y8qqBcrrD3BkMSkufIdBn3m9JmXlDLDdg7vmPomf8tOPIKo7
3SaU8nrt/N6D/CnSjQ09SRX+URyeTWYzkv3kyZIMDnE7XbktF5MZYL5Qm/Tahk7t
7ehpYiwP/OJ3HtiZqmdmupffECM/AYKO5srgr70znuvSxwEEEC6MDsBunrJfymfF
GZiK5OTPGBdLzYOHcTSe2bHofswr514cyTttw0rTekI5Rsp1ycpbQjfiLtT3FUfU
Ymhz8jEHLLLOf4uFGF02C4cJrrkhe/SuNv9LFXZvblswyyvF3U0rSubCUC1W6b+w
dlqYe+HzlM1wEM2+2JYHzC0SdLE/G30lo3Ecu1HDYGPgxmJlw38QzIgnSwNODVhy
dYAfTPyGcOqCr6WeFKtb
=ff1A
-----END PGP SIGNATURE-----


More information about the freebsd-fs mailing list