Date: Sun, 20 Sep 2020 05:23:16 +0000 (UTC) From: Eugene Grosbein <eugen@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r365920 - stable/12/sys/geom/part Message-ID: <202009200523.08K5NG1B002045@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: eugen Date: Sun Sep 20 05:23:16 2020 New Revision: 365920 URL: https://svnweb.freebsd.org/changeset/base/365920 Log: MFC r365830: make it possible recovering broken GPT after some LBAs cut off If pre-formatted device has GPT and a partition covering last available LBAs and the device is attached using a bridge reducing amount of LBAs, then it could be not enough forcing GEOM to use primary GPT. Also, we should make it possible to recover GPT and this requires either deleting or resizing the partition. This change enables "gpart delete" and "gpart resize" commands on corrupted GPT with following "gpart recover". It still does not allow modifying corrupted GPT without preliminary setting sysctl kern.geom.part.check_integrity=0 Reported by: Alex Korchmar Modified: stable/12/sys/geom/part/g_part.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/geom/part/g_part.c ============================================================================== --- stable/12/sys/geom/part/g_part.c Sat Sep 19 22:48:30 2020 (r365919) +++ stable/12/sys/geom/part/g_part.c Sun Sep 20 05:23:16 2020 (r365920) @@ -1846,7 +1846,8 @@ g_part_ctlreq(struct gctl_req *req, struct g_class *mp table = gpp.gpp_geom->softc; if (table != NULL && table->gpt_corrupt && ctlreq != G_PART_CTL_DESTROY && - ctlreq != G_PART_CTL_RECOVER) { + ctlreq != G_PART_CTL_RECOVER && + geom_part_check_integrity) { gctl_error(req, "%d table '%s' is corrupt", EPERM, gpp.gpp_geom->name); return;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202009200523.08K5NG1B002045>