Bug 1329951

Summary: Error prompt occur when install on hard iscsi machine with kickstart file
Product: Red Hat Enterprise Linux 8 Reporter: Wei Wang <weiwang>
Component: python-blivetAssignee: Blivet Maintenance Team <blivet-maint-list>
Status: CLOSED WONTFIX QA Contact: Release Test Team <release-test-team-automation>
Severity: medium Docs Contact:
Priority: high    
Version: 8.0CC: blivet-maint-list, bugs, cleech, cshao, huzhao, jkonecny, leiwang, mhoyer, qiyuan, rvykydal, vtrefny, weiwang, yaniwang, ycui
Target Milestone: rc   
Target Release: 8.1   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-11-01 03:02:57 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1329957    
Attachments:
Description Flags
singlepath_iscsi_ks
none
multipath_iscsi_ks
none
anaconda_logs
none
the traceback extracted from comment #3
none
system_hang
none
logs under /tmp none

Description Wei Wang 2016-04-25 07:52:17 UTC
Created attachment 1150264 [details]
singlepath_iscsi_ks

Description of problem:
Error prompt occur when install on hard iscsi machine with kickstart file

Version-Release number of selected component (if applicable):
ovirt-node-ng-installer-ovirt-4.0-2016041721.iso
ovirt-node-ng-image-update-placeholder-4.0.0-0.2.alpha1.20160405123556.gitbd184ec.el7.noarch
ovirt-node-4.0.0
imgbased-0.6-0.201604150305git1e3b28f.el7.centos.noarch

How reproducible:
100%

Steps to Reproduce:
1. Automatic install hard iscsi machine with kickstart file in attachment
   Key parameter is below:
    iscsiname iqn.2000-04.com.qlogic:qle4062c.ls41143a76364.1
    iscsi --ipaddr=10.73.194.25 --port=3260 --target=iqn.1992-08.com.netapp:sn.135053389
2. During installation, error prompt occur


Actual results:
During installation, error prompt occur.
"NoneType" object has no attribute 'iface'

Expected results:
Installation with iscsi device should be successful.


Additional info:
both singlepath and mutilpath iscsi have this issue

Comment 1 Wei Wang 2016-04-25 07:54:11 UTC
Created attachment 1150265 [details]
multipath_iscsi_ks

Comment 2 Fabian Deutsch 2016-04-25 08:03:02 UTC
This looks like an anaconda problem.

Please attach the anaconda logs as well.

Comment 3 Wei Wang 2016-04-25 08:35:33 UTC
Created attachment 1150298 [details]
anaconda_logs

Comment 4 Fabian Deutsch 2016-04-25 08:48:28 UTC
Moved to anaconda because of the traceback in anaconda.log from comment 3

Comment 5 Radek Vykydal 2016-04-25 11:36:26 UTC
Created attachment 1150411 [details]
the traceback extracted from comment #3

We are getting unexpected "(null)" value when calling device_get_iscsi_nic(info) which reads /sys/class/iscsi_session/sessionX/ifacename.
We'd expect "default" in this case though I am not sure if it would be the correct value for this case (qla4xxx target attached manually by initiator utils).

Comment 6 Radek Vykydal 2016-04-25 11:40:52 UTC
Chris, referring to comment #5:
Should the driver or initiator utils be modified so the /sys/class/iscsi_sessions/sessionX/ifacename contains "default"?
If not, would it be OK to translate "(null)" value to "default" in installer?

Comment 7 Radek Vykydal 2016-04-25 13:17:01 UTC
Here is updates image for RHEL 7.2 with possible anaconda fix:

https://rvykydal.fedorapeople.org/updates.ifacenamenull.img

You can check it either by adding boot option

updates=https://rvykydal.fedorapeople.org/updates.ifacenamenull.img

or kickstart command

updates https://rvykydal.fedorapeople.org/updates.ifacenamenull.img

Comment 8 Wei Wang 2016-04-26 04:29:59 UTC
After installation,system hang at reboot process when retest with kickstart command "updates https://rvykydal.fedorapeople.org/updates.ifacenamenull.img", the original error prompt is disappeared.

Version-Release number of selected component (if applicable):
ovirt-node-ng-installer-ovirt-4.0-2016042500.iso

How reproducible:
100%

Steps to Reproduce:
1. Automatic install hard iscsi machine with kickstart file in attachment
   Key parameter is below:
    iscsiname iqn.2000-04.com.qlogic:qle4062c.ls41143a76364.1
    iscsi --ipaddr=10.73.194.25 --port=3260 --target=iqn.1992-08.com.netapp:sn.135053389
2. check the installation process


Actual results:
After installation, system hang at reboot process

Expected results:
Installation with iscsi device should be successful.

Comment 9 Wei Wang 2016-04-26 04:30:35 UTC
Created attachment 1150701 [details]
system_hang

Comment 10 Radek Vykydal 2016-04-26 10:28:00 UTC
(In reply to weiwang from comment #8)

> Actual results:
> After installation, system hang at reboot process

The hang is likely the same issue as bug #1270212 which should be addressed in 7.3.

Comment 11 Radek Vykydal 2016-04-26 10:29:06 UTC
Re-raising needinfo on Chris (comment #6)

Comment 13 Chris Leech 2016-06-09 22:43:15 UTC
(In reply to Radek Vykydal from comment #6)
> Chris, referring to comment #5:
> Should the driver or initiator utils be modified so the
> /sys/class/iscsi_sessions/sessionX/ifacename contains "default"?
> If not, would it be OK to translate "(null)" value to "default" in installer?

Default is the safest choice, but I'm taking a look to try and understand how it would be unset.  Without an iface record, I don't know that the qla4xxx offload transport is being used.

Comment 14 Sandro Bonazzola 2019-07-02 13:15:19 UTC
Didn't make it in RHEL 7, moving out to RHEL 8
Can you please try to reproduce on EL8 image when available?

Comment 15 Wei Wang 2019-07-03 04:24:35 UTC
(In reply to Sandro Bonazzola from comment #14)
> Didn't make it in RHEL 7, moving out to RHEL 8
> Can you please try to reproduce on EL8 image when available?

I will do it until get the EL8 build.

Comment 16 Wei Wang 2019-07-03 04:25:58 UTC
Add back needinfo to cleech

Comment 17 Sandro Bonazzola 2020-01-14 12:51:24 UTC
Wei can you please re-test this with latest 4.4 build you have?

Comment 18 Wei Wang 2020-01-15 07:38:32 UTC
(In reply to Sandro Bonazzola from comment #17)
> Wei can you please re-test this with latest 4.4 build you have?

Qin,

Could you help to re-test this? Thanks!

Comment 19 Qin Yuan 2020-01-15 09:48:42 UTC
Tested redhat-virtualization-host-4.4.0-20191204.2.el8_1, still has the same issue:

anaconda 29.19.2.4 exception report
Traceback (most recent call first):
  File "/usr/lib/python3.6/site-packages/blivet/populator/helpers/disk.py", line 101, in _get_kwargs
    kwargs["nic"] = iscsi.ifaces.get(node.iface, node.iface)
  File "/usr/lib/python3.6/site-packages/blivet/populator/helpers/disk.py", line 70, in run
    kwargs = self._get_kwargs()
  File "/usr/lib/python3.6/site-packages/blivet/populator/populator.py", line 264, in handle_device
    device = helper_class(self, info).run()
  File "/usr/lib/python3.6/site-packages/blivet/threads.py", line 53, in run_with_lock
    return m(*args, **kwargs)
  File "/usr/lib/python3.6/site-packages/blivet/populator/populator.py", line 461, in _populate
    self.handle_device(dev)
  File "/usr/lib/python3.6/site-packages/blivet/threads.py", line 53, in run_with_lock
    return m(*args, **kwargs)
  File "/usr/lib/python3.6/site-packages/blivet/populator/populator.py", line 413, in populate
    self._populate()
  File "/usr/lib/python3.6/site-packages/blivet/threads.py", line 53, in run_with_lock
    return m(*args, **kwargs)
  File "/usr/lib/python3.6/site-packages/blivet/blivet.py", line 161, in reset
    self.devicetree.populate(cleanup_only=cleanup_only)
  File "/usr/lib/python3.6/site-packages/blivet/threads.py", line 53, in run_with_lock
    return m(*args, **kwargs)
  File "/usr/lib64/python3.6/site-packages/pyanaconda/storage/osinstall.py", line 1745, in reset
    super().reset(cleanup_only=cleanup_only)
  File "/usr/lib/python3.6/site-packages/blivet/threads.py", line 53, in run_with_lock
    return m(*args, **kwargs)
  File "/usr/lib64/python3.6/site-packages/pyanaconda/storage/osinstall.py", line 2305, in storage_initialize
    storage.reset()
  File "/usr/lib64/python3.6/threading.py", line 864, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/lib64/python3.6/site-packages/pyanaconda/threading.py", line 286, in run
    threading.Thread.run(self)
AttributeError: 'NoneType' object has no attribute 'iface'

Comment 20 Jiri Konecny 2020-01-17 10:27:31 UTC
This error is raised from our storage library. Switching to blivet for further investigation.

Comment 21 David Lehman 2020-01-17 16:50:16 UTC
Please attach the installer logs:

  /tmp/anaconda.log
  /tmp/program.log
  /tmp/storage.log
  /tmp/syslog


Thanks.

Comment 22 Qin Yuan 2020-01-20 07:29:08 UTC
Created attachment 1653835 [details]
logs under /tmp

Comment 23 David Lehman 2020-04-21 19:57:12 UTC
*** Bug 1676952 has been marked as a duplicate of this bug. ***

Comment 24 Vojtech Trefny 2020-06-01 10:31:39 UTC
Qin Yuan can you please test this with latest RHEL 8.3 build? I believe this issue should be fixed by 8.3 rebase of anaconda and blivet. I unfortunately don't have hardware to test this myself.

Related upstream PR: https://github.com/storaged-project/blivet/pull/774

Comment 25 Qin Yuan 2020-06-05 15:04:41 UTC
Tested RHEL-8.3.0-20200605.n.0, there is an error when install bootloader:

anaconda 33.16.3.5 exception report
Traceback (most recent call first):
  File "/usr/lib/python3.6/site-packages/dasbus/client/handler.py", line 498, in _handle_method_error
    raise exception from None
  File "/usr/lib/python3.6/site-packages/dasbus/client/handler.py", line 476, in _get_method_reply
    return self._handle_method_error(error)
  File "/usr/lib/python3.6/site-packages/dasbus/client/handler.py", line 447, in _call_method
    **kwargs,
  File "/usr/lib64/python3.6/site-packages/pyanaconda/modules/common/task/__init__.py", line 46, in sync_run_task
    task_proxy.Finish()
  File "/usr/lib64/python3.6/site-packages/pyanaconda/installation_tasks.py", line 521, in run_task
    sync_run_task(self._task_proxy)
  File "/usr/lib64/python3.6/site-packages/pyanaconda/installation_tasks.py", line 490, in start
    self.run_task()
  File "/usr/lib64/python3.6/site-packages/pyanaconda/installation_tasks.py", line 311, in start
    item.start()
  File "/usr/lib64/python3.6/site-packages/pyanaconda/installation_tasks.py", line 311, in start
    item.start()
  File "/usr/lib64/python3.6/site-packages/pyanaconda/installation_tasks.py", line 311, in start
    item.start()
  File "/usr/lib64/python3.6/site-packages/pyanaconda/installation.py", line 397, in run_installation
    queue.start()
  File "/usr/lib64/python3.6/threading.py", line 864, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/lib64/python3.6/site-packages/pyanaconda/threading.py", line 280, in run
    threading.Thread.run(self)
dasbus.error.DBusError: 'NoneType' object has no attribute 'address'

Comment 28 Radek Vykydal 2020-07-09 10:25:13 UTC
The traceback (from installation logs in comment #26) showing the place of failure:

INFO:anaconda.threading:Thread Done: AnaTaskThread-InstallBootloaderTask-1 (139802338293504)
WARNING:dasbus.server.handler:The call org.fedoraproject.Anaconda.Task.Finish has failed with an exception:
Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/dasbus/server/handler.py", line 421, in _method_callback
    *unwrap_variant(parameters)
  File "/usr/lib/python3.6/site-packages/dasbus/server/handler.py", line 234, in _handle_call
    return handler(*parameters)
  File "/usr/lib64/python3.6/site-packages/pyanaconda/modules/common/task/task_interface.py", line 114, in Finish
    self.implementation.finish()
  File "/usr/lib64/python3.6/site-packages/pyanaconda/modules/common/task/task.py", line 161, in finish
    threadMgr.raise_if_error(self._thread_name)
  File "/usr/lib64/python3.6/site-packages/pyanaconda/threading.py", line 171, in raise_if_error
    raise exc_info[0](exc_info[1]).with_traceback(exc_info[2])
  File "/usr/lib64/python3.6/site-packages/pyanaconda/threading.py", line 280, in run
    threading.Thread.run(self)
  File "/usr/lib64/python3.6/threading.py", line 864, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/lib64/python3.6/site-packages/pyanaconda/modules/common/task/task.py", line 97, in _task_run_callback
    self._set_result(self.run())
  File "/usr/lib64/python3.6/site-packages/pyanaconda/modules/storage/bootloader/installation.py", line 103, in run
    install_boot_loader(storage=self._storage)
  File "/usr/lib64/python3.6/site-packages/pyanaconda/modules/storage/bootloader/utils.py", line 163, in install_boot_loader
    storage.bootloader.set_boot_args(storage)
  File "/usr/lib64/python3.6/site-packages/pyanaconda/modules/storage/bootloader/base.py", line 707, in set_boot_args
    self._set_storage_boot_args(storage)
  File "/usr/lib64/python3.6/site-packages/pyanaconda/modules/storage/bootloader/base.py", line 774, in _set_storage_boot_args
    setup_args = iscsi_proxy.GetDracutArguments(Node.to_structure(node))
  File "/usr/lib/python3.6/site-packages/dasbus/client/handler.py", line 447, in _call_method
    **kwargs,
  File "/usr/lib/python3.6/site-packages/dasbus/client/handler.py", line 476, in _get_method_reply
    return self._handle_method_error(error)
  File "/usr/lib/python3.6/site-packages/dasbus/client/handler.py", line 498, in _handle_method_error
    raise exception from None
dasbus.error.DBusError: 'NoneType' object has no attribute 'address'
DEBUG:anaconda.modules.common.base.base:Generating kickstart...

Comment 31 RHEL Program Management 2020-11-01 03:02:57 UTC
After evaluating this issue, there are no plans to address it further or fix it in an upcoming release.  Therefore, it is being closed.  If plans change such that this issue will be fixed in an upcoming release, then the bug can be reopened.

Comment 33 Red Hat Bugzilla 2023-09-14 23:59:26 UTC
The needinfo request[s] on this closed bug have been removed as they have been unresolved for 500 days