Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 19 Oct 2001 02:22:29 -0600
From:      Chad David <davidc@acns.ab.ca>
To:        freebsd-current@freebsd.org
Subject:   disk_clone() bug
Message-ID:  <20011019022229.A90892@colnta.internal>

next in thread | raw e-mail | index | archive | help
I posted a bug report and patch in kern/29104 and Dima Dorfman also mentioned
this in July/August, but it still has not been resolved.  The method of
triggering it that I detailed in my bug report no longer seems to work,
but I've managed to create another one.

# mdconfig -a -t swap -s 32m -u 10
# disklabel -r -w md10 auto
# disklabel -e md10e (copy c to e and set type to 4.2BSD)
# ls -l /dev/md10*
crw-r-----  1 root  operator   95, 0x00010052 Oct 19 01:50 /dev/md10
crw-r-----  1 root  operator   95,  82 Oct 19 02:00 /dev/md10c
crw-r-----  1 root  operator   95,  84 Oct 19 01:55 /dev/md10ec
crw-------  1 root  wheel      95, 0xffff00ff Oct 19 01:50 /dev/mdctl

Now if you access (open(2)) md10e the system will kill itself when you
run mdconfig -d.  If I am doing something evil I'd like to know, but either
way the kernel should not enter an endless loop!

I have not had time to determine why disklabel -e md10e will kill it, but
disklabel -e /dev/md10e will not.  I think it has to do with how disklabel
appends the 'c'.

The patch that I provided in 29104 is probably not the correct solution
(I like Dima's default better), and may not even be "fixing" the problem
in the correct place.  Any advice would be very welcome.

-- 
Chad David        davidc@acns.ab.ca
ACNS Inc.         Calgary, Alberta Canada

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




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