From owner-freebsd-questions@freebsd.org Thu Nov 22 06:41:37 2018 Return-Path: Delivered-To: freebsd-questions@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DFAD5113BBC8 for ; Thu, 22 Nov 2018 06:41:36 +0000 (UTC) (envelope-from matthias@petermann-it.de) Received: from mail.d2ux.org (d2ux.org [148.251.193.221]) by mx1.freebsd.org (Postfix) with ESMTP id 1B2168DF59 for ; Thu, 22 Nov 2018 06:41:35 +0000 (UTC) (envelope-from matthias@petermann-it.de) Received: from mail (unknown [10.0.0.3]) by mail.d2ux.org (Postfix) with ESMTP id F169F6D046; Thu, 22 Nov 2018 07:41:34 +0100 (CET) X-Virus-Scanned: amavisd-new at petermann-it.de Received: from mail.d2ux.org ([10.0.0.3]) by mail (new.petermann-it.de [10.0.0.3]) (amavisd-new, port 10024) with ESMTP id JUKoa1vsQxcY; Thu, 22 Nov 2018 07:41:34 +0100 (CET) Received: from [192.168.2.134] (p5B2F3726.dip0.t-ipconnect.de [91.47.55.38]) by mail.d2ux.org (Postfix) with ESMTPSA id EC2486D03B; Thu, 22 Nov 2018 07:41:33 +0100 (CET) Subject: Re: newfs overwriting gmirror label? From: Matthias Petermann To: freebsd-questions Cc: freebsd@johnea.net References: <5a8aadf8-8aa8-8cbb-61ab-0d9cc4b7e2c1@petermann-it.de> Message-ID: <911910aa-faa4-a081-6483-a45644512839@petermann-it.de> Date: Thu, 22 Nov 2018 07:40:55 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.3.0 MIME-Version: 1.0 In-Reply-To: <5a8aadf8-8aa8-8cbb-61ab-0d9cc4b7e2c1@petermann-it.de> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 1B2168DF59 X-Spamd-Result: default: False [-3.25 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip4:148.251.193.221/32]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[text/plain]; DMARC_NA(0.00)[petermann-it.de]; RCVD_COUNT_THREE(0.00)[4]; TO_MATCH_ENVRCPT_SOME(0.00)[]; MX_GOOD(-0.01)[cached: mail.petermann-it.de]; RCPT_COUNT_TWO(0.00)[2]; NEURAL_HAM_SHORT(-0.94)[-0.943,0]; IP_SCORE(-1.09)[ipnet: 148.251.0.0/16(-2.53), asn: 24940(-2.92), country: DE(-0.01)]; RCVD_NO_TLS_LAST(0.10)[]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; SUBJECT_ENDS_QUESTION(1.00)[]; ASN(0.00)[asn:24940, ipnet:148.251.0.0/16, country:DE]; MID_RHS_MATCH_FROM(0.00)[] X-Rspamd-Server: mx1.freebsd.org X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Nov 2018 06:41:37 -0000 Hello, please ignore this posting. It looks like I did a mistake interpreting the hexdump. I did repeat the exercise and the result was that the gmirror label was not overwritten. Sorry for the confusion! Kind regards, Matthias Am 22.11.2018 um 06:56 schrieb Matthias Petermann: > Hello, > > this is somewhat related to my other post regarding GPT vs. GMIRROR. > Anyway, the following observation can be looked at in an isolated manner. > > I have documented the observation in a step-by-step protocol below. > > If you have some thoughts on this - please reply and let me know. I'd be > very thankful to get this clarified. > > Kind regards, > Matthias > > > > 0) Preface > > There is a gmirror set up, consisting of two components. I am going to > create a hex dump of the last block of one of the components, then fill > up the gmirror with a raw write of "FF" and create another hex dump of > one of the components. Then I will compare the hex dumps. > > 1) Checking gmirror label before manipulation > > 1FFFFDB0 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFDCC 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFDE8 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 47 45 4F 4D  ........................GEOM > 1FFFFE04 3A 3A 4D 49 │ 52 52 4F 52 │ 00 00 00 00 │ 04 00 00 00 │ 74 65 > 73 74 │ 00 01 00 00 │ 00 00 00 00  ::MIRROR........test........ > 1FFFFE20 A0 07 5F E9 │ B0 49 4B F7 │ 73 07 3C A2 │ 02 00 00 00 │ 00 01 > 00 00 │ 00 00 00 10 │ 00 00 02 00  ._IKs.<................ > 1FFFFE3C FE FF 1F 00 │ 00 00 00 00 │ 02 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 40  .........................@ > 1FFFFE58 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 20 00  .......................... . > 1FFFFE74 00 00 00 BE │ 2B CF 02 21 │ 60 DB DE FB │ AB FC D2 03 │ 26 F6 > 64 00 │ 00 00 00 00 │ 00 00 00 00  ...+.!`.&d......... > 1FFFFE90 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFEAC 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFEC8 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFEE4 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFF00 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFF1C 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFF38 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFF54 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFF70 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFF8C 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFFA8 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFFC4 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFFE0 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ...................t.....@ . > > 2) Filling up mirror with "FF" > > root@l-mpe-fbsd:/home/admin # tr '\0' '\377' < /dev/zero > /dev/mirror/test > > 3) Checking gmirror label after manipulation > > 1FFFFDB0 FF FF FF FF │ FF FF FF FF │ FF FF FF FF │ FF FF FF FF │ FF FF > FF FF │ FF FF FF FF │ FF FF FF FF  ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ > 1FFFFDCC FF FF FF FF │ FF FF FF FF │ FF FF FF FF │ FF FF FF FF │ FF FF > FF FF │ FF FF FF FF │ FF FF FF FF  ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ > 1FFFFDE8 FF FF FF FF │ FF FF FF FF │ FF FF FF FF │ FF FF FF FF │ FF FF > FF FF │ FF FF FF FF │ 47 45 4F 4D  ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒GEOM > 1FFFFE04 3A 3A 4D 49 │ 52 52 4F 52 │ 00 F8 FF FF │ 04 00 00 00 │ 74 65 > 73 74 │ 00 AF B4 80 │ FF FF FF FF  ::MIRROR.▒▒▒....test.▒▒.▒▒▒▒ > 1FFFFE20 00 A8 CF 81 │ B0 49 4B F7 │ 73 07 3C A2 │ 02 00 00 00 │ 00 01 > 00 00 │ 00 00 00 10 │ 00 00 02 00  .▒▒.▒IK▒s.<▒................ > 1FFFFE3C FE FF 1F 00 │ 00 00 00 00 │ 02 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 40  ▒▒.........................@ > 1FFFFE58 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 20 00  .......................... . > 1FFFFE74 00 00 00 28 │ 37 37 D5 E2 │ 53 ED 72 2A │ 17 FC 86 3D │ FA 16 > 49 00 │ 00 00 00 00 │ 00 00 00 00  ...(77▒▒S▒r*.▒.=▒.I......... > 1FFFFE90 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFEAC 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFEC8 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFEE4 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFF00 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFF1C 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFF38 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFF54 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFF70 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFF8C 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFFA8 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFFC4 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFFE0 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 00 00 │ 00 00 > 00 00 │ 00 00 00 00 │ 00 00 00 00  ............................ > 1FFFFFFC 00 00 00 00 │                                  .... > > 4) Conclusion > > So this looks like the gmirror label is not protected against low level > writes. Some bytes have been overwritten with "FF". > > So what I still would like to understand - how is it ensured that a > newfs will not touch this area? > > From my understanding, using the -r parameter of newfs could help, but > in none of the examples with gmirror using GPT partitions this is used. > So will the approach ultimately lead into gmirror label corruption (e.g. > once UFS is filled up)? > > -- Matthias Petermann | www.petermann-it.de GnuPG: 0x5C3E6D75 | 5930 86EF 7965 2BBA 6572 C3D7 7B1D A3C3 5C3E 6D75