Re: [Banshee-List] iPod is seen as read only since0.12.1 (and changes to libipoddevice)



Thanks, Aaron.  That's great news for any Gentoo users because 0.5.9
(which, I now see, is only 3 days old) is "hard masked", and many people
wouldn't want to put a hard-masked version of anything as important as
HAL on their machines.  (I did it anyway today, and it's fine so far.)
And since there is no 0.5.8 in their portage tree, 0.5.7 is really the
only option for most Gentoo users.

On Thu, 2007-04-05 at 16:02 -0400, Aaron Bockover wrote:
> The patch is now committed to subversion, and attached to this mail. I'm
> not sure it's going to warrant an immediate patch release as most
> distributions do ship HAL >= 0.5.8 at this point. If this starts coming
> in as bug reports though, I will do an emergency release.
> 
> However, any distribution who is packaging libipoddevice 0.5.3 should
> probably apply the patch.
> 
> --Aaron
> 
> 
> On Thu, 2007-04-05 at 15:55 -0400, Aaron Bockover wrote:
> > Hi Bill,
> > 
> > I did this same research yesterday and as it turns out, I need to revise
> > my position on this in libipoddevice as I need to support HAL >= 0.5.6,
> > and thus can't rely on this property. 
> > 
> > Thus I will be committing a patch to make it work in < 0.5.8. It will
> > use the volume.is_mounted_read_only if the property exists and if not it
> > will fall back to legacy checks to determine of the volume can be
> > written to.
> > 
> > Thanks for looking into this though. I could have sworn
> > volume.is_mounted_read_only was a lot older than 0.5.8.
> > 
> > --Aaron
> > 
> > On Thu, 2007-04-05 at 12:31 +0200, Bill Dawson wrote:
> > > Just in case anybody else ever has this problem, here's what I found:
> > > 
> > > volume.is_mounted_read_only started as part of the HAL spec 0.5.8. (The
> > > code was added to the HAL source in March 2006.)  
> > > 
> > > Gentoo's latest "unmasked" HAL is 0.5.7, and that's what I'm running,
> > > which explains why I don't get that property exported.  
> > > 
> > > I don't really care, because I'll upgrade now to 0.5.9 (which is in
> > > Gentoo's portage tree but masked). 0.5.8 appears to have never been in
> > > Gentoo's tree.
> > > 
> > > regards,
> > > bill
> > > 
> > > On Wed, 2007-04-04 at 18:44 -0400, Aaron Bockover wrote:
> > > > I'm not really sure how to troubleshoot this other than that
> > > > volume.is_volume_mounted_readonly is a mandatory property for volume
> > > > devices in HAL, is expected to be their by libipoddevice (and if not
> > > > your volume is considered read only), and your device doesn't have it.
> > > > 
> > > > http://people.freedesktop.org/~david/hal-spec/hal-spec.html#device-properties-volume
> > > > 
> > > > I'm not sure when this property was introduced but it should be well
> > > > before 0.5.7.
> > > > 
> > > > --Aaron
> > > > 
> > > > 
> > > > On Wed, 2007-04-04 at 23:31 +0200, Bill Dawson wrote:
> > > > > Dare I say it? It's gentoo (uh oh?).  
> > > > > 
> > > > > gnome-volume-manager 2.15.0
> > > > > HAL package version: 0.5.7.1
> > > > > 
> > > > > 
> > > > > On Wed, 2007-04-04 at 17:08 -0400, Aaron Bockover wrote:
> > > > > > The problem is that your HAL and/or mount daemon (like GNOME Volume
> > > > > > Manager) did not merge the volume.is_mounted_read_only property into the
> > > > > > device tree, so we cannot verify how the mount is set up. I had to
> > > > > > change the readonly detection logic to cater to HFS+ iPods, hence the
> > > > > > change. While it may look like a regression in libipoddevice, it's
> > > > > > actually due to an issue in your HAL/mount daemon.
> > > > > > 
> > > > > > What version of HAL are you using and what mount daemon and version
> > > > > > (gnome-volume-manager, ivman, etc.). What distro?
> > > > > > 
> > > > > > The stuff printed to stderr looks like problems with your DBus
> > > > > > installation.
> > > > > > 
> > > > > > --Aaron
> > > > > > 
> > > > > > On Wed, 2007-04-04 at 21:30 +0200, Bill Dawson wrote:
> > > > > > > Here you go. The script produced both std and err output, and I
> > > > > > > redirected them both to the same file, which is now pasted below. (all
> > > > > > > the err stuff ended up on top.)  Thanks for having a look.
> > > > > > > 
> > > > > > > process 16717: Applications must not close shared connections - see
> > > > > > > dbus_connection_close() docs. This is a bug in the application.
> > > > > > >   D-Bus not built with -rdynamic so unable to print a backtrace
> > > > > > > ./ipod-debug-dump.sh: line 20: 16717 Aborted                 hal-device
> > > > > > > $udi
> > > > > > > process 16719: Applications must not close shared connections - see
> > > > > > > dbus_connection_close() docs. This is a bug in the application.
> > > > > > >   D-Bus not built with -rdynamic so unable to print a backtrace
> > > > > > > ./ipod-debug-dump.sh: line 31: 16719 Aborted                 hal-device
> > > > > > > $child_udi
> > > > > > > process 16722: Applications must not close shared connections - see
> > > > > > > dbus_connection_close() docs. This is a bug in the application.
> > > > > > >   D-Bus not built with -rdynamic so unable to print a backtrace
> > > > > > > ./ipod-debug-dump.sh: line 31: 16722 Aborted                 hal-device
> > > > > > > $child_udi
> > > > > > >       wcdiii
> > > > > > >    Host Name:        BILLIBM
> > > > > > > 
> > > > > > > 
> > > > > > > 
> > > > > > > [[-------------------- HAL Dump -------------------]]
> > > > > > > 
> > > > > > > <---- iPod Device 1 ---->
> > > > > > > udi =
> > > > > > > '/org/freedesktop/Hal/devices/storage_serial_Apple_iPod_000000925917'
> > > > > > >   info.addons = { 'hald-addon-storage' } (string list)
> > > > > > >   portable_audio_player.output_formats = { 'audio/mpeg', 'audio/aac' }
> > > > > > > (string list)
> > > > > > >   portable_audio_player.storage_device =
> > > > > > > '/org/freedesktop/Hal/devices/storage_serial_Apple_iPod_000000925917'
> > > > > > > (string)
> > > > > > >   portable_audio_player.type = 'ipod'  (string)
> > > > > > >   portable_audio_player.access_method = 'storage'  (string)
> > > > > > >   block.storage_device =
> > > > > > > '/org/freedesktop/Hal/devices/storage_serial_Apple_iPod_000000925917'
> > > > > > > (string)
> > > > > > >   info.udi =
> > > > > > > '/org/freedesktop/Hal/devices/storage_serial_Apple_iPod_000000925917'
> > > > > > > (string)
> > > > > > >   storage.requires_eject = true  (bool)
> > > > > > >   storage.hotpluggable = true  (bool)
> > > > > > >   info.capabilities = { 'storage', 'block', 'portable_audio_player' }
> > > > > > > (string list)
> > > > > > >   info.category = 'portable_audio_player'  (string)
> > > > > > >   info.product = 'iPod'  (string)
> > > > > > >   info.vendor = 'Apple'  (string)
> > > > > > >   storage.removable = true  (bool)
> > > > > > >   storage.physical_device =
> > > > > > > '/org/freedesktop/Hal/devices/usb_device_5ac_1205_000000925917_if0'
> > > > > > > (string)
> > > > > > >   storage.lun = 0  (0x0)  (int)
> > > > > > >   storage.firmware_version = '1.62'  (string)
> > > > > > >   storage.serial = 'Apple_iPod_000000925917'  (string)
> > > > > > >   storage.vendor = 'Apple'  (string)
> > > > > > >   storage.model = 'iPod'  (string)
> > > > > > >   storage.drive_type = 'disk'  (string)
> > > > > > >   storage.automount_enabled_hint = true  (bool)
> > > > > > >   storage.media_check_enabled = true  (bool)
> > > > > > >   storage.no_partitions_hint = false  (bool)
> > > > > > >   storage.bus = 'usb'  (string)
> > > > > > >   block.is_volume = false  (bool)
> > > > > > >   block.minor = 0  (0x0)  (int)
> > > > > > >   block.major = 8  (0x8)  (int)
> > > > > > >   block.device = '/dev/sda'  (string)
> > > > > > >   linux.hotplug_type = 3  (0x3)  (int)
> > > > > > >   info.parent =
> > > > > > > '/org/freedesktop/Hal/devices/usb_device_5ac_1205_000000925917_if0_scsi_host_scsi_device_lun0'  (string)
> > > > > > >   linux.sysfs_path_device = '/sys/block/sda'  (string)
> > > > > > >   linux.sysfs_path = '/sys/block/sda'  (string)
> > > > > > > 
> > > > > > > udi = '/org/freedesktop/Hal/devices/volume_part1_size_41094144'
> > > > > > >   info.udi = '/org/freedesktop/Hal/devices/volume_part1_size_41094144'
> > > > > > > (string)
> > > > > > >   volume.partition.msdos_part_table_type = 0  (0x0)  (int)
> > > > > > >   info.product = 'Volume'  (string)
> > > > > > >   volume.size = 41094144  (0x2730c00)  (uint64)
> > > > > > >   volume.num_blocks = 80262  (0x13986)  (int)
> > > > > > >   volume.block_size = 512  (0x200)  (int)
> > > > > > >   volume.partition.number = 1  (0x1)  (int)
> > > > > > >   info.capabilities = { 'volume', 'block' } (string list)
> > > > > > >   info.category = 'volume'  (string)
> > > > > > >   volume.is_partition = true  (bool)
> > > > > > >   volume.is_disc = false  (bool)
> > > > > > >   volume.is_mounted = false  (bool)
> > > > > > >   volume.mount_point = ''  (string)
> > > > > > >   volume.label = ''  (string)
> > > > > > >   volume.uuid = ''  (string)
> > > > > > >   volume.fsversion = ''  (string)
> > > > > > >   volume.fsusage = ''  (string)
> > > > > > >   volume.fstype = ''  (string)
> > > > > > >   storage.model = ''  (string)
> > > > > > >   block.storage_device =
> > > > > > > '/org/freedesktop/Hal/devices/storage_serial_Apple_iPod_000000925917'
> > > > > > > (string)
> > > > > > >   block.is_volume = true  (bool)
> > > > > > >   block.minor = 1  (0x1)  (int)
> > > > > > >   block.major = 8  (0x8)  (int)
> > > > > > >   block.device = '/dev/sda1'  (string)
> > > > > > >   linux.hotplug_type = 3  (0x3)  (int)
> > > > > > >   info.parent =
> > > > > > > '/org/freedesktop/Hal/devices/storage_serial_Apple_iPod_000000925917'
> > > > > > > (string)
> > > > > > >   linux.sysfs_path_device = '/sys/block/sda/sda1'  (string)
> > > > > > >   linux.sysfs_path = '/sys/block/sda/sda1'  (string)
> > > > > > > 
> > > > > > > udi = '/org/freedesktop/Hal/devices/volume_uuid_B258_9E2A'
> > > > > > >   info.hal_mount.mounted_by_uid = 1000  (0x3e8)  (int)
> > > > > > >   info.hal_mount.created_mount_point = '/media/BLUEMINI'  (string)
> > > > > > >   info.callouts.add = { 'hal-ipod-info' } (string list)
> > > > > > >   volume.unmount.valid_options = { 'lazy' } (string list)
> > > > > > >   volume.mount.valid_options = { 'ro', 'sync', 'dirsync', 'noatime',
> > > > > > > 'nodiratime', 'noexec', 'quiet', 'utf8', 'shortname=', 'codepage=',
> > > > > > > 'iocharset=', 'umask=', 'dmask=', 'fmask=', 'uid=' } (string list)
> > > > > > >   org.freedesktop.Hal.Device.Volume.method_execpaths =
> > > > > > > { 'hal-system-storage-mount', 'hal-system-storage-unmount',
> > > > > > > 'hal-system-storage-eject', 'hal-ipod-info' } (string list)
> > > > > > >   org.freedesktop.Hal.Device.Volume.method_signatures = { 'ssas', 'as',
> > > > > > > 'as', 'as' } (string list)
> > > > > > >   org.freedesktop.Hal.Device.Volume.method_names = { 'Mount', 'Unmount',
> > > > > > > 'Eject', 'WriteIpodInfo' } (string list)
> > > > > > >   info.interfaces = { 'org.freedesktop.Hal.Device.Volume' } (string
> > > > > > > list)
> > > > > > >   volume.ignore = false  (bool)
> > > > > > >   info.udi = '/org/freedesktop/Hal/devices/volume_uuid_B258_9E2A'
> > > > > > > (string)
> > > > > > >   volume.partition.msdos_part_table_type = 11  (0xb)  (int)
> > > > > > >   info.product = 'BLUEMINI'  (string)
> > > > > > >   volume.size = 4046837760  (0xf135d800)  (uint64)
> > > > > > >   volume.num_blocks = 7903980  (0x789aec)  (int)
> > > > > > >   volume.block_size = 512  (0x200)  (int)
> > > > > > >   volume.partition.number = 2  (0x2)  (int)
> > > > > > >   info.capabilities = { 'volume', 'block' } (string list)
> > > > > > >   info.category = 'volume'  (string)
> > > > > > >   volume.is_partition = true  (bool)
> > > > > > >   volume.is_disc = false  (bool)
> > > > > > >   volume.is_mounted = true  (bool)
> > > > > > >   volume.mount_point = '/media/BLUEMINI'  (string)
> > > > > > >   volume.label = 'BLUEMINI'  (string)
> > > > > > >   volume.uuid = 'B258-9E2A'  (string)
> > > > > > >   volume.fsversion = 'FAT32'  (string)
> > > > > > >   volume.fsusage = 'filesystem'  (string)
> > > > > > >   volume.fstype = 'vfat'  (string)
> > > > > > >   storage.model = ''  (string)
> > > > > > >   block.storage_device =
> > > > > > > '/org/freedesktop/Hal/devices/storage_serial_Apple_iPod_000000925917'
> > > > > > > (string)
> > > > > > >   block.is_volume = true  (bool)
> > > > > > >   block.minor = 2  (0x2)  (int)
> > > > > > >   block.major = 8  (0x8)  (int)
> > > > > > >   block.device = '/dev/sda2'  (string)
> > > > > > >   linux.hotplug_type = 3  (0x3)  (int)
> > > > > > >   info.parent =
> > > > > > > '/org/freedesktop/Hal/devices/storage_serial_Apple_iPod_000000925917'
> > > > > > > (string)
> > > > > > >   linux.sysfs_path_device = '/sys/block/sda/sda2'  (string)
> > > > > > >   linux.sysfs_path = '/sys/block/sda/sda2'  (string)
> > > > > > > 
> > > > > > >       ************************* WARNING *************************
> > > > > > >       * This iPod suffers from the volume.fsusage=raid bug.     *
> > > > > > >       * As such, it cannot be used in Banshee. This is not a    *
> > > > > > >       * Banshee or gnome-volume-manager bug. And the issue is   *
> > > > > > >       * very well known.                                        *
> > > > > > >       *                                                         *
> > > > > > >       * Please read the following web page for more information *
> > > > > > >       * including possible fixes to the problem:                *
> > > > > > >       *                                                         *
> > > > > > >       * http://banshee-project.org/Troubleshooting/iPod/RaidBug *
> > > > > > >       ***********************************************************
> > > > > > > 
> > > > > > > 
> > > > > > > 
> > > > > > > On Wed, 2007-04-04 at 12:51 -0400, Aaron Bockover wrote:
> > > > > > > > Bill,
> > > > > > > > 
> > > > > > > > Would you mind running the following script with your Mini plugged in
> > > > > > > > and paste the results in a reply?
> > > > > > > > 
> > > > > > > > http://banshee-project.org/files/ipod-debug-dump.sh
> > > > > > > > 
> > > > > > > > Thanks,
> > > > > > > > Aaron
> > > > > > > > 
> > > > > > > > On Wed, 2007-04-04 at 13:43 +0200, Bill Dawson wrote:
> > > > > > > > > I wonder if anybody else has seen this.  The latest changes to
> > > > > > > > > libipoddevice -- many of which were to determine if an iPod is read-only
> > > > > > > > > -- have resulted in my 1st Gen ipod mini (blue) being seen as read-only.
> > > > > > > > > (For example,the synchronize button is no longer available).
> > > > > > > > > 
> > > > > > > > > I traced it back to ipodsharp's Device.cs bool CanWrite returning false.
> > > > > > > > > It, in turn, reaches into libipoddevice's "can-write" property (if I
> > > > > > > > > understand the code correctly.)  I've just quickly reviewed the
> > > > > > > > > libipoddevice's C code recent changes and it looks like a lot has been
> > > > > > > > > added re making this determination of if something is writeable.  I've
> > > > > > > > > not studied it too closely-- maybe someone knows a quick fix.  
> > > > > > > > > 
> > > > > > > > > I can file a bug to the iPod component if desired.
> > > > > > > > > 
> > > > > > > > > In the meantime, I'm just forcing ipodsharp's Device.cs CanWrite() to
> > > > > > > > > return true.
> > > > > > > > > 
> > > > > > > > > iPod properties in Banshee accurately shows my model info:
> > > > > > > > > 
> > > > > > > > > Generation: First
> > > > > > > > > Model: MiniBlue
> > > > > > > > > Model Number: M9436
> > > > > > > > > Serial Number: JQ4380FYQKL
> > > > > > > > > Firmware Version: 2.6.1
> > > > > > > > > Database version: 13
> > > > > > > > > Manufactured During: Week 38 of 2004
> > > > > > > > > 
> > > > > > > > > Thx, 
> > > > > > > > > Bill Dawson
> > > > > > > > > 
> > > > > > > > > 
> > > > > > > > > _______________________________________________
> > > > > > > > > Banshee-list mailing list
> > > > > > > > > Banshee-list gnome org
> > > > > > > > > http://mail.gnome.org/mailman/listinfo/banshee-list
> > > > > > > > 
> > > > > > > 
> > > > > > 
> > > > > 
> > > > 
> > > 
> > > _______________________________________________
> > > Banshee-list mailing list
> > > Banshee-list gnome org
> > > http://mail.gnome.org/mailman/listinfo/banshee-list
> > 
> > _______________________________________________
> > Banshee-list mailing list
> > Banshee-list gnome org
> > http://mail.gnome.org/mailman/listinfo/banshee-list




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]