Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

consolidated s390 device configuration #1259

Merged
merged 7 commits into from
Oct 14, 2024

Conversation

vojtechtrefny
Copy link
Member

#1162 rebased to the latest 3.10-devel

@vojtechtrefny
Copy link
Member Author

Jenkins, test this please.

@steffen-maier
Copy link
Contributor

Thanks for your rebase.
We think that the (indirect via the related anaconda PR) dependencies for this are meanwhile fulfilled with dracut-102-3, see rhinstaller/anaconda#5250 (comment) and subsequent comments.
Integrating the related rhinstaller/anaconda#5250 first has proven to work.
Should we remove the draft state here as well?

@vojtechtrefny vojtechtrefny marked this pull request as ready for review September 25, 2024 16:35
The old existing test preceding the removed code was only designed for the
old zfcp before it got automatic LUN scan. Hence, the test is incomplete.
With zfcp auto LUN scan, zfcp can just have SCSI devices without any
zfcp unit representation in sysfs.
Do not bother cleaning up an unused FCP device and just remove the code.

Note: Do not confuse zfcp auto port scan with zfcp auto LUN scan.

Signed-off-by: Steffen Maier <[email protected]>
Gone since 2008 Linux kernel v2.6.27 commit 235f7f25f492 ("[SCSI] zfcp:
Remove sysfs attribute port_add").

Signed-off-by: Steffen Maier <[email protected]>
…(#1802482,#1937049)

Implements the zfcp part of referenced bugs.

https://github.com/ibm-s390-linux/s390-tools/tree/master/zdev/
handles everything as of
ibm-s390-linux/s390-tools@06a30ae
("zdev/dracut: add rd.zfcp cmdline option handling").

It is no longer necessary to perform individual pre-req steps, such as
setting an FCP device online, when we want to attach a LUN. Just call
chzdev to configure zfcp LUNs and let it do what is necessary, including
cio_ignore handling and udev settle.

The spec file update reflects the new dependency on `chzdev` from the
s390 architecture specific sub-package s390utils-core. Actually, this
commit here only depends on `chzdev` in older versions already packaged
and shipped, so no version comparison necessary here.

Since chzdev now implicitly sets the FCP device online
and there is no more preceding explicit FCP device online,
move the path over-specification warning after the call to chzdev.
Otherwise, the FCP device could still be offline and its
port_type unknown, so has_auto_lun_scan() would get wrong information
regarding the port_type being NPIV.

Anaconda handles the persistent config of all s390 device types as of
commit ("write persistent config of any (dasd,zfcp,znet) s390 devices to
sysroot"), so drop the special handling in zfcp.write().

Signed-off-by: Steffen Maier <[email protected]>
…2,#1937049)

Implements the zfcp part of referenced bugs.

Since
rhinstaller/anaconda@87ab1ab
("Support cio_ignore functionality for zFCP devices (#533492)"),
/etc/zfcp.conf replaced /tmp/fcpconfig.

Since
rhinstaller/anaconda@011ea0a
("Remove linuxrc.s390"), /etc/zfcp.conf only exists if the user specified
dracut cmdline parameter rd.zfcp=.

https://github.com/ibm-s390-linux/s390-tools/tree/master/zdev/
handles parsing of rd.zfcp= without /etc/zfcp.conf as of
ibm-s390-linux/s390-tools@06a30ae
("zdev/dracut: add rd.zfcp cmdline option handling").

https://src.fedoraproject.org/rpms/s390utils.git
no longer writes /etc/zfcp.conf during deprecated parsing of rd.zfcp=
as of commit
("zfcp: migrate to consolidated persistent device config with zdev")

Hence, nothing populates /etc/zfcp.conf during installer boot anymore.

Anaconda imports configuration for all s390 device types as of
commit ("write persistent config of any (dasd,zfcp,znet) s390 devices to
sysroot"). The only remaining import source is from dracut boot parameters.

Signed-off-by: Steffen Maier <[email protected]>
…2,#1937049)

Implements the dasd part of referenced bugs.

Depends on
ibm-s390-linux/s390-tools@689b894
("zdev: add helper to convert from zdev config to dasd_mod.dasd").
The spec file update reflects the new dependency on `zdev-to-dasd_mod.dasd`
in the new v2.31.0 of the s390 architecture specific sub-package
s390utils-core.

Delegate the generation of rd.dasd statements to a helper tool from
s390-tools, which gets its low-level config information from the
consolidated persistent configuration mechanism using chzdev.

Signed-off-by: Steffen Maier <[email protected]>
@vojtechtrefny
Copy link
Member Author

Rebased once more to resolve conflict in the spec file. This is ready to be merged as soon as the anaconda PR is merged.

@vojtechtrefny vojtechtrefny merged commit 86b3df3 into storaged-project:main Oct 14, 2024
15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants