Re: [PATCH 5/5] Add missing LAYER2 and PORTNO handling for s390x.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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


_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/anaconda-devel-list

[Index of Archives]     [Kickstart]     [Fedora Users]     [Fedora Legacy List]     [Fedora Maintainers]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]
  Powered by Linux