* [PATCH] s390 update (3/9): listing & kerntypes.
@ 2003-03-26 15:07 Martin Schwidefsky
2003-03-26 15:42 ` Christoph Hellwig
0 siblings, 1 reply; 7+ messages in thread
From: Martin Schwidefsky @ 2003-03-26 15:07 UTC (permalink / raw)
To: linux-kernel, torvalds
Remove rule to generate kernel listing. Add code to generate kerntypes for
use with the lkcd utils.
diffstat:
s390/Makefile | 6 ++---
s390/boot/Makefile | 18 +++++++---------
s390/boot/kerntypes.c | 53 +++++++++++++++++++++++++++++++++++++++++++++++++
s390x/Makefile | 6 ++---
s390x/boot/Makefile | 17 ++++++---------
s390x/boot/kerntypes.c | 53 +++++++++++++++++++++++++++++++++++++++++++++++++
6 files changed, 127 insertions(+), 26 deletions(-)
diff -urN linux-2.5.66/arch/s390/Makefile linux-2.5.66-s390/arch/s390/Makefile
--- linux-2.5.66/arch/s390/Makefile Mon Mar 24 23:00:08 2003
+++ linux-2.5.66-s390/arch/s390/Makefile Wed Mar 26 15:45:11 2003
@@ -18,7 +18,7 @@
LDFLAGS_vmlinux := -e start
LDFLAGS_BLOB := --format binary --oformat elf32-s390
-CFLAGS += -pipe -fno-strength-reduce -finline-limit=10000 -Wno-sign-compare
+CFLAGS += -pipe -fno-strength-reduce -finline-limit-10000 -Wno-sign-compare
head-y := arch/$(ARCH)/kernel/head.o arch/$(ARCH)/kernel/init_task.o
@@ -30,9 +30,9 @@
makeboot =$(Q)$(MAKE) -f scripts/Makefile.build obj=arch/$(ARCH)/boot $(1)
-all: image listing
+all: image kerntypes.o
-listing image: vmlinux
+image kerntypes.o: vmlinux
$(call makeboot,arch/$(ARCH)/boot/$@)
install: vmlinux
diff -urN linux-2.5.66/arch/s390/boot/Makefile linux-2.5.66-s390/arch/s390/boot/Makefile
--- linux-2.5.66/arch/s390/boot/Makefile Mon Mar 24 23:01:53 2003
+++ linux-2.5.66-s390/arch/s390/boot/Makefile Wed Mar 26 15:45:11 2003
@@ -2,19 +2,17 @@
# Makefile for the linux s390-specific parts of the memory manager.
#
-targets := image listing
-EXTRA_AFLAGS := -traditional
-quiet_cmd_listing = OBJDUMP $@
- cmd_listing = $(OBJDUMP) --disassemble --disassemble-all \
- --disassemble-zeroes --reloc vmlinux > $@
+COMPILE_VERSION := __linux_compile_version_id__`hostname`__`date | \
+ tr -c '[0-9A-Za-z]' '_'`_t
-$(obj)/image: vmlinux FORCE
- $(call if_changed,objcopy)
+EXTRA_CFLAGS := -DCOMPILE_VERSION=$(COMPILE_VERSION) -gstabs -I .
+EXTRA_AFLAGS := -traditional
-$(obj)/listing: vmlinux FORCE
- $(call if_changed,listing)
+targets := image kerntypes.o
+$(obj)/image: vmlinux FORCE
+ $(call if_changed,objcopy)
install: $(CONFIGURE) $(obj)/image
sh -x $(obj)/install.sh $(KERNELRELEASE) $(obj)/image \
- System.map Kerntypes "$(INSTALL_PATH)"
+ System.map "$(INSTALL_PATH)"
diff -urN linux-2.5.66/arch/s390/boot/kerntypes.c linux-2.5.66-s390/arch/s390/boot/kerntypes.c
--- linux-2.5.66/arch/s390/boot/kerntypes.c Thu Jan 1 01:00:00 1970
+++ linux-2.5.66-s390/arch/s390/boot/kerntypes.c Wed Mar 26 15:45:11 2003
@@ -0,0 +1,53 @@
+/*
+ * kerntypes.c
+ *
+ * Dummy module that includes headers for all kernel types of interest.
+ * The kernel type information is used by the lcrash utility when
+ * analyzing system crash dumps or the live system. Using the type
+ * information for the running system, rather than kernel header files,
+ * makes for a more flexible and robust analysis tool.
+ *
+ * This source code is released under the GNU GPL.
+ */
+
+/* generate version for this file */
+typedef char *COMPILE_VERSION;
+
+/* General linux types */
+
+#include <linux/autoconf.h>
+#include <linux/compile.h>
+#include <linux/config.h>
+#include <linux/utsname.h>
+#include <linux/module.h>
+#include <linux/sched.h>
+#include <linux/mm.h>
+
+#include <asm/lowcore.h>
+#include <asm/debug.h>
+#include <asm/ccwdev.h>
+#include <asm/qdio.h>
+
+/* channel subsystem driver */
+#include "drivers/s390/cio/cio.h"
+#include "drivers/s390/cio/chsc.h"
+#include "drivers/s390/cio/css.h"
+#include "drivers/s390/cio/device.h"
+#include "drivers/s390/cio/qdio.h"
+
+/* dasd device driver */
+#include "drivers/s390/block/dasd_int.h"
+#include "drivers/s390/block/dasd_diag.h"
+#include "drivers/s390/block/dasd_eckd.h"
+#include "drivers/s390/block/dasd_fba.h"
+
+/* networking drivers */
+#include "drivers/s390/net/fsm.h"
+#include "drivers/s390/net/iucv.h"
+#include "drivers/s390/net/lcs.h"
+
+/* include sched.c for types:
+ * - struct prio_array
+ * - struct runqueue
+ */
+#include "kernel/sched.c"
diff -urN linux-2.5.66/arch/s390x/Makefile linux-2.5.66-s390/arch/s390x/Makefile
--- linux-2.5.66/arch/s390x/Makefile Mon Mar 24 23:00:39 2003
+++ linux-2.5.66-s390/arch/s390x/Makefile Wed Mar 26 15:45:11 2003
@@ -19,7 +19,7 @@
MODFLAGS += -fpic -D__PIC__
LDFLAGS_BLOB := --format binary --oformat elf64-s390
-CFLAGS += -pipe -fno-strength-reduce -finline-limit=10000 -Wno-sign-compare
+CFLAGS += -pipe -fno-strength-reduce -finline-limit-10000 -Wno-sign-compare
head-y := arch/$(ARCH)/kernel/head.o arch/$(ARCH)/kernel/init_task.o
@@ -30,9 +30,9 @@
makeboot =$(Q)$(MAKE) -f scripts/Makefile.build obj=arch/$(ARCH)/boot $(1)
-all: image listing
+all: image kerntypes.o
-listing image: vmlinux
+image kerntypes.o: vmlinux
$(call makeboot,arch/$(ARCH)/boot/$@)
install: vmlinux
diff -urN linux-2.5.66/arch/s390x/boot/Makefile linux-2.5.66-s390/arch/s390x/boot/Makefile
--- linux-2.5.66/arch/s390x/boot/Makefile Mon Mar 24 23:00:39 2003
+++ linux-2.5.66-s390/arch/s390x/boot/Makefile Wed Mar 26 15:45:11 2003
@@ -2,20 +2,17 @@
# Makefile for the linux s390-specific parts of the memory manager.
#
-targets := image listing
-EXTRA_AFLAGS := -traditional
+COMPILE_VERSION := __linux_compile_version_id__`hostname`__`date | \
+ tr -c '[0-9A-Za-z]' '_'`_t
-quiet_cmd_listing = OBJDUMP $@
- cmd_listing = $(OBJDUMP) --disassemble --disassemble-all \
- --disassemble-zeroes --reloc vmlinux > $@
+EXTRA_CFLAGS := -DCOMPILE_VERSION=$(COMPILE_VERSION) -gstabs -I .
+EXTRA_AFLAGS := -traditional
+
+targets := image kerntypes.o
$(obj)/image: vmlinux FORCE
$(call if_changed,objcopy)
-$(obj)/listing: vmlinux FORCE
- $(call if_changed,listing)
-
-
install: $(CONFIGURE) $(obj)/image
sh -x $(obj)/install.sh $(KERNELRELEASE) $(obj)/image \
- System.map Kerntypes "$(INSTALL_PATH)"
+ System.map "$(INSTALL_PATH)"
diff -urN linux-2.5.66/arch/s390x/boot/kerntypes.c linux-2.5.66-s390/arch/s390x/boot/kerntypes.c
--- linux-2.5.66/arch/s390x/boot/kerntypes.c Thu Jan 1 01:00:00 1970
+++ linux-2.5.66-s390/arch/s390x/boot/kerntypes.c Wed Mar 26 15:45:11 2003
@@ -0,0 +1,53 @@
+/*
+ * kerntypes.c
+ *
+ * Dummy module that includes headers for all kernel types of interest.
+ * The kernel type information is used by the lcrash utility when
+ * analyzing system crash dumps or the live system. Using the type
+ * information for the running system, rather than kernel header files,
+ * makes for a more flexible and robust analysis tool.
+ *
+ * This source code is released under the GNU GPL.
+ */
+
+/* generate version for this file */
+typedef char *COMPILE_VERSION;
+
+/* General linux types */
+
+#include <linux/autoconf.h>
+#include <linux/compile.h>
+#include <linux/config.h>
+#include <linux/utsname.h>
+#include <linux/module.h>
+#include <linux/sched.h>
+#include <linux/mm.h>
+
+#include <asm/lowcore.h>
+#include <asm/debug.h>
+#include <asm/ccwdev.h>
+#include <asm/qdio.h>
+
+/* channel subsystem driver */
+#include "drivers/s390/cio/cio.h"
+#include "drivers/s390/cio/chsc.h"
+#include "drivers/s390/cio/css.h"
+#include "drivers/s390/cio/device.h"
+#include "drivers/s390/cio/qdio.h"
+
+/* dasd device driver */
+#include "drivers/s390/block/dasd_int.h"
+#include "drivers/s390/block/dasd_diag.h"
+#include "drivers/s390/block/dasd_eckd.h"
+#include "drivers/s390/block/dasd_fba.h"
+
+/* networking drivers */
+#include "drivers/s390/net/fsm.h"
+#include "drivers/s390/net/iucv.h"
+#include "drivers/s390/net/lcs.h"
+
+/* include sched.c for types:
+ * - struct prio_array
+ * - struct runqueue
+ */
+#include "kernel/sched.c"
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] s390 update (3/9): listing & kerntypes.
@ 2003-03-26 16:32 Martin Schwidefsky
2003-03-26 20:06 ` Christoph Hellwig
0 siblings, 1 reply; 7+ messages in thread
From: Martin Schwidefsky @ 2003-03-26 16:32 UTC (permalink / raw)
To: Christoph Hellwig; +Cc: linux-kernel, torvalds
> No. Either we add Kerntypes to the architecture-independent code (I'm
all
> for it!) or not at all. Cludging this into s390-specific code is a very,
> very bad idea.
Well, even if the Kerntypes gets added to the architecture-independent code
we still would need some special s390 includes to get all the types we need.
In particular the common i/o layer includes would have to be added in a
architecture specific way, either by #ifdef or by special files that get
include by the common kerntypes file.
blue skies,
Martin
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] s390 update (3/9): listing & kerntypes.
2003-03-26 16:32 Martin Schwidefsky
@ 2003-03-26 20:06 ` Christoph Hellwig
0 siblings, 0 replies; 7+ messages in thread
From: Christoph Hellwig @ 2003-03-26 20:06 UTC (permalink / raw)
To: Martin Schwidefsky; +Cc: Christoph Hellwig, linux-kernel, torvalds
On Wed, Mar 26, 2003 at 05:32:12PM +0100, Martin Schwidefsky wrote:
>
> > No. Either we add Kerntypes to the architecture-independent code (I'm
> all
> > for it!) or not at all. Cludging this into s390-specific code is a very,
> > very bad idea.
> Well, even if the Kerntypes gets added to the architecture-independent code
> we still would need some special s390 includes to get all the types we need.
The patches from the lkcd folks don't seem to need additional includes.
Please argue with them instead of trying to push such changes through the
backdoor.
^ permalink raw reply [flat|nested] 7+ messages in thread
[parent not found: <20030326164014$3fac@gated-at.bofh.it>]
* Re: [PATCH] s390 update (3/9): listing & kerntypes.
@ 2003-03-27 12:02 Martin Schwidefsky
0 siblings, 0 replies; 7+ messages in thread
From: Martin Schwidefsky @ 2003-03-27 12:02 UTC (permalink / raw)
To: Christoph Hellwig; +Cc: Arnd Bergmann, linux-kernel
> No. The Kerntypes patch makes lots of sense even without lkcd. Once
> again I'm all in favour of adding this patch, but adding such a generic
> facility in architecture depend code is a bad idea.
I still think that due to the fact that each architecture has it own
special set of includes that this is not really a generic facility.
But anyhow if you want to do this via the lkcd patch them be it.
blue skies,
Martin
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2003-03-27 11:53 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-03-26 15:07 [PATCH] s390 update (3/9): listing & kerntypes Martin Schwidefsky
2003-03-26 15:42 ` Christoph Hellwig
2003-03-26 16:32 Martin Schwidefsky
2003-03-26 20:06 ` Christoph Hellwig
[not found] <20030326164014$3fac@gated-at.bofh.it>
[not found] ` <20030326202006$09c8@gated-at.bofh.it>
2003-03-26 23:20 ` Arnd Bergmann
2003-03-27 8:44 ` Christoph Hellwig
2003-03-27 12:02 Martin Schwidefsky
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®