[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: [PATCH 5/5] Add missing LAYER2 and PORTNO handling for s390x.
- From: Steffen Maier <maier linux vnet ibm com>
- To: Discussion of Development and Customization of the Red Hat Linux Installer <anaconda-devel-list redhat com>
- Subject: Re: [PATCH 5/5] Add missing LAYER2 and PORTNO handling for s390x.
- Date: Fri, 03 Jul 2009 12:54:57 +0200
comments inline
On 07/03/2009 08:39 AM, David Cantrell wrote:
> libisys and loader lacked handling for the LAYER2 and PORTNO settings
> present on s390x systems.
>
> Also include the fix for #468755 to write layer2=1 rather than layer=2
> to the ifcfg-DEVICE file.
>
> Also include the fix for #471101 to include ARP=no when the device type
> is qeth and there are subchannels.
> ---
> isys/iface.c | 2 ++
> isys/iface.h | 2 ++
> loader/loader.c | 4 ++++
> loader/loader.h | 2 +-
> loader/net.c | 42 +++++++++++++++++++++++++++++++++++++++++-
> 5 files changed, 50 insertions(+), 2 deletions(-)
> diff --git a/isys/iface.c b/isys/iface.c
> index e139e74..c1251be 100644
> diff --git a/isys/iface.h b/isys/iface.h
> index f678932..3f97935 100644
> diff --git a/loader/loader.c b/loader/loader.c
> index 1de7019..71829e6 100644
> diff --git a/loader/loader.h b/loader/loader.h
> index a6e2d05..a38bd49 100644
> diff --git a/loader/net.c b/loader/net.c
> index 5b9593a..d56a040 100644
above hunks look good
> @@ -1193,7 +1201,7 @@ int writeDisabledNetInfo(void) {
> * /etc/sysconfig/network
> */
> int writeEnabledNetInfo(iface_t *iface) {
> - int i = 0;
> + int i = 0, osa_layer2 = 1, osa_portno = 0;
> mode_t mode = S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH;
> FILE *fp = NULL;
> char buf[INET6_ADDRSTRLEN+1];
> @@ -1403,6 +1411,38 @@ int writeEnabledNetInfo(iface_t *iface) {
> fprintf(fp, "CTCPROT=%s\n", iface->ctcprot);
> }
>
> + if (iface->layer2 && !strcmp(iface->layer2, "1")) {
> + osa_layer2 = 1;
> + } else if (iface->subchannels && !strcmp(iface->nettype, "qeth")) {
> + fprintf(fp, "ARP=no\n");
> + }
It would probably be another changeset but since you are already
speaking of the ARP=no issue wrt LCS, I would like to mention an open
bug against RHEL 5 which should get fixed upstream:
https://bugzilla.redhat.com/show_bug.cgi?id=491144
IPv6 on OSA in layer3 mode does not work since ARP=no was written to
ifcfg-eth0
(especially comments 12 and 16 for a thorough analysis and explanation)
There is some more background information in two kbases for RHEL 5:
http://kbase.redhat.com/faq/docs/DOC-16784
http://kbase.redhat.com/faq/docs/DOC-16786
Writing ARP=no for qeth has always been a hack and breaks IPv6 on qeth
devices in layer 3 mode. For the oldest z/VM version still supported
there has been a fix since 2007 which obsoletes the ARP=no hack. For all
newer z/VM versions the fix is already included. In other words, the
noarp hack is no longer necessary especially since it breaks IPv6.
We should remove the writing of ARP=no entirely from anaconda.
Steffen
Linux on System z Development
IBM Deutschland Research & Development GmbH
Vorsitzender des Aufsichtsrats: Martin Jetter
Geschäftsführung: Erich Baier
Sitz der Gesellschaft: Böblingen
Registergericht: Amtsgericht Stuttgart, HRB 243294
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]