Skip to contentSkip to conversation

iBFT oddities

DISCUSSION Hannes Reinecke 2 participants 4 messages Jun 4, 2014 3 messages not in the archive

lore
Share & tools
lore
#0 lore raw

Hi all,

I'm trying to setup a machine with root on iSCSI via iBFT (on SR-IOV, yay!).

But anyhow, I'll be setting 'ip=ibft' on the commandline as per documentation and the iBFT settings are applied and everything is nice and dandy.

It's only that dracut complains during boot:

Jun 03 16:28:11 localhost dracut-cmdline[80]: ibft
Jun 03 16:28:11 localhost dracut-cmdline[80]: Warning: Please supply bootdev argument for multiple ip= lines
Jun 03 16:28:11 localhost dracut-cmdline[80]: Warning: Setting bootdev to 'ibft0'

Looking closer, setting 'ip=ibft' triggers 'ibft_to_cmdline()', which will add _another_ ip= argument to the dracut commandline. And consequently parse_ip_opts() complains here.

While it's quite easy to fix (just ignore ip=ibft when checking for duplicate ip arguments), I do wonder whether this is the correct way.

Thing is, 'ip=ibft' is not really an ip setting, but rather a marker that iBFT should be evaluated. As such, wouldn't 'rd.iscsi.firmware=ibft' be a more appropriate setting?
Seeing that the ip argument is added to the commandline anyway, having a duplicate 'ip=ibft' setting does look a bit odd. And confuses the logic ...

Cheers,

Hannes

Signature · 4 lines
Dr. Hannes Reinecke		      zSeries & Storage
[email protected]			      +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: J. Hawn, J. Guild, F. Imendörffer, HRB 16746 (AG Nürnberg)

A message that is not in the archive (sent off-list or not yet received): [email protected]

#2 lore raw
Quoted 29 lines · Hannes Reinecke

Hi all,

I'm trying to setup a machine with root on iSCSI via iBFT (on SR-IOV, yay!).

But anyhow, I'll be setting 'ip=ibft' on the commandline as per documentation and the iBFT settings are applied and everything is nice and dandy.

It's only that dracut complains during boot:

Jun 03 16:28:11 localhost dracut-cmdline[80]: ibft
Jun 03 16:28:11 localhost dracut-cmdline[80]: Warning: Please supply bootdev
argument for multiple ip= lines
Jun 03 16:28:11 localhost dracut-cmdline[80]: Warning: Setting bootdev to 'ibft0'

Looking closer, setting 'ip=ibft' triggers 'ibft_to_cmdline()', which will add _another_ ip= argument to the dracut commandline. And consequently parse_ip_opts() complains here.

While it's quite easy to fix (just ignore ip=ibft when checking for duplicate ip arguments), I do wonder whether this is the correct way.

Thing is, 'ip=ibft' is not really an ip setting, but rather a marker that iBFT should be evaluated.
As such, wouldn't 'rd.iscsi.firmware=ibft' be a more appropriate setting? Seeing that the ip argument is added to the commandline anyway, having a duplicate 'ip=ibft' setting does look a bit odd.
And confuses the logic ...

Quoted 3 lines

Cheers,

Hannes

Good catch! The bad thing is, that "ip=ibft" is already documented and used, so we might want "rd.iscsi.ibft=1" and also ignore "ip=ibft" in the check.

"rd.iscsi.firmware=1" is already taken for also starting iscsistart (which also starts the network interfaces, AFAIK)

"rd.iscsi.ibft=1" would probably fit, if you only want to ifup the network interfaces.

A message that is not in the archive (sent off-list or not yet received): [email protected]

#4 lore raw
Quoted 32 lines · Harald Hoyer
Quoted 31 lines · Hannes Reinecke

Hi all,

I'm trying to setup a machine with root on iSCSI via iBFT (on SR-IOV, yay!).

But anyhow, I'll be setting 'ip=ibft' on the commandline as per documentation and the iBFT settings are applied and everything is nice and dandy.

It's only that dracut complains during boot:

Jun 03 16:28:11 localhost dracut-cmdline[80]: ibft
Jun 03 16:28:11 localhost dracut-cmdline[80]: Warning: Please supply bootdev
argument for multiple ip= lines
Jun 03 16:28:11 localhost dracut-cmdline[80]: Warning: Setting bootdev to 'ibft0'

Looking closer, setting 'ip=ibft' triggers 'ibft_to_cmdline()', which will add _another_ ip= argument to the dracut commandline. And consequently parse_ip_opts() complains here.

While it's quite easy to fix (just ignore ip=ibft when checking for duplicate ip arguments), I do wonder whether this is the correct way.

Thing is, 'ip=ibft' is not really an ip setting, but rather a marker that iBFT should be evaluated.
As such, wouldn't 'rd.iscsi.firmware=ibft' be a more appropriate setting? Seeing that the ip argument is added to the commandline anyway, having a duplicate 'ip=ibft' setting does look a bit odd.
And confuses the logic ...

Cheers,

Quoted 8 lines
Quoted 1 line

Hannes

Good catch! The bad thing is, that "ip=ibft" is already documented and used, so we might want "rd.iscsi.ibft=1" and also ignore "ip=ibft" in the check.

"rd.iscsi.firmware=1" is already taken for also starting iscsistart (which also starts the network interfaces, AFAIK)

Hmm. You are of course aware that rd.iscsi.firmware doesn't necessarily requires you to start network interfaces, right? be2iscsi and qla4xxx have a separate PCI function, operating independently on the network interface. So no need to do anything there.

Quoted 4 lines

"rd.iscsi.ibft=1" would probably fit, if you only want to ifup the network interfaces.

As said above, rd.iscsi.firmware should just cause 'iscsistart' to run, and we need another setting to setup network interfaces specified by iBFT. So for that I really would like to use rd.iscsi.ibft=1, which will allow us to deprecate the 'ip=ibft' commandline in the long run.

Cheers,

Hannes

Signature · 4 lines
Dr. Hannes Reinecke		      zSeries & Storage
[email protected]			      +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: J. Hawn, J. Guild, F. Imendörffer, HRB 16746 (AG Nürnberg)

A message that is not in the archive (sent off-list or not yet received): [email protected]

#6 lore raw
Quoted 51 lines · Hannes Reinecke
Quoted 33 lines · Harald Hoyer
Quoted 32 lines · Hannes Reinecke

Hi all,

I'm trying to setup a machine with root on iSCSI via iBFT (on SR-IOV, yay!).

But anyhow, I'll be setting 'ip=ibft' on the commandline as per documentation and the iBFT settings are applied and everything is nice and dandy.

It's only that dracut complains during boot:

Jun 03 16:28:11 localhost dracut-cmdline[80]: ibft
Jun 03 16:28:11 localhost dracut-cmdline[80]: Warning: Please supply bootdev
argument for multiple ip= lines
Jun 03 16:28:11 localhost dracut-cmdline[80]: Warning: Setting bootdev to

'ibft0'

Looking closer, setting 'ip=ibft' triggers 'ibft_to_cmdline()', which will add _another_ ip= argument to the dracut commandline. And consequently parse_ip_opts() complains here.

While it's quite easy to fix (just ignore ip=ibft when checking for duplicate ip arguments), I do wonder whether this is the correct way.

Thing is, 'ip=ibft' is not really an ip setting, but rather a marker that iBFT should be evaluated.
As such, wouldn't 'rd.iscsi.firmware=ibft' be a more appropriate setting? Seeing that the ip argument is added to the commandline anyway, having a duplicate 'ip=ibft' setting does look a bit odd.
And confuses the logic ...

Cheers,

Quoted 8 lines
Quoted 1 line

Hannes

Good catch! The bad thing is, that "ip=ibft" is already documented and used, so we might want "rd.iscsi.ibft=1" and also ignore "ip=ibft" in the check.

"rd.iscsi.firmware=1" is already taken for also starting iscsistart (which also starts the network interfaces, AFAIK)

Hmm. You are of course aware that rd.iscsi.firmware doesn't necessarily requires you to start network interfaces, right?
be2iscsi and qla4xxx have a separate PCI function, operating independently on the network interface. So no need to do anything there.

Quoted 4 lines

"rd.iscsi.ibft=1" would probably fit, if you only want to ifup the network interfaces.

Quoted 5 lines

As said above, rd.iscsi.firmware should just cause 'iscsistart' to run, and we need another setting to setup network interfaces specified by iBFT. So for that I really would like to use
rd.iscsi.ibft=1, which will allow us to deprecate the 'ip=ibft' commandline in the long run.

Let's do that :)