From owner-freebsd-gnome@FreeBSD.ORG Tue Feb 16 17:37:02 2010 Return-Path: Delivered-To: gnome@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3AFFC106568F for ; Tue, 16 Feb 2010 17:37:02 +0000 (UTC) (envelope-from oberman@es.net) Received: from mailgw.es.net (mail3.es.net [IPv6:2001:400:4c01::2]) by mx1.freebsd.org (Postfix) with ESMTP id 097E28FC08 for ; Tue, 16 Feb 2010 17:37:02 +0000 (UTC) Received: from ptavv.es.net (ptavv.es.net [IPv6:2001:400:910::29]) by mailgw.es.net (8.14.3/8.14.3) with ESMTP id o1GHaw1D011428 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Tue, 16 Feb 2010 09:36:59 -0800 Received: from ptavv.es.net (localhost [127.0.0.1]) by ptavv.es.net (Tachyon Server) with ESMTP id AE7821CC09; Tue, 16 Feb 2010 09:36:58 -0800 (PST) To: Joe Marcus Clarke In-reply-to: Your message of "Tue, 16 Feb 2010 02:04:02 EST." <1266303842.9582.21.camel@shumai.marcuscom.com> Date: Tue, 16 Feb 2010 09:36:58 -0800 From: "Kevin Oberman" Message-Id: <20100216173658.AE7821CC09@ptavv.es.net> X-Proofpoint-Virus-Version: vendor=fsecure engine=1.12.8161:2.4.5, 1.2.40, 4.0.166 definitions=2010-02-16_08:2010-02-06, 2010-02-16, 2010-02-16 signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 ipscore=0 phishscore=0 bulkscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx engine=5.0.0-0908210000 definitions=main-1002160126 Cc: gnome@freebsd.org Subject: Re: Problems with gnome-mount and UFS volumes X-BeenThere: freebsd-gnome@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: GNOME for FreeBSD -- porting and maintaining List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Feb 2010 17:37:02 -0000 > From: Joe Marcus Clarke > Date: Tue, 16 Feb 2010 02:04:02 -0500 > > On Mon, 2010-02-08 at 15:56 -0800, Kevin Oberman wrote: > > I use a UFS formatted USB disk for my VirtualBox container. When I plug > > it in, gnome-mount mounts it fine, but I can never unmount it. It > > unmounts fine, but remounts again immediately. No errors (and I would not > > expect any). I remember when this was a problem for MSDOSFS disks, but > > some magic was done to prevent this. It does not seem to work for UFS, > > though. > > > > Is there a reasonable way to prevent this from happening? I'd really like > > t be able to unplug this disk when I shut down the VirtualBox container. > > > > Running the latest versions of all of the gnome ports and hald. > > > > I would normally attach lshal output, but, since everything runs cleanly > > and without error, I don't know that it is needed. If so, let me know. > > How is the device remounted? That is, when the device gets remounted, > what does the output of mount(8) look like? Here is the sequence of events I see: 1. Plug in disk 2. HAL reports the error "org.freedesktop.Hal.UnknownError. An unknown error occurred" I get two pop-ups with this, si I assume it is failing twice. 2a. The device is mounted. (I assume this is a problem with trying to mount the multiple different instances of the device in /dev, /dev/ufs, and /dev/ufsid). 3. mount(8) shows: /dev/ufs/WindowsVBd on /media/WindowsVB (ufs, local,nosuid, soft-updates) 4. Request umount of device 5. Device unmounts correctly 6. Device immediately re-mounts as in 2 and 2a, including errors 7. mount now shows: /dev/ufs/WindowsVBd on /media/WindowsVB_ (ufs, local, nosuid, soft-updates) The only difference is the '_' added to the mount point as the prior mount point was not deleted when the disk was unmounted. The things I wonder about is confusion due to the three /dev entries, two of which start with '/dev/ufs' and the 'd' appended to the /dev/ufs name due to the fact that it is the 'd' partition of the slice. Here are the relevant entries from lshal: udi = '/org/freedesktop/Hal/devices/storage_model_MK4019GAX' block.device = '/dev/da1' (string) block.freebsd.cam_path = '3,0,0' (string) block.is_volume = false (bool) block.major = 0 (0x0) (int) block.minor = 152 (0x98) (int) block.storage_device = '/org/freedesktop/Hal/devices/storage_model_MK4019GAX' (string) freebsd.device_file = '/dev/da1' (string) freebsd.driver = 'da' (string) freebsd.unit = 1 (0x1) (int) info.capabilities = {'block', 'storage'} (string list) info.category = 'storage' (string) info.parent = '/org/freedesktop/Hal/devices/usb_device_4b4_6830_DEF10A1E481F_if0_scsi_host_scsi_device_lun0' (string) info.product = 'MK4019GAX' (string) info.subsystem = 'block' (string) info.udi = '/org/freedesktop/Hal/devices/storage_model_MK4019GAX' (string) info.vendor = 'TOSHIBA' (string) storage.automount_enabled_hint = true (bool) storage.bus = 'usb' (string) storage.drive_type = 'disk' (string) storage.firmware_revision = '0000' (string) storage.hotpluggable = true (bool) storage.lun = 0 (0x0) (int) storage.media_check_enabled = false (bool) storage.model = 'MK4019GAX' (string) storage.no_partitions_hint = false (bool) storage.originating_device = '/org/freedesktop/Hal/devices/usb_device_4b4_6830_DEF10A1E481F_if0' (string) storage.removable = false (bool) storage.removable.support_async_notification = false (bool) storage.requires_eject = false (bool) storage.vendor = 'TOSHIBA' (string) udi = '/org/freedesktop/Hal/devices/volume_part2_size_40007729664' block.device = '/dev/da1s1' (string) block.is_volume = true (bool) block.major = 0 (0x0) (int) block.minor = 153 (0x99) (int) block.storage_device = '/org/freedesktop/Hal/devices/storage_model_MK4019GAX' (string) info.capabilities = {'block', 'volume'} (string list) info.category = 'volume' (string) info.parent = '/org/freedesktop/Hal/devices/storage_model_MK4019GAX' (string) info.product = 'Volume' (string) info.subsystem = 'block' (string) info.udi = '/org/freedesktop/Hal/devices/volume_part2_size_40007729664' (string) volume.block_size = 512 (0x200) (uint64) volume.fstype = '' (string) volume.fsusage = 'partitiontable' (string) volume.ignore = true (bool) volume.is_disc = false (bool) volume.is_mounted = false (bool) volume.is_mounted_read_only = false (bool) volume.is_partition = true (bool) volume.label = '' (string) volume.mount_point = '' (string) volume.num_blocks = 78140097 (0x4a852c1) (uint64) volume.partition.media_size = 40007729664 (0x950a58200) (uint64) volume.partition.number = 2 (0x2) (int) volume.partition.scheme = 'mbr' (string) volume.partition.start = 32256 (0x7e00) (uint64) volume.partition.type = '0x0' (string) volume.size = 40007729664 (0x950a58200) (uint64) volume.uuid = '' (string) udi = '/org/freedesktop/Hal/devices/volume_size_40007729664' block.device = '/dev/ufs/WindowsVB' (string) block.is_volume = true (bool) block.major = 0 (0x0) (int) block.minor = 156 (0x9c) (int) block.storage_device = '/org/freedesktop/Hal/devices/storage_model_MK4019GAX' (string) info.capabilities = {'block', 'volume'} (string list) info.category = 'volume' (string) info.parent = '/org/freedesktop/Hal/devices/volume_part2_size_40007729664' (string) info.product = 'Volume' (string) info.subsystem = 'block' (string) info.udi = '/org/freedesktop/Hal/devices/volume_size_40007729664' (string) volume.block_size = 512 (0x200) (uint64) volume.fstype = '' (string) volume.fsusage = 'partitiontable' (string) volume.ignore = true (bool) volume.is_disc = false (bool) volume.is_mounted = false (bool) volume.is_mounted_read_only = false (bool) volume.is_partition = false (bool) volume.label = '' (string) volume.mount_point = '' (string) volume.num_blocks = 78140097 (0x4a852c1) (uint64) volume.size = 40007729664 (0x950a58200) (uint64) volume.uuid = '' (string) udi = '/org/freedesktop/Hal/devices/volume_label_WindowsVB' block.device = '/dev/ufs/WindowsVBd' (string) block.is_volume = true (bool) block.major = 0 (0x0) (int) block.minor = 158 (0x9e) (int) block.storage_device = '/org/freedesktop/Hal/devices/storage_model_MK4019GAX' (string) info.capabilities = {'block', 'volume'} (string list) info.category = 'volume' (string) info.interfaces = {'org.freedesktop.Hal.Device.Volume'} (string list) info.parent = '/org/freedesktop/Hal/devices/volume_size_40007729664' (string) info.product = 'WindowsVB' (string) info.subsystem = 'block' (string) info.udi = '/org/freedesktop/Hal/devices/volume_label_WindowsVB' (string) org.freedesktop.Hal.Device.Volume.method_argnames = {'mount_point fstype extra_options', 'extra_options', 'extra_options'} (string list) org.freedesktop.Hal.Device.Volume.method_execpaths = {'hal-storage-mount', 'hal-storage-unmount', 'hal-storage-eject'} (string list) org.freedesktop.Hal.Device.Volume.method_names = {'Mount', 'Unmount', 'Eject'} (string list) org.freedesktop.Hal.Device.Volume.method_signatures = {'ssas', 'as', 'as'} (string list) volume.block_size = 512 (0x200) (uint64) volume.freebsd.ufsid = '4aa57672516741c2' (string) volume.fstype = 'ufs' (string) volume.fsusage = 'filesystem' (string) volume.fsversion = '2' (string) volume.ignore = false (bool) volume.is_disc = false (bool) volume.is_mounted = true (bool) volume.is_mounted_read_only = false (bool) volume.is_partition = false (bool) volume.label = 'WindowsVB' (string) volume.mount.valid_options = {'ro', 'noexec', 'noatime'} (string list) volume.mount_point = '/media/WindowsVB_' (string) volume.num_blocks = 78140097 (0x4a852c1) (uint64) volume.size = 40007729664 (0x950a58200) (uint64) volume.uuid = '' (string) -- R. Kevin Oberman, Network Engineer Energy Sciences Network (ESnet) Ernest O. Lawrence Berkeley National Laboratory (Berkeley Lab) E-mail: oberman@es.net Phone: +1 510 486-8634 Key fingerprint:059B 2DDF 031C 9BA3 14A4 EADA 927D EBB3 987B 3751