Open anjalidk opened 3 years ago
Can't you just add this to dracut.conf ?
omit_dracutmodules+=" iscsi "
Hi, We cannot, because we do not want different image for iSCSI and non-iSCSI Systems. We want the same image, so the code must detect whether we are PV or iSCSI dynamically. See this issue where I have described the problem: https://github.com/dracutdevs/dracut/issues/1520
Anjali
On May 26, 2021, at 11:11 AM, Tomasz Paweł Gajc @.**@.>> wrote:
Can't you just add this to dracut.conf ? omit_dracutmodules+=" iscsi "
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://urldefense.com/v3/__https://github.com/dracutdevs/dracut/issues/1520*issuecomment-849008037__;Iw!!GqivPVa7Brio!KBvQa5lO6NgWfOcVvaJkJAz91FDxvitZcMlsN5IB85VpklJCfzcsp2o0RZkTP7MMzxTjXg$, or unsubscribehttps://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AQE6QX7PISWG7Y5BWR6VFDDTPU2VDANCNFSM45QHWMNA__;!!GqivPVa7Brio!KBvQa5lO6NgWfOcVvaJkJAz91FDxvitZcMlsN5IB85VpklJCfzcsp2o0RZkTP7Pw3DHZzA$.
This seems more like an enhancement rather than bug.
Anyway, from my point, it is not proper to modify iscsi dracutmodule to satisfy the requirement, which breaks the open-close principle.
Perhaps a new module could be added to dynamically monitor the iBFT ACPI table and control the behavior of iscsi.
This fix gives a boot improvement of about 4-5secs on non-iSCSI boot systems
@anjalidk, did you mean to attach a code change ? I do not see it.
Description: This fix gives a boot improvement of about 4-5secs on non-iSCSI boot systems, when iscsi parameters are given in kernel command line.
On cloud systems, we need to boot various boot types but use the same image and same kernel command line parameters. This means, we add an iscsi parameters on systems which are booting via iSCSI and also ones that are not. But we need to ignore the iscsi parameters non-iSCSI system, else it gives a penalty of 4-5 secs on boot time.
For a system which did not boot via iSCSI, there is no ipxe and hence no ipxe added iBFT ACPI table - /sys/firmware/acpi/tables/iBFT.
So we check for the precence of this table to determine if we can skip iscsi parsing and then subsequently skip running iscsiroot.sh script.
Otherwise on a non-iSCSI boot system, the iscsiroot,sh script keeps running and trying to connect to iscsi target when there isn't one. Also, that script has multiple sleeps in it, which impacts boot time negatively.
Distribution: Oracle Linux, and hence Redhat
Dracut version: All dracut versions
Init system: systemd
To Reproduce: Boot a VM which has a local disk from which it boots. You also need in kernel command line: netroot=iscsi:XXXX. However, this is unused on a local boot disk.
Expected behavior: We should ignore iscsi parsing, if the iBFT table indicates we do not have an iSCSI boot.