Bug #2114


hammer volume-add causes panic

Added by mcy almost 11 years ago. Updated almost 3 years ago.

Target version:
Start date:
Due date:
% Done:


Estimated time:



I have troubles trying to add a volume to my HAMMER root filesystem on a fresh
install (DragonFly 2.10.1 i386, on an AMD Athlon 2000+ with 512 MB RAM). Maybe
I'm doing something wrong, but if so I don't see what. I created a new
partition table on the hard drive (ad2) with a DF slice (ad2s1), and a hammer
partition on it (ad2s1d). Then I just run hammer volume-add /dev/ad2s1d /, and
it panics.

If I add the volume to /boot/loader.conf and /etc/fstab, after a reboot I can
see it in hammer volume-list, but hammer info gives exactly the same results
as with only the first volume. hammer volume-del fails (device busy), but I can
safely remove the new volume from loader.conf and fstab (I also tried without
running volume-del, same thing).

It is fully reproducible, with this hard drive and with another one (and if I
remember well, I had the same problem when I played with HAMMER in a KVM
virtual machine some times ago).
The session log below shows how I reproduced the problem (with the same first
drive). It seems that something was initialised, because I had to erase the
beginning of the partition to re-add the volume.

Please tell me if I made a mistake somewhere, and if not what I can do to help
solving the bug. I attached the crash info and core files (I can provide the
full core dump if needed).


16:38 root@vicious ~# fdisk ad2
  • Working on device /dev/ad2 *
    parameters extracted from device are:
    cylinders=24696 heads=256 sectors/track=63 (16128 blks/cyl)

Figures below won't work with BIOS for partitions not in cyl 1
parameters to be used for BIOS calculations are:
cylinders=24696 heads=256 sectors/track=63 (16128 blks/cyl)

Media sector size is 512
Warning: BIOS sector numbering starts with sector 1
Information from DOS bootblock is:
The data for partition 1 is:
sysid 165,(DragonFly/FreeBSD/NetBSD/386BSD)
start 63, size 398297025 (194480 Meg), flag 80 (active)
beg: cyl 0/ head 1/ sector 1;
end: cyl 1023/ head 255/ sector 63
The data for partition 2 is:
The data for partition 3 is:
The data for partition 4 is:
16:39 root@vicious ~# disklabel ad2s1
  1. /dev/ad2s1: #
  2. Informational fields calculated from the above
  3. All byte equivalent offsets must be aligned #
  4. boot space: 1044992 bytes
  5. data space: 199147483 blocks # 194479.96 MB (203927023104 bytes) #
  6. NOTE: If the partition data base looks odd it may be
  7. physically aligned instead of slice-aligned #
    diskid: 076febcf-c669-11e0-bb09-01138f237da1
    boot2 data base: 0x000000001000
    partitions data base: 0x000000100200
    partitions data stop: 0x002f7b0f7000
    backup label: 0x002f7b0f7000
    total size: 0x002f7b0f8200 # 194480.97 MB
    alignment: 4096
    display block size: 1024 # for partition display only
16 partitions:
  1. size offset fstype fsuuid
    d: 199147480 0 HAMMER # 194479.961MB
    d-stor_uuid: 5191beaf-c67a-11e0-9d47-01138f237da1
    16:40 root@vicious ~# hammer volume-add /dev/ad2s1d /
    hammer volume-add ioctl: Inappropriate file type or format
    16:41 root@vicious ~# dd if=/dev/zero of=/dev/ad2s1d bs=1M count=1
    1+0 records in
    1+0 records out
    1048576 bytes transferred in 0.037720 secs (27798965 bytes/sec)
    16:42 root@vicious ~# hammer volume-add /dev/ad2s1d /

An error occurred: 79
panic: hammer_io_set_modlist: duplicate entry
Trace beginning at frame 0xcc2e37a0
panic(ffffffff,c07acd60,c06bfbbc,cc2e37d0,c1cadf30) at panic+0x101
panic(c06bfbbc,c1cadf30,0,c1cadf38,c9d69670) at panic+0x101
hammer_io_modify(cc2e3880,cc2e3814,c0533fbe,c1cadf38,1) at
hammer_modify_volume(cc2e3a30,c1cadf30,c5b88094,4,cc2e3860) at
hammer_ioc_volume_add(cc2e3a30,c9dd44e0,c97ca258,c1d9f950,c1d9f954) at
hammer_ioctl(c9dd44e0,c4306811,c97ca258,1,c7d91ba8) at hammer_ioctl+0xf41
hammer_vop_ioctl(cc2e3a98,c0725d48,c1d80e00,cc1c7498,cc2e3ae8) at
vop_ioctl(c1d80e00,c1db8538,c4306811,c97ca258,1) at vop_ioctl+0x75
vn_ioctl(c7dcf1e8,c4306811,c97ca258,c7d91ba8,cc2e3cf0) at vn_ioctl+0x106
fo_ioctl(c7d91ba8,cc2e3cf0,430,c7dc0000,c7dc0000) at fo_ioctl+0x3c
mapped_ioctl(3,c4306811,bfbff280,0,cc2e3cf0) at mapped_ioctl+0x4ae
sys_ioctl(cc2e3cf0,cc2e3d00,c,c9743158,cc2e3cf0) at sys_ioctl+0x2e
syscall2(cc2e3d40) at syscall2+0x232
Xint0x80_syscall() at Xint0x80_syscall+0x36
Stopped at Debugger+0x3f: movb $0,in_Debugger.4431


core.txt.0.gz (13 KB) core.txt.0.gz mcy, 08/14/2011 08:46 PM
info.0 (501 Bytes) info.0 mcy, 08/14/2011 08:46 PM

Also available in: Atom PDF