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

Bug#408375: marked as done (Missing support for qeth network devices in layer2 mode makes debian installer unuseable (patch attached))



Your message dated Mon, 29 Jan 2007 05:17:06 +0000
with message-id <E1HBOt8-0004Qt-Mm@ries.debian.org>
and subject line Bug#408375: fixed in s390-netdevice 0.0.15
has caused the attached Bug report to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Debian bug tracking system administrator
(administrator, Debian Bugs database)

--- Begin Message ---
Package: s390-netdevice
Version: 0.0.14
Severity: important

Installing debian etch on IBM zSeries(s390) fails if the network
device used for installation is a qeth device in layer2 mode.
(e.g. a NIC connected to a z/VM vswitch in ethernet mode).
qeth defaults to layer3 mode and setting the device online fails
if mode is not set up correctly.
Without network connectivity installation can't proceed.

Attached patch for s390-netdevice adds the possibility to set the
device to layer2 mode before activating it. Also the configuration
file in /etc/sysconfig/hardware/<config file for qeth device>
will be set up correctly for normal system startup.

Greetings,
Martin

-- 
------------------------------------------------------------------
Martin Grimm                             martin.grimm@millenux.com
Mi||enux                                  phone: +49.711.88770.300
Lilienthalstrasse 2                         fax: +49.711.88770.349
70825 Stuttgart-Korntal, Germany
Key fingerprint: 9BB0 AFE1 C133 F88B A27F 4F12 348D C7C0 C817 7FB1
------------------------------------------------------------------
         Linux without limits: http://linux.zSeries.org
--- s390-netdevice-0.0.14/debian/s390-netdevice.templates	2006-10-24 19:14:12.000000000 +0200
+++ s390-netdevice-0.0.15/debian/s390-netdevice.templates	2007-01-17 13:51:38.000000000 +0100
@@ -55,6 +55,7 @@
   channels = ${device0}, ${device1}, ${device2}
   port     = ${port}
   portname = ${portname}
+  layer2   = ${layer2}
 
 Template: s390-netdevice/qeth/no
 Type: error
@@ -81,6 +82,16 @@
 _Description: Port:
  Please enter a relative port for this connection.
 
+Template: s390-netdevice/qeth/layer2
+Type: boolean
+Default: false
+_Description: layer2 mode 
+ Do you want to run this card in layer2-Mode?
+ This will make the OSA-Express adapter keep the MAC
+ addresses of IPV4 packets. By default, the
+ OSA-Express adapter removes LLC headers from incoming
+ IPv4 packets.
+
 Template: s390-netdevice/iucv/confirm
 Type: boolean
 Default: true
diff -Naur s390-netdevice-0.0.14/netdevice.c s390-netdevice-0.0.15/netdevice.c
--- s390-netdevice-0.0.14/netdevice.c	2006-10-24 19:14:12.000000000 +0200
+++ s390-netdevice-0.0.15/netdevice.c	2007-01-22 13:54:09.000000000 +0100
@@ -58,6 +58,7 @@
 		{
 			struct channel *channels[3];
 			int port;
+			int layer2;
 			char portname[32];
 		} qeth;
 		struct
@@ -104,6 +105,7 @@
 	GET_CTC_CHANNELS,
 	GET_CTC_PROTOCOL,
 	GET_QETH_DEVICE,
+	GET_QETH_LAYER2,
 	GET_QETH_PORT,
 	GET_QETH_PORTNAME,
 	GET_IUCV_DEVICE,
@@ -447,6 +449,22 @@
 	return WANT_NEXT;
 }
 
+static enum state_wanted get_qeth_layer2 (void)
+{
+	char *ptr;
+	int ret = my_debconf_input ("critical", TEMPLATE_PREFIX "qeth/layer2", &ptr);
+
+	if (ret == 30)
+		return WANT_BACKUP;
+	if (ret)
+		return WANT_ERROR;
+
+	device_current->qeth.layer2 = strstr(ptr, "true") ? 1 : 0;
+
+	return WANT_NEXT;
+
+}
+
 static enum state_wanted get_qeth_port (void)
 {
 	char *ptr;
@@ -561,7 +579,7 @@
 	return WANT_ERROR;
 }
 
-static enum state_wanted write_ccwgroup (const char *driver_name, const char *device_name, const char *group)
+static enum state_wanted write_ccwgroup (const char *driver_name, const char *device_name, const char *group, int layer2)
 {
 	struct sysfs_device *device;
 	struct sysfs_driver *driver;
@@ -583,6 +601,15 @@
 	if (!device)
 		return WANT_ERROR;
 
+	if (layer2)
+	{
+		attr = sysfs_get_device_attr (device, "layer2");
+		if (!attr)
+			return WANT_ERROR;
+		if (sysfs_write_attribute (attr, "1", 1) < 0)
+			return WANT_ERROR;
+	}
+
 	attr = sysfs_get_device_attr (device, "online");
 	if (!attr)
 		return WANT_ERROR;
@@ -605,7 +632,7 @@
 
 	snprintf (buf, sizeof (buf), "%s,%s\n", device_current->ctc.channels[0]->name, device_current->ctc.channels[1]->name);
 
-	ret = write_ccwgroup ("ctc", device_current->ctc.channels[0]->name, buf);
+	ret = write_ccwgroup ("ctc", device_current->ctc.channels[0]->name, buf, 0);
 	if (ret)
 		return ret;
 
@@ -632,7 +659,7 @@
 
 	snprintf (buf, sizeof (buf), "%s,%s,%s\n", device_current->qeth.channels[0]->name, device_current->qeth.channels[1]->name, device_current->qeth.channels[2]->name);
 
-	ret = write_ccwgroup ("qeth", device_current->qeth.channels[0]->name, buf);
+	ret = write_ccwgroup ("qeth", device_current->qeth.channels[0]->name, buf, device_current->qeth.layer2);
 	if (ret)
 		return ret;
 
@@ -643,6 +670,11 @@
 
 	snprintf (buf, sizeof (buf), "CCWGROUP_CHANS=(%s %s %s)\n", device_current->qeth.channels[0]->name, device_current->qeth.channels[1]->name, device_current->qeth.channels[2]->name);
 	fwrite (buf, strlen (buf), 1, config);
+	if (device_current->qeth.layer2)
+	{
+		snprintf (buf, sizeof (buf), "QETH_OPTIONS=layer2\n");
+		fwrite (buf, strlen (buf), 1, config);
+	}
 
 	fclose (config);
 
@@ -696,6 +728,9 @@
 			case GET_QETH_DEVICE:
 				state_want = get_qeth_device ();
 				break;
+			case GET_QETH_LAYER2:
+				state_want = get_qeth_layer2 ();
+				break;
 			case GET_QETH_PORT:
 				state_want = get_qeth_port ();
 				break;
@@ -767,6 +802,9 @@
 						state = CONFIRM_CTC;
 						break;
 					case GET_QETH_DEVICE:
+						state = GET_QETH_LAYER2;
+						break;
+					case GET_QETH_LAYER2:
 						/* state = GET_QETH_PORT; */
 						state = CONFIRM_QETH;
 						break;

--- End Message ---
--- Begin Message ---
Source: s390-netdevice
Source-Version: 0.0.15

We believe that the bug you reported is fixed in the latest version of
s390-netdevice, which is due to be installed in the Debian FTP archive:

s390-netdevice_0.0.15.dsc
  to pool/main/s/s390-netdevice/s390-netdevice_0.0.15.dsc
s390-netdevice_0.0.15.tar.gz
  to pool/main/s/s390-netdevice/s390-netdevice_0.0.15.tar.gz
s390-netdevice_0.0.15_s390.udeb
  to pool/main/s/s390-netdevice/s390-netdevice_0.0.15_s390.udeb



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 408375@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Frans Pop <fjp@debian.org> (supplier of updated s390-netdevice package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.7
Date: Mon, 29 Jan 2007 04:49:00 +0100
Source: s390-netdevice
Binary: s390-netdevice
Architecture: source s390
Version: 0.0.15
Distribution: unstable
Urgency: low
Maintainer: Debian Install System Team <debian-boot@lists.debian.org>
Changed-By: Frans Pop <fjp@debian.org>
Description: 
 s390-netdevice - Configure network hardware (udeb)
Closes: 408375
Changes: 
 s390-netdevice (0.0.15) unstable; urgency=low
 .
   [ Frans Pop ]
   * Change menu item from 18 to 17 for consistency with ethdetect.
   * Add myself to uploaders.
 .
   [ Bastian Blank ]
   * Support layer2 mode for OSA adapters. Patch from Martin Grimm.
     (closes: #408375)
 .
   [ Updated translations ]
   * Arabic (ar.po) by Ossama M. Khayat
   * Bulgarian (bg.po) by Damyan Ivanov
   * Bosnian (bs.po) by Safir Secerovic
   * Catalan (ca.po) by Jordi Mallach
   * Danish (da.po) by Claus Hindsgaul
   * Spanish (es.po) by Javier Fernández-Sanguino Peña
   * French (fr.po) by Christian Perrier
   * Galician (gl.po) by Jacobo Tarrio
   * Hebrew (he.po) by Lior Kaplan
   * Italian (it.po) by Stefano Canepa
   * Georgian (ka.po) by Aiet Kolkhi
   * Korean (ko.po) by Sunjae park
   * Kurdish (ku.po) by Amed Ã?eko Jiyan
   * Latvian (lv.po) by Aigars Mahinovs
   * Malayalam (ml.po) by Praveen A
   * Norwegian Bokmål (nb.po) by Bjørn Steensrud
   * Panjabi (pa.po) by A S Alam
   * Portuguese (Brazil) (pt_BR.po) by Felipe Augusto van de Wiel (faw)
   * Slovenian (sl.po) by Matej KovaÄ?iÄ?
Files: 
 8c57992585bf124076721449ec47487b 756 debian-installer optional s390-netdevice_0.0.15.dsc
 5300d967e305e398f42fd35ac8ab3e3f 84984 debian-installer optional s390-netdevice_0.0.15.tar.gz
 e459ab361571492f47aa8949d3280fc8 70450 debian-installer optional s390-netdevice_0.0.15_s390.udeb
Package-Type: udeb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)

iD8DBQFFvYBAgm/Kwh6ICoQRAjBjAKCOzHjt8kGoaW9xVYnzD93TcGatkACfcEYK
Nuiz5W2eGuunQXiPEYJcpps=
=z6CZ
-----END PGP SIGNATURE-----


--- End Message ---

Reply to: