Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 20 Sep 2020 05:57:23 +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-11@freebsd.org
Subject:   svn commit: r365923 - stable/11/sys/geom/part
Message-ID:  <202009200557.08K5vNle019896@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: eugen
Date: Sun Sep 20 05:57:23 2020
New Revision: 365923
URL: https://svnweb.freebsd.org/changeset/base/365923

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/11/sys/geom/part/g_part.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/geom/part/g_part.c
==============================================================================
--- stable/11/sys/geom/part/g_part.c	Sun Sep 20 05:32:53 2020	(r365922)
+++ stable/11/sys/geom/part/g_part.c	Sun Sep 20 05:57:23 2020	(r365923)
@@ -1816,7 +1816,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?202009200557.08K5vNle019896>