Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 30 Dec 2016 19:46:52 +0300
From:      Slawa Olhovchenkov <slw@zxy.spb.ru>
To:        "Andrey V. Elsukov" <ae@FreeBSD.org>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: How to safely remove rest of GTP?
Message-ID:  <20161230164652.GO37118@zxy.spb.ru>
In-Reply-To: <d79b8568-72e8-415e-4923-14e3c730267e@FreeBSD.org>
References:  <20161230124407.GN37118@zxy.spb.ru> <d79b8568-72e8-415e-4923-14e3c730267e@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Dec 30, 2016 at 07:28:19PM +0300, Andrey V. Elsukov wrote:

> On 30.12.2016 15:44, Slawa Olhovchenkov wrote:
> > How to safely remove rest of GPT?
> > Disk have actual data (part of ZFS), I am don't need to destroy this
> > data.
> >
> > GEOM: da6: the primary GPT table is corrupt or invalid.
> > GEOM: da6: using the secondary instead -- recovery strongly advised.
> > GEOM: da22: the primary GPT table is corrupt or invalid.
> > GEOM: da22: using the secondary instead -- recovery strongly advised.
> > GEOM: da6: the primary GPT table is corrupt or invalid.
> > GEOM: da6: using the secondary instead -- recovery strongly advised.
> > GEOM: da22: the primary GPT table is corrupt or invalid.
> > GEOM: da22: using the secondary instead -- recovery strongly advised.
> 
> You may try attached patch, I did only basic tests, so first try 
> somewhere :)

What purpose of this patch?

> -- 
> WBR, Andrey V. Elsukov

> Index: sys/geom/part/g_part_gpt.c
> ===================================================================
> --- sys/geom/part/g_part_gpt.c	(revision 310784)
> +++ sys/geom/part/g_part_gpt.c	(working copy)
> @@ -690,7 +690,8 @@ g_part_gpt_destroy(struct g_part_table *basetable,
>  	 * Wipe the first 2 sectors to clear the partitioning. Wipe the last
>  	 * sector only if it has valid secondary header.
>  	 */
> -	basetable->gpt_smhead |= 3;
> +	if (table->state[GPT_ELT_PRIHDR] == GPT_STATE_OK)
> +		basetable->gpt_smhead |= 3;
>  	if (table->state[GPT_ELT_SECHDR] == GPT_STATE_OK &&
>  	    table->lba[GPT_ELT_SECHDR] == pp->mediasize / pp->sectorsize - 1)
>  		basetable->gpt_smtail |= 1;

> _______________________________________________
> freebsd-hackers@freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-hackers
> To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@freebsd.org"




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20161230164652.GO37118>