gjournal questions and observations

Ross Gohlke ross at grinz.com
Tue Nov 10 13:26:23 UTC 2009


> QUESTIONS
> 3. What is the best way to completely remove a whole disk journal such 
> that re-issuing
> % gjournal label /dev/ad0
> does not require -f?

Blanking the beginning of the drive did the trick.
% dd if=/dev/zero of=/dev/ad0 bs=1m count=600

> 1. What is the best way to journal whole disks whose slices (without 
> partitions) are used by gconcat and gmirror? Does the same apply for 
> gvinum?

% gjournal label /dev/ad0
% gjournal load
   (Don't newfs the journal; wait for concat)
% gconcat load
% gconcat label ports ad0.journals11
% newfs /dev/concat/ports
% mount /dev/concat/ports /mnt/ports
Add new slices to the journal, not the disk.
% gpart add -i 12 ad0.journal

Setting up a gmirrored gconcat did not work. Another guy tried 
gconcatted gmirrors and had a similar result [1]. He was able to fix the 
problem with fsck, which did not work for me:
[1] 
http://docs.freebsd.org/cgi/getmsg.cgi?fetch=0+0+archive/2006/freebsd-geom/20060806.freebsd-geom

This was the result when trying to rsync /usr/ports to /mnt/ports 
(/dev/mirror/ports).
#/var/log/messages
...
Nov  9 17:00:51 rorty kernel: GEOM_CONCAT: Device ports created 
(id=1362796578).
Nov  9 17:00:51 rorty kernel: GEOM_CONCAT: Disk ad0s11 attached to ports.
Nov  9 17:00:51 rorty kernel: GEOM_CONCAT: Device ports activated.
Nov  9 17:00:51 rorty kernel: GEOM_MIRROR: Device ports: provider 
concat/ports marked as inactive, skipping.
Nov  9 17:00:51 rorty kernel: GEOM_MIRROR: Device ports: provider 
ufsid/4af8442b031fbe48 marked as inactive, skipping.
Nov  9 17:00:59 rorty kernel: GEOM_MIRROR: Device mirror/ports launched 
(1/1).
Nov  9 17:01:57 rorty kernel: ad1: TIMEOUT - READ_MUL retrying (1 retry 
left) LBA=116413904
Nov  9 17:02:50 rorty kernel: ad1: TIMEOUT - READ_MUL retrying (1 retry 
left) LBA=115497232
Nov  9 17:02:50 rorty kernel: ad0: TIMEOUT - WRITE_MUL retrying (1 retry 
left) LBA=19936658
Nov  9 17:02:55 rorty kernel: ad1: TIMEOUT - READ_MUL retrying (1 retry 
left) LBA=115498352
Nov  9 17:03:10 rorty kernel: 
g_vfs_done():mirror/ports[WRITE(offset=1073758208, length=2048)]error = 5
Nov  9 17:03:10 rorty kernel: 
g_vfs_done():mirror/ports[WRITE(offset=1073760256, length=2048)]error = 5
Nov  9 17:03:10 rorty kernel: 
g_vfs_done():mirror/ports[WRITE(offset=1073762304, length=2048)]error = 5
Nov  9 17:03:41 rorty kernel: initiate_write_filepage: already started
Nov  9 17:03:41 rorty kernel: 
initiga_tvef_sw_rdiotnee_(f)i:lmeiprargoer:/ paolrrtesa[dWyR 
IsTtEa(rotfefdset
Nov  9 17:03:41 rorty kernel: =1i0n7i3t7i6a2t3e0_4w,r 
ilteen_gftihl=e2p0a4g8e):] earlrroera d=y  5st
Nov  9 17:03:41 rorty kernel: artedg_v
Nov  9 17:03:41 rorty kernel: 
fs_done():mirror/ports[WRITE(offset=1073760256, length=2048)]error = 5
Nov  9 17:03:41 rorty kernel: 
g_vfs_done():mirror/ports[WRITE(offset=1073758208, length=2048)]error = 5
Nov  9 17:03:42 rorty kernel: initiate_write_filepage: already started
Nov  9 17:03:42 rorty kernel: initiate_write_filepage: already started
Nov  9 17:03:42 rorty kernel: initiate_wgr_ivtfes__fdiolneep(a)g:em:i 
rarlorre/apdoyr tsst[aWrRtIeTdE(o
Nov  9 17:03:42 rorty kernel: ffset=1073758208, length=2048)]error = 5
Nov  9 17:03:42 rorty kernel: 
g_vfs_done():mirror/ports[WRITE(offset=1073760256, length=2048)]error = 5
Nov  9 17:03:42 rorty kernel: 
g_vfs_done():mirror/ports[WRITE(offset=1073762304, length=2048)]error = 5
Nov  9 17:04:12 rorty kernel: initiate_write_filepage: already started
Nov  9 17:04:12 rorty kernel: 
ingit_ivaftse__dworniet(e)_:fmiilrerpoarg/ep:o ratlsr[eWaRdIyT 
Es(toafrftseedt=1
Nov  9 17:04:12 rorty kernel: 073i7n6i2t3i0a4t,e 
_lwernigtteh_=fi2l0e4p8a)g]ee:r raolrr e=a d5y
Nov  9 17:04:12 rorty kernel: startge_dvf
Nov  9 17:04:12 rorty kernel: 
s_done():mirror/ports[WRIiTnEi(toifaftsee_tw=ri1t0e7_3f7i6l0e2p5a6g,e :l 
eanlgrteha=d2y0 4s8t)$
Nov  9 17:04:12 rorty kernel: = 5
Nov  9 17:04:12 rorty kernel: g_vfs_done():mirror/ports[WRIT
...

I have ruled out the disk being bad because it works fine with gmirror 
OR gconcat, just not both.

Regards,
Ross


More information about the freebsd-geom mailing list