Date: Sat, 23 Jul 2016 21:39 -0700 From: Peter Wemm <peter@wemm.org> To: svn-src-head@freebsd.org Cc: "Andrey V. Elsukov" <ae@freebsd.org>, src-committers@freebsd.org, svn-src-all@freebsd.org, "re@freebsd.org" <re@freebsd.org> Subject: Re: svn commit: r303019 - head/sys/geom Message-ID: <3277576.dFZ2EGo2Fh@overcee.wemm.org> In-Reply-To: <201607190536.u6J5aLl7015268@repo.freebsd.org> References: <201607190536.u6J5aLl7015268@repo.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --] On Tuesday, July 19, 2016 05:36:21 AM Andrey V. Elsukov wrote: > Author: ae > Date: Tue Jul 19 05:36:21 2016 > New Revision: 303019 > URL: https://svnweb.freebsd.org/changeset/base/303019 > > Log: > Use g_resize_provider() to change the size of GEOM_DISK provider, > when it is being opened. This should fix the possible loss of a resize > event when disk capacity changed. Are you sure about this? We have machines in the freebsd.org cluster that now panic on boot: Trying to mount root from zfs:zroot []... GEOM_PART: da0 was automatically resized. Use `gpart commit da0` to save changes or `gpart undo da0` to revert them. GEOM_PART: integrity check failed (da0, GPT) Fatal trap 12: page fault while in kernel mode cpuid = 1; apic id = 01 fault virtual address = 0x48 fault code = supervisor read data, page not present instruction pointer = 0x20:0xffffffff80740005 stack pointer = 0x28:0xfffffe01f119db10 frame pointer = 0x28:0xfffffe01f119db30 code segment = base 0x0, limit 0xfffff, type 0x1b = DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags = interrupt enabled, resume, IOPL = 0 current process = 13 (g_event) [ thread pid 13 tid 100019 ] Stopped at g_part_resize+0x35: testb $0x8,0x48(%rbx) db> where Tracing pid 13 tid 100019 td 0xfffff8000426fa00 g_part_resize() at g_part_resize+0x35/frame 0xfffffe01f119db30 g_resize_provider_event() at g_resize_provider_event+0xb5/frame 0xfffffe01f119d0 g_run_events() at g_run_events+0x20e/frame 0xfffffe01f119dbb0 .. It is exploding here: g_part_resize(struct g_consumer *cp) { struct g_part_table *table; G_PART_TRACE((G_T_TOPOLOGY, "%s(%s)", __func__, cp->provider->name)); g_topology_assert(); table = cp->geom->softc; if (table->gpt_opened == 0) { ^^^^^^^^^ (table is null) Are you creating events too soon now? At the very least, please reconsider having this MFC'ed without getting to the bottom of it. -- Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com; KI6FJV UTF-8: for when a ' or ... just won\342\200\231t do\342\200\246 [-- Attachment #2 --] -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQEcBAABCAAGBQJXlEZkAAoJEDXWlwnsgJ4EnC0IAK/3ZRLGACt3gTAWLETbIcJe LGiZw4R9UlNZmbhh49q7wXOIfrlgRFyCh13HSm34CyEFglbE6RMAMiDcMaLNO6LD XIqWJ2gmQxiOU8tdcXign4QxWnO1G7gycZDOnwIRzULsqi2cUmXP9zUomlXoBA08 rtMmHJo+vb9CbUNfu92P+aw/XydAN3CLIwLSHKl52wF4wvEgwv8AP34VWf3fjBWp weLMsslc43EjvCSchDZpf+eFWvBtH35r5aUm3Aty2agnUkhpnnKBkJ2eP7gMl2G3 30qAZZS8m+NGz0FR/RHVpYXgj7UhmuNWUjMXkLq1FX4Oy7/3m0MRKTrKEAhZb8g= =48mN -----END PGP SIGNATURE-----
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3277576.dFZ2EGo2Fh>
