Bug#1012506: AW: Bug#1012506: Fix for 64bit big-endian systems

2022-11-19 Thread Martin Grimm
Hello David,

I can confirm that this patch works fine for the s390x architecture. I have a 
setup with postfix and two opendkim instances for RSA and ED25519 dual signing 
running bullseye on a IBM system z15 (in fact it's the same host where zelenka 
and zandonai are hosted on).
I've not tested this patch on x86 yet. If you want, I can build a test system 
for x86. But maybe you already have a system to give it a try?

I've split the patch in a fix for s390x and a cleanup patch on purpose to keep 
things separated. Feel free to ignore the cleanup patch. From my understanding 
upstream opendkim seams pretty much dead, so I've little hope to get those 
fixes upstream.

Ciao
Martin




Von: David Bürgin 
Gesendet: Freitag, 18. November 2022 18:19
An: Martin Grimm; 1012...@bugs.debian.org
Betreff: Re: Bug#1012506: Fix for 64bit big-endian systems

Hello Martin,

thank you for the patches.

Martin Grimm:
> Building opendkim with --with-gnutls disables support for ed25519, so I've 
> taken a closer look at the problematic code and found the culprit code.
>
> The error comes from the call to the openssl function RSA_sign in 
> libopendkim/dkim.c:3945:
>
> RSA_sign takes as fifth argument a reference to an unsigned int (4 byte) 
> variable to return the length of the signature.
> The opendkim-code uses a reference to the variable l of type size_t (unsigned 
> long, 8 bytes on s390x) casted as (signed) int reference for this.
> This is fatal for a big endian system.
>
> I've attached to patches:
> 1.) fix-RSA_sign-call.patch: fixes the call to RSA_sign by using a temporary 
> variable ui_l of the correct type unsigned int to get back the length from 
> RSA_sign and savely assigns the returned value to l after the call.
> 2.) fix-printf-types.patch: fixes several calls of printf in dkim.c that use 
> the signed int specifier "%d" to print size_t arguments. For C99-code "%zu" 
> should be used for size_t variables.

Regarding patch 1: I don’t have access to an s390x machine and I don’t
want to spend too much time assessing this patch. I can apply it, but
please confirm that you have verified that this is the right fix and
that it does not impact the current working build. If someone else can
try it and report back, that would be useful, too.

Regarding patch 2: There are lots of compiler warnings today (eg also
for our current use of OpenSSL APIs). I can apply the patch, but
generally code cleanup is something I prefer done upstream (yeah, I
know …) instead of maintained as Debian patches.

Ciao,
David



Bug#1012506: Fix for 64bit big-endian systems

2022-11-14 Thread Martin Grimm
Dear maintainer and Waldemar,

Building opendkim with --with-gnutls disables support for ed25519, so I've 
taken a closer look at the problematic code and found the culprit code.

The error comes from the call to the openssl function RSA_sign in 
libopendkim/dkim.c:3945:

RSA_sign takes as fifth argument a reference to an unsigned int (4 byte) 
variable to return the length of the signature.
The opendkim-code uses a reference to the variable l of type size_t (unsigned 
long, 8 bytes on s390x) casted as (signed) int reference for this.
This is fatal for a big endian system.

I've attached to patches:
1.) fix-RSA_sign-call.patch: fixes the call to RSA_sign by using a temporary 
variable ui_l of the correct type unsigned int to get back the length from 
RSA_sign and savely assigns the returned value to l after the call.
2.) fix-printf-types.patch: fixes several calls of printf in dkim.c that use 
the signed int specifier "%d" to print size_t arguments. For C99-code "%zu" 
should be used for size_t variables.

best regards,
Martin--- a/libopendkim/dkim.c
+++ b/libopendkim/dkim.c
@@ -440,7 +440,7 @@ dkim_add_plist(DKIM *dkim, DKIM_SET *set
 		plist = (DKIM_PLIST *) DKIM_MALLOC(dkim, sizeof(DKIM_PLIST));
 		if (plist == NULL)
 		{
-			dkim_error(dkim, "unable to allocate %d byte(s)",
+			dkim_error(dkim, "unable to allocate %zu byte(s)",
 			   sizeof(DKIM_PLIST));
 			return -1;
 		}
@@ -504,7 +504,7 @@ dkim_process_set(DKIM *dkim, dkim_set_t
 	hcopy = (u_char *) DKIM_MALLOC(dkim, len + 1);
 	if (hcopy == NULL)
 	{
-		dkim_error(dkim, "unable to allocate %d byte(s)", len + 1);
+		dkim_error(dkim, "unable to allocate %zu byte(s)", len + 1);
 		return DKIM_STAT_INTERNAL;
 	}
 	strlcpy((char *) hcopy, (char *) str, len + 1);
@@ -513,7 +513,7 @@ dkim_process_set(DKIM *dkim, dkim_set_t
 	if (set == NULL)
 	{
 		DKIM_FREE(dkim, hcopy);
-		dkim_error(dkim, "unable to allocate %d byte(s)",
+		dkim_error(dkim, "unable to allocate %zu byte(s)",
 		   sizeof(DKIM_SET));
 		return DKIM_STAT_INTERNAL;
 	}
@@ -1146,7 +1146,7 @@ dkim_privkey_load(DKIM *dkim)
 		crypto = DKIM_MALLOC(dkim, sizeof(struct dkim_crypto));
 		if (crypto == NULL)
 		{
-			dkim_error(dkim, "unable to allocate %d byte(s)",
+			dkim_error(dkim, "unable to allocate %zu byte(s)",
 			   sizeof(struct dkim_crypto));
 			return DKIM_STAT_NORESOURCE;
 		}
@@ -1939,7 +1939,7 @@ dkim_siglist_setup(DKIM *dkim)
 	dkim->dkim_siglist = DKIM_MALLOC(dkim, len);
 	if (dkim->dkim_siglist == NULL)
 	{
-		dkim_error(dkim, "unable to allocate %d byte(s)", len);
+		dkim_error(dkim, "unable to allocate %zu byte(s)", len);
 		return DKIM_STAT_NORESOURCE;
 	}
 
@@ -1953,7 +1953,7 @@ dkim_siglist_setup(DKIM *dkim)
 			int n;
 
 			dkim_error(dkim,
-			   "unable to allocate %d byte(s)",
+			   "unable to allocate %zu byte(s)",
 			   sizeof(DKIM_SIGINFO));
 			for (n = 0; n < c; n++)
 DKIM_FREE(dkim, dkim->dkim_siglist[n]);
@@ -2337,7 +2337,7 @@ dkim_siglist_setup(DKIM *dkim)
 		if (dkim->dkim_siglist[c]->sig_sig == NULL)
 		{
 			dkim_error(dkim,
-			   "unable to allocate %d byte(s)",
+			   "unable to allocate %zu byte(s)",
 			   b64siglen);
 			return DKIM_STAT_NORESOURCE;
 		}
@@ -2904,7 +2904,7 @@ dkim_get_key(DKIM *dkim, DKIM_SIGINFO *s
 			if (sig->sig_key == NULL)
 			{
 dkim_error(dkim,
-   "unable to allocate %d byte(s)",
+   "unable to allocate %zu byte(s)",
    osig->sig_b64keylen);
 return DKIM_STAT_NORESOURCE;
 			}
@@ -3086,7 +3086,7 @@ dkim_get_key(DKIM *dkim, DKIM_SIGINFO *s
 		sig->sig_key = DKIM_MALLOC(dkim, sig->sig_b64keylen);
 		if (sig->sig_key == NULL)
 		{
-			dkim_error(dkim, "unable to allocate %d byte(s)",
+			dkim_error(dkim, "unable to allocate %zu byte(s)",
 			   sig->sig_b64keylen);
 			return DKIM_STAT_NORESOURCE;
 		}
@@ -3368,7 +3368,7 @@ dkim_eoh_sign(DKIM *dkim)
 		dkim->dkim_siglist = DKIM_MALLOC(dkim, sizeof(DKIM_SIGINFO **));
 		if (dkim->dkim_siglist == NULL)
 		{
-			dkim_error(dkim, "failed to allocate %d byte(s)",
+			dkim_error(dkim, "failed to allocate %zu byte(s)",
 			   sizeof(DKIM_SIGINFO *));
 			return DKIM_STAT_NORESOURCE;
 		}
@@ -3377,7 +3377,7 @@ dkim_eoh_sign(DKIM *dkim)
 		sizeof(struct dkim_siginfo));
 		if (dkim->dkim_siglist[0] == NULL)
 		{
-			dkim_error(dkim, "failed to allocate %d byte(s)",
+			dkim_error(dkim, "failed to allocate %zu byte(s)",
 			   sizeof(struct dkim_siginfo));
 			return DKIM_STAT_NORESOURCE;
 		}
@@ -3810,7 +3810,7 @@ dkim_eom_sign(DKIM *dkim)
 	{
 		sig->sig_error = DKIM_SIGERROR_KEYTOOSMALL;
 		dkim_error(dkim,
-		   "private key too small (%d bits, need at least %d)",
+		   "private key too small (%u bits, need at least %u)",
 		   sig->sig_keybits,
 		   dkim->dkim_libhandle->dkiml_minkeybits);
 		return DKIM_STAT_SIGGEN;
@@ -3898,6 +3898,7 @@ dkim_eom_sign(DKIM *dkim)
 		

Bug#728705: gdb fails on s390x with Couldn't write registers: Invalid argument

2013-11-04 Thread Martin Grimm
I can confirm this problem on s390x and s390 wheezy systems.
gdb 7.0.1-2+b1 runs fine on s390 squeeze.

Greetings,
Martin

Am 04.11.2013 14:35, schrieb Thibaut Paumard:
 Package: gdb
 Version: 7.6.1-1
 Severity: important
 X-Debbugs-CC: debian-s...@lists.debian.org
 
 Dear Maintainer,
 
 gdb seems to be completely useless on s390x. I tried running it against
 various executables (both buggy and sane). gdb seems to launch the
 executable, however the subprocess doesn't seem to be doing anything.
 gdb just gives a message, but it does not even seem to consider the
 situation fatal and just seats there, apparently considering that the
 subprocess is running faultlessly. Example session on echo foo, notice
 how foo is not echoed:
 
  GDB SESSION ___
 
 (sid_s390x-dchroot)thibaut@zelenka:~$ gdb --args echo foo
 GNU gdb (GDB) 7.6.1 (Debian 7.6.1-1)
 Copyright (C) 2013 Free Software Foundation, Inc.
 License GPLv3+: GNU GPL version 3 or later
 http://gnu.org/licenses/gpl.html
 This is free software: you are free to change and redistribute it.
 There is NO WARRANTY, to the extent permitted by law.  Type show copying
 and show warranty for details.
 This GDB was configured as s390x-linux-gnu.
 For bug reporting instructions, please see:
 http://www.gnu.org/software/gdb/bugs/...
 Reading symbols from /bin/echo...(no debugging symbols found)...done.
 (gdb) run
 Starting program: /bin/echo foo
 Couldn't write registers: Invalid argument.
 (gdb) bt
 Target is executing.
 (gdb) quit
 A debugging session is active.
 
   Inferior 1 [process 18228] will be killed.
 
 Quit anyway? (y or n) y
 (sid_s390x-dchroot)thibaut@zelenka:~$
 
  END GDB SESSION _
 
 
 Kind regards, Thibaut.
 
 
 -- System Information:
 Debian Release: jessie/sid
   APT prefers unstable
   APT policy: (500, 'unstable')
 Architecture: s390x
 
 Kernel: Linux 3.2.0-4-s390x (SMP w/2 CPU cores)
 Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
 Shell: /bin/sh linked to /bin/dash
 
 Versions of packages gdb depends on:
 ii  gdbserver 7.6.1-1
 ii  libc6 2.17-93
 ii  libexpat1 2.1.0-4
 ii  liblzma5  5.1.1alpha+20120614-2
 ii  libncurses5   5.9+20130608-1
 ii  libpython2.7  2.7.5-8
 ii  libreadline6  6.2+dfsg-0.1
 ii  libtinfo5 5.9+20130608-1
 ii  zlib1g1:1.2.8.dfsg-1
 
 Versions of packages gdb recommends:
 pn  libc-dbg  none
 
 Versions of packages gdb suggests:
 pn  gdb-doc  none
 
 -- no debconf information
 
 
 


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#725743: procps 1:3.3.8-2 FTBFS on ia64 and s390x

2013-10-09 Thread Martin Grimm
Am 09.10.2013 10:17, schrieb Craig Small:
 
 I've got most of these problems sorted out for the s390 (and the
 ia64 but you probably don't care about that).
 
 I'm stuck at with one of the more obscure ps flags.
 FAIL: ps SCHED_BATCH scheduler
 See [1]
 
 So.. what does this test do?
   It compiles [2]
   Runs the binary as test-schedbatch 18
   Runs ps --no-header -o comm,cls,nice -a
   Expects the output to be test-schedbatch B 18
 
 Most of my programs have TS instead of B. On my amd64 I see B
 it looks like this:
 
 COMMAND CLS  NI
 bash TS   0
 test-schedbatch   B  18
 ps   TS   0
 
 So.. what does an s390 see?
 I tried compiling this small program and got a screenful of error
 messages so I'm stuck.
 
 1:
 https://buildd.debian.org/status/fetch.php?pkg=procpsarch=s390xver=1%3A3.3.8-2stamp=1370603323
 2:
 https://gitorious.org/procps/procps/source/e6a78f2745ca6c7ceed4406d3ce5397e77518b11:testsuite/ps.test/test-schedbatch.c
 
 


Sorry Craig, but I can't reproduce your problem here:

I've built procps 3.3.8-2 from sid successfully on a wheezy s390x system
(unpacking orig source + patch and then running debuild)

Here the snippet from the build output:
--8-
=== ps tests ===

Schedule of variations:
unix

Running target unix
Using /usr/share/dejagnu/baseboards/unix.exp as board description file for 
target.
Using /usr/share/dejagnu/config/unix.exp as generic interface file for target.
Using ./config/unix.exp as tool-and-target-specific interface file.
Running ./ps.test/ps_output.exp ...
Running ./ps.test/ps_personality.exp ...
Running ./ps.test/ps_sched_batch.exp ...

=== ps Summary ===

# of expected passes9
# of untested testcases 1
WARNING: Couldn't find tool init file
Test Run By mgrimm on Wed Oct  9 11:21:42 2013
Native configuration is s390x-ibm-linux-gnu
--8-

Manual test seems fine, too:

mgrimm@build:procps-ng-3.3.8 debian/procps/bin/ps -V
procps-ng version 3.3.8
mgrimm@build:procps-ng-3.3.8 ./testsuite/test-schedbatch 18 !
mgrimm@build:procps-ng-3.3.8 debian/procps/bin/ps --no-header -o comm,cls,nice 
-a
test-schedbatch   B  18
ps   TS   0



Greetings
Martin


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#723739: resource-agents: send_arp sends incorrect arp packets on big endian machines with 64bit wide u_long datatype.

2013-09-19 Thread Martin Grimm
Package: resource-agents
Version: 1:3.9.2-5+deb7u1
Severity: important
Tags: upstream patch

Dear Maintainer,

The send_arp binary (libnet-version) doesn't work on big endian systems
that use 64bit for datatype u_long. In our case this means that
heartbeat with VIPs doesn't work because the needed ARP broadcast on IP
failover is broken.

Network traces showed that instead of the ip given on commandline 0.0.0.0
was used in all packets.

The problem  is caused by incorrect use of u_long as return value of
libnet_name2addr4 (libnet1.1 version returns u_int32_t). This variable
is casted to u_char* and given to libnet_build_arp, which copies the
first 4 bytes to the arp packet. On big endian systems with 64bit wide
long datatype these 4 bytes are 0x00 and the ip is in byte 5 to 8.

Attached patch changes the type of the variable ip to u_int32_t for
libnet1.1-code.

The problem seems to be fixed in latest upstream version. The fix in
upstream can be seen here:
https://github.com/ClusterLabs/resource-agents/commit/1eea8a6cb3b6a58908276b23e66ce282b1733c9e

Greetings,
Martin

-- System Information:
Debian Release: 7.1
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: s390x

Kernel: Linux 3.2.0-4zivit1-s390x (SMP w/4 CPU cores)
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/bash

Versions of packages resource-agents depends on:
ii  cluster-glue  1.0.9+hg2665-1
ii  libc6 2.13-38
ii  libglib2.0-0  2.33.12+really2.32.4-5
ii  libnet1   1.1.4-2.1
ii  libplumb2 1.0.9+hg2665-1
ii  libplumbgpl2  1.0.9+hg2665-1
ii  python2.7.3-4

resource-agents recommends no packages.

resource-agents suggests no packages.

-- no debconf information
--- a/tools/send_arp.libnet.c	2011-06-29 14:51:48.0 +0200
+++ b/tools/send_arp.libnet.c	2013-09-19 09:45:44.691470508 +0200
@@ -49,15 +49,17 @@
 
 #ifdef HAVE_LIBNET_1_0_API
 #	define	LTYPE	struct libnet_link_int
+#	define	IPTYPE	u_long
 #endif
 #ifdef HAVE_LIBNET_1_1_API
 #	define	LTYPE	libnet_t
+#	define	IPTYPE	u_int32_t
 #endif
 
 #define PIDDIR   HA_VARRUNDIR / PACKAGE
 #define PIDFILE_BASE PIDDIR /send_arp-
 
-static int send_arp(LTYPE* l, u_long ip, u_char *device, u_char mac[6]
+static int send_arp(LTYPE* l, IPTYPE ip, u_char *device, u_char mac[6]
 ,	u_char *broadcast, u_char *netmask, u_short arptype);
 
 static char print_usage[]={
@@ -133,7 +135,7 @@
 	char*	macaddr;
 	char*	broadcast;
 	char*	netmask;
-	u_long	ip;
+	IPTYPE	ip;
 	u_char  src_mac[6];
 	LTYPE*	l;
 	int	repeatcount = 1;
@@ -388,7 +390,7 @@
 
 #ifdef HAVE_LIBNET_1_0_API
 int
-send_arp(struct libnet_link_int *l, u_long ip, u_char *device, u_char *macaddr, u_char *broadcast, u_char *netmask, u_short arptype)
+send_arp(struct libnet_link_int *l, IPTYPE ip, u_char *device, u_char *macaddr, u_char *broadcast, u_char *netmask, u_short arptype)
 {
 	int n;
 	u_char *buf;
@@ -465,7 +467,7 @@
 
 #ifdef HAVE_LIBNET_1_1_API
 int
-send_arp(libnet_t* lntag, u_long ip, u_char *device, u_char macaddr[6], u_char *broadcast, u_char *netmask, u_short arptype)
+send_arp(libnet_t* lntag, IPTYPE ip, u_char *device, u_char macaddr[6], u_char *broadcast, u_char *netmask, u_short arptype)
 {
 	int n;
 	u_char *target_mac;


Bug#719993: linux-image-3.2.0-4-s390x: hangs hard after a few hours

2013-09-18 Thread Martin Grimm
I wan't to confirm this problem.

We have several wheezy installations (s390 and s390x) running unter z/VM 5.4 on
IBM System z 196 EC and all suffer from this problem.
Some systems started to hang after few minutes, others kept running for days or
weeks before the problem occured.

In PerfKit the hanging systems are shown to go high on CPU usage. There is no
I/O activity to devices. Memory usage is normal, so OOM can't be the cause of
the problem.

I've build custom kernels with Aurelien's patch applied and installed them on
all our wheezy systems two days ago.
No hangs so far.

Greetings
Martin


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#671238: linux-image-2.6.32-5-s390x: no CMM with z/VM Resource Manager possible

2012-05-03 Thread Martin Grimm


Am 03.05.2012 09:06 schrieb Bastian Blank:
 severity 671238 important
 thanks
 
 On Wed, May 02, 2012 at 07:12:45PM +0200, Martin Grimm wrote:
 CMM (Cooperative Memory Management) can't be controlled from z/VM
 Resource Manager because the core component (cmm) is builtin and
 the needed communication module (smsgiucv) is build as a module.
 Loading the module smsgiucv doesn't help.
 
 Which versions are affected? I believe both Squeeze (2.6.32) and Wheezy
 (3.2).
 
 Bastian
 

Yes, I can confirm the problem for both versions.

Martin

-- 
Martin Grimm
Zentrum für Informationsverarbeitung und Informationstechnik
Dienstsitz Bonn
An der Küppe 2
53225 Bonn
Tel.: +49 228 99 680 5298
e-mail: extern.martin.gr...@zivit.de



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#671238: linux-image-2.6.32-5-s390x: no CMM with z/VM Resource Manager possible

2012-05-02 Thread Martin Grimm
Package: linux-2.6
Version: 2.6.32-41
Severity: normal


CMM (Cooperative Memory Management) can't be controlled from z/VM
Resource Manager because the core component (cmm) is builtin and
the needed communication module (smsgiucv) is build as a module.
Loading the module smsgiucv doesn't help.
Building the kernel with cmm as a module an loading it autoloads
smsgiucv before and controlling cmm via z/VM works fine.

Greetings
Martin

-- Package-specific info:
** Version:
Linux version 2.6.32-5-s390x (Debian 2.6.32-41) (b...@decadent.org.uk) (gcc 
version 4.3.5 (Debian 4.3.5-4) ) #1 SMP Mon Jan 16 15:10:12 UTC 2012

** Command line:
ro dasd=200-21f vmpoff=LOGOFF root=/dev/dasdb1 elevator=deadline BOOT_IMAGE=0

** Not tainted

** Kernel log:
[0.00] Inode-cache hash table entries: 65536 (order: 7, 524288 bytes)
[0.00] Memory: 1013884k/1048576k available (3475k kernel code, 0k 
reserved, 1844k data, 220k init)
[0.00] Write protected kernel read-only data: 0x12000 - 0x4dcfff
[0.00] SLUB: Genslabs=13, HWalign=256, Order=0-3, MinObjects=0, 
CPUs=32, Nodes=1
[0.00] Hierarchical RCU implementation.
[0.00] console [ttyS0] enabled
[0.102661] Calibrating delay loop (skipped)... 7668.00 BogoMIPS preset
[0.102706] Security Framework initialized
[0.102720] SELinux:  Disabled at boot.
[0.102747] Mount-cache hash table entries: 256
[0.103105] Initializing cgroup subsys ns
[0.103537] Initializing cgroup subsys cpuacct
[0.103551] Initializing cgroup subsys devices
[0.103556] Initializing cgroup subsys freezer
[0.103561] Initializing cgroup subsys net_cls
[0.103867] cpu: 4 configured CPUs, 0 standby CPUs
[0.104060] cpu: Processor 0 started, address 0, identification 06A18A
[0.105039] cpu: Processor 1 started, address 0, identification 06A18A
[0.105317] cpu: Processor 2 started, address 0, identification 06A18A
[0.105519] cpu: Processor 3 started, address 0, identification 06A18A
[0.105546] Brought up 4 CPUs
[0.105569] CPU0 attaching sched-domain:
[0.105574]  domain 0: span 0-3 level MC
[0.105577]   groups: group 01e3d218 cpus 0 group 01e4d218 
cpus 1 group 01e5d218 cpus 2 group 01e6d218 cpus 3
[0.105585] CPU1 attaching sched-domain:
[0.105588]  domain 0: span 0-3 level MC
[0.105590]   groups: group 01e4d218 cpus 1 group 01e5d218 
cpus 2 group 01e6d218 cpus 3 group 01e3d218 cpus 0
[0.105598] CPU2 attaching sched-domain:
[0.105600]  domain 0: span 0-3 level MC
[0.105602]   groups: group 01e5d218 cpus 2 group 01e6d218 
cpus 3 group 01e3d218 cpus 0 group 01e4d218 cpus 1
[0.105610] CPU3 attaching sched-domain:
[0.105612]  domain 0: span 0-3 level MC
[0.105614]   groups: group 01e6d218 cpus 3 group 01e3d218 
cpus 0 group 01e4d218 cpus 1 group 01e5d218 cpus 2
[0.106125] devtmpfs: initialized
[0.106618] regulator: core version 0.5
[0.106712] NET: Registered protocol family 16
[0.107752] bio: create slab bio-0 at 0
[0.177270] NET: Registered protocol family 2
[0.177454] IP route cache hash table entries: 32768 (order: 6, 262144 bytes)
[0.177936] TCP established hash table entries: 65536 (order: 8, 1048576 
bytes)
[0.179254] TCP bind hash table entries: 65536 (order: 8, 1048576 bytes)
[0.180569] TCP: Hash tables configured (established 65536 bind 65536)
[0.180575] TCP reno registered
[0.180953] NET: Registered protocol family 1
[0.181033] Unpacking initramfs...
[0.388320] Freeing initrd memory: 7962k freed
[0.389568] audit: initializing netlink socket (disabled)
[0.389600] type=2000 audit(1332325754.121:1): initialized
[0.390265] HugeTLB registered 1 MB page size, pre-allocated 0 pages
[0.392203] VFS: Disk quotas dquot_6.5.2
[0.392292] Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[0.392424] msgmni has been set to 1997
[0.393146] alg: No test for stdrng (krng)
[0.393214] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 
254)
[0.393222] io scheduler noop registered
[0.393228] io scheduler anticipatory registered
[0.393234] io scheduler deadline registered (default)
[0.393298] io scheduler cfq registered
[0.393927] cio: Channel measurement facility initialized using format 
extended (mode autodetected)
[0.394980] TCP cubic registered
[0.395115] NET: Registered protocol family 10
[0.396450] Mobile IPv6
[0.396460] NET: Registered protocol family 17
[0.396524] PM: Resume from disk failed.
[0.396529] registered taskstats version 1
[0.396704] Initalizing network drop monitor service
[0.396783] Freeing unused kernel memory: 220k freed
[0.415296] udev[67]: starting version 164
[0.435185] qeth: loading core functions
[0.441400] dasd-fba 0.0.0200: New FBA DASD 9336/10 (CU 6310/80) with 512 MB 
and 

Bug#513256: release-notes: Risc of loss of data on s390 architecture when running under not fully updated z/VM.

2009-01-27 Thread Martin Grimm
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Package: release-notes
Severity: important

The release notes should warn that running Debian Lenny under z/VM
5.3 prior to service level 802 will likely lead to filesystem corruption
and at least RSU 5305 should be applied before running or upgrading to
Lenny.

Starting with Kernel 2.6.25, Linux on the s390 architecture running
under z/VM hypervisor uses a new CCW for DASD access that triggers an
error in z/VM leading to I/O errors and finally file system inconsistency.

This error could be confirmed running z/VM 5.3 with RSU (Recommended
Service Update) 5304 and was fixed by IBM in RSU 5305 (service level 802).

IBM problem report:
http://www-01.ibm.com/support/docview.wss?uid=isg1VM64417
(in the problem report a z/OS guest ist mentioned, nevertheless this
problem also affects linux guests).

Greetings,
Martin

- -- System Information:
Debian Release: 5.0
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: s390 (s390x)

Kernel: Linux 2.6.26-1-s390x (SMP w/1 CPU core)
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/bash

- --
- 
Martin Grimm
IT-Consultant

Millenux GmbH  Tel. +49 711 88770-178
Lilienthalstraße 2/1   Fax  +49 711 88770-349
70825 Korntal/Stuttgartmartin.gr...@millenux.com
http://www.millenux.com

Geschäftsführer: Markus Klingspor, Thomas Uhl
Sitz und Amtsgericht Stuttgart, HRB 21058
- 
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFJfzxVNI3HwMgXf7ERAuv6AJ9IfpunW6Jji/qR0K2bf/26Tgk1IwCdEGPb
63wyNel40FKUfugggBvLUR0=
=VS1y
-END PGP SIGNATURE-



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



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

2007-02-01 Thread Martin Grimm
Frans Pop schrieb:
 On Thursday 25 January 2007 13:24, Martin Grimm wrote:
 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.
 
 Your patch has been applied and a new version uploaded (with minor 
 modifications).
 
 It would be great if you could test the new version and let us knows if it 
 works correctly. It should be available in the next daily built image, 
 i.e. in about 24 hours.
 
 Thanks,
 FJP

Tested with daily built from Feb 01 2007. Works correctly :-)

Greetings,
Martin

-- 
--
Martin Grimm [EMAIL PROTECTED]
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


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



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

2007-01-25 Thread Martin Grimm
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 [EMAIL PROTECTED]
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.0 +0200
+++ s390-netdevice-0.0.15/debian/s390-netdevice.templates	2007-01-17 13:51:38.0 +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.0 +0200
+++ s390-netdevice-0.0.15/netdevice.c	2007-01-22 13:54:09.0 +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