Bug 431600

Summary: Hal does not see iSCSI devices
Product: [Fedora] Fedora Reporter: Lubomir Kundrak <lkundrak>
Component: halAssignee: David Zeuthen <davidz>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: mclasen
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-03-04 02:17:28 EST Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Bug Depends On:    
Bug Blocks: 235706, 432734    

Description Lubomir Kundrak 2008-02-05 15:11:34 EST
Description of problem:

Now that anaconda relies on HAL for disks enumeration, it has become important
for hal to see the drives accessed via iSCSI. It is not the case now.

Version-Release number of selected component (if applicable):

kernel-2.6.24-9.fc9.i686
hal-0.5.10-4.fc9.i386

How reproducible:

Allways

Steps to Reproduce:
1. Set up a scsi target (netbsd-iscsi or scsi-initiator-utils packages might
come handy, or kernel-mode iscsitarget from livna)
2. Discover the target with iscsiadm -m discovery -m st -p localhost
3. Log in with iscsiadm -m node --login
4. See what does hald do
  
Actual results:

20:49:56.007 [I] blockdev.c:856: block_add: sysfs_path=/sys/block/sdb
dev=/dev/sdb is_part=0, parent=0x00000000
20:49:56.007 [I] blockdev.c:897: Looking in /sys/block/sdb/slaves for Device Mapper
20:49:56.007 [I] blockdev.c:908:  /sys/block/sdb/slaves/. -> /sys/block/sdb/slaves
20:49:56.007 [I] blockdev.c:908:  /sys/block/sdb/slaves/.. -> /sys/block/sdb
20:49:56.007 [I] blockdev.c:944: Done looking in /sys/block/sdb/slaves
20:49:56.007 [I] blockdev.c:950: Ignoring hotplug event - no parent
20:49:56.007 [W] blockdev.c:1434: Not adding device object
20:49:56.007 [I] coldplug.c:214: pool_num_freed = 449 (of 459)
20:49:56.007 [E] util.c:190: Cannot open '/sys/block/sdb/sdb1/range'
20:49:56.007 [I] blockdev.c:856: block_add: sysfs_path=/sys/block/sdb/sdb1
dev=/dev/sdb1 is_part=1, parent=0x00000000
20:49:56.007 [I] blockdev.c:950: Ignoring hotplug event - no parent
20:49:56.007 [W] blockdev.c:1434: Not adding device object
20:49:56.007 [I] coldplug.c:214: pool_num_freed = 450 (of 459)
20:49:56.008 [E] util.c:190: Cannot open '/sys/block/sdb/sdb2/range'
20:49:56.008 [I] blockdev.c:856: block_add: sysfs_path=/sys/block/sdb/sdb2
dev=/dev/sdb2 is_part=1, parent=0x00000000
20:49:56.008 [I] blockdev.c:950: Ignoring hotplug event - no parent
20:49:56.008 [W] blockdev.c:1434: Not adding device object
20:49:56.008 [I] coldplug.c:214: pool_num_freed = 451 (of 459)
20:49:56.008 [E] util.c:190: Cannot open '/sys/block/sdb/sdb3/range'
20:49:56.008 [I] blockdev.c:856: block_add: sysfs_path=/sys/block/sdb/sdb3
dev=/dev/sdb3 is_part=1, parent=0x00000000
20:49:56.008 [I] blockdev.c:950: Ignoring hotplug event - no parent
20:49:56.008 [W] blockdev.c:1434: Not adding device object
20:49:56.008 [I] coldplug.c:214: pool_num_freed = 452 (of 459)
20:49:56.008 [E] util.c:190: Cannot open '/sys/block/sdb/sdb4/range'
20:49:56.008 [I] blockdev.c:856: block_add: sysfs_path=/sys/block/sdb/sdb4
dev=/dev/sdb4 is_part=1, parent=0x00000000
20:49:56.008 [I] blockdev.c:950: Ignoring hotplug event - no parent
20:49:56.008 [W] blockdev.c:1434: Not adding device object
20:49:56.008 [I] coldplug.c:214: pool_num_freed = 453 (of 459)

Expected results:

See the target in hal device tree

Additional info:

Please reassign to kernel if pertinent. I really can not tell if this is hal or
kernel issue. Thanks!
Comment 1 David Zeuthen 2008-02-14 11:16:44 EST
Can't have this in HAL; anaconda need to do something different.
Comment 2 David Zeuthen 2008-02-14 15:05:48 EST
OK, Jeremy explained exactly what is needed. I'll add this Monday. Thanks.
Comment 3 Lubomir Kundrak 2008-02-20 08:23:06 EST
May I ask... any progress on this?
Comment 4 David Zeuthen 2008-02-23 13:40:05 EST
Pending; was bogged down with other important stuff. Already talked to pjones to
get access to iSCSI targets. Hoping to look at it next week.
Comment 5 David Zeuthen 2008-03-03 20:54:33 EST
This is now done.

http://gitweb.freedesktop.org/?p=hal.git;a=commitdiff;h=db415dc5b771added0451f518ba3b714f004113e

udi = '/org/freedesktop/Hal/devices/storage_serial_350060160b8e02a0e50060160b8e
02a0e'
  block.device = '/dev/sdb'  (string)
  block.is_volume = false  (bool)
  block.major = 8  (0x8)  (int)
  block.minor = 16  (0x10)  (int)
  block.storage_device =
'/org/freedesktop/Hal/devices/storage_serial_350060160b8e02a0e50060160b8e02a0e'
 (string)
  info.capabilities = {'storage', 'block'} (string list)
  info.category = 'storage'  (string)
  info.parent =
'/org/freedesktop/Hal/devices/computer_scsi_host_scsi_device_lun0'  (string)
  info.product = 'LUNZ'  (string)
  info.udi =
'/org/freedesktop/Hal/devices/storage_serial_350060160b8e02a0e50060160b8e02a0e'
 (string)
  info.vendor = 'DGC'  (string)
  linux.hotplug_type = 3  (0x3)  (int)
  linux.sysfs_path =
'/sys/devices/platform/host4/session2/target4:0:0/4:0:0:0/block/sdb'  (string)
  storage.automount_enabled_hint = true  (bool)
  storage.bus = 'scsi'  (string)
  storage.drive_type = 'disk'  (string)
  storage.firmware_version = '0219'  (string)
  storage.hotpluggable = false  (bool)
  storage.lun = 0  (0x0)  (int)
  storage.media_check_enabled = false  (bool)
  storage.model = 'LUNZ'  (string)
  storage.no_partitions_hint = false  (bool)
  storage.originating_device = '/org/freedesktop/Hal/devices/computer'  (string)
  storage.partitioning_scheme = 'none'  (string)
  storage.removable = false  (bool)
  storage.removable.media_available = true  (bool)
  storage.removable.media_size = 0  (0x0)  (uint64)
  storage.requires_eject = false  (bool)
  storage.serial = '350060160b8e02a0e50060160b8e02a0e'  (string)
  storage.size = 0  (0x0)  (uint64)
  storage.vendor = 'DGC'  (string)