2002-09-10 14:53:58

by Mikael Pettersson

[permalink] [raw]
Subject: [PATCH] undo 2.5.34 ftape damage

In the 2.5.33->2.5.34 step someone removed "export-objs" from
drivers/char/ftape/lowlevel/Makefile, which makes it impossible to build
ftape as a module since is _does_ have a number of EXPORT_SYMBOL's.

The patch below reverts that change. Linus, please apply.

/Mikael

--- linux-2.5.34/drivers/char/ftape/lowlevel/Makefile.~1~ Mon Sep 9 21:15:28 2002
+++ linux-2.5.34/drivers/char/ftape/lowlevel/Makefile Tue Sep 10 16:43:25 2002
@@ -23,6 +23,8 @@
# driver for Linux.
#

+export-objs := ftape_syms.o
+
obj-$(CONFIG_FTAPE) += ftape.o

ftape-objs := ftape-init.o fdc-io.o fdc-isr.o \


2002-09-10 19:11:36

by Sam Ravnborg

[permalink] [raw]
Subject: Re: [PATCH] undo 2.5.34 ftape damage

On Tue, Sep 10, 2002 at 04:58:38PM +0200, Mikael Pettersson wrote:
> In the 2.5.33->2.5.34 step someone removed "export-objs" from
> drivers/char/ftape/lowlevel/Makefile, which makes it impossible to build
> ftape as a module since is _does_ have a number of EXPORT_SYMBOL's.
>
> The patch below reverts that change. Linus, please apply.

The reason for this error to pop up is the usage of the FT_KSYM macro
in ftape_syms.c.
That exist solely for backwards compatibility for kernel 2.1.18 and older.
Better clean it up as follows.
Compiled, not tested.

Sam

===== drivers/char/ftape/lowlevel/ftape_syms.c 1.1 vs edited =====
--- 1.1/drivers/char/ftape/lowlevel/ftape_syms.c Tue Feb 5 18:40:05 2002
+++ edited/drivers/char/ftape/lowlevel/ftape_syms.c Tue Sep 10 21:14:26 2002
@@ -42,62 +42,48 @@
#include "../lowlevel/ftape-buffer.h"
#include "../lowlevel/ftape-format.h"

-#if LINUX_VERSION_CODE >= KERNEL_VER(2,1,18)
-# define FT_KSYM(sym) EXPORT_SYMBOL(sym);
-#else
-# define FT_KSYM(sym) X(sym),
-#endif
-
-#if LINUX_VERSION_CODE < KERNEL_VER(2,1,18)
-struct symbol_table ftape_symbol_table = {
-#include <linux/symtab_begin.h>
-#endif
/* bad sector handling from ftape-bsm.c */
-FT_KSYM(ftape_get_bad_sector_entry)
-FT_KSYM(ftape_find_end_of_bsm_list)
+EXPORT_SYMBOL(ftape_get_bad_sector_entry);
+EXPORT_SYMBOL(ftape_find_end_of_bsm_list);
/* from ftape-rw.c */
-FT_KSYM(ftape_set_state)
+EXPORT_SYMBOL(ftape_set_state);
/* from ftape-ctl.c */
-FT_KSYM(ftape_seek_to_bot)
-FT_KSYM(ftape_seek_to_eot)
-FT_KSYM(ftape_abort_operation)
-FT_KSYM(ftape_get_status)
-FT_KSYM(ftape_enable)
-FT_KSYM(ftape_disable)
-FT_KSYM(ftape_mmap)
-FT_KSYM(ftape_calibrate_data_rate)
+EXPORT_SYMBOL(ftape_seek_to_bot);
+EXPORT_SYMBOL(ftape_seek_to_eot);
+EXPORT_SYMBOL(ftape_abort_operation);
+EXPORT_SYMBOL(ftape_get_status);
+EXPORT_SYMBOL(ftape_enable);
+EXPORT_SYMBOL(ftape_disable);
+EXPORT_SYMBOL(ftape_mmap);
+EXPORT_SYMBOL(ftape_calibrate_data_rate);
/* from ftape-io.c */
-FT_KSYM(ftape_reset_drive)
-FT_KSYM(ftape_command)
-FT_KSYM(ftape_parameter)
-FT_KSYM(ftape_ready_wait)
-FT_KSYM(ftape_report_operation)
-FT_KSYM(ftape_report_error)
+EXPORT_SYMBOL(ftape_reset_drive);
+EXPORT_SYMBOL(ftape_command);
+EXPORT_SYMBOL(ftape_parameter);
+EXPORT_SYMBOL(ftape_ready_wait);
+EXPORT_SYMBOL(ftape_report_operation);
+EXPORT_SYMBOL(ftape_report_error);
/* from ftape-read.c */
-FT_KSYM(ftape_read_segment_fraction)
-FT_KSYM(ftape_zap_read_buffers)
-FT_KSYM(ftape_read_header_segment)
-FT_KSYM(ftape_decode_header_segment)
+EXPORT_SYMBOL(ftape_read_segment_fraction);
+EXPORT_SYMBOL(ftape_zap_read_buffers);
+EXPORT_SYMBOL(ftape_read_header_segment);
+EXPORT_SYMBOL(ftape_decode_header_segment);
/* from ftape-write.c */
-FT_KSYM(ftape_write_segment)
-FT_KSYM(ftape_start_writing)
-FT_KSYM(ftape_loop_until_writes_done)
+EXPORT_SYMBOL(ftape_write_segment);
+EXPORT_SYMBOL(ftape_start_writing);
+EXPORT_SYMBOL(ftape_loop_until_writes_done);
/* from ftape-buffer.h */
-FT_KSYM(ftape_set_nr_buffers)
+EXPORT_SYMBOL(ftape_set_nr_buffers);
/* from ftape-format.h */
-FT_KSYM(ftape_format_track)
-FT_KSYM(ftape_format_status)
-FT_KSYM(ftape_verify_segment)
+EXPORT_SYMBOL(ftape_format_track);
+EXPORT_SYMBOL(ftape_format_status);
+EXPORT_SYMBOL(ftape_verify_segment);
/* from tracing.c */
#ifndef CONFIG_FT_NO_TRACE_AT_ALL
-FT_KSYM(ftape_tracing)
-FT_KSYM(ftape_function_nest_level)
-FT_KSYM(ftape_trace_call)
-FT_KSYM(ftape_trace_exit)
-FT_KSYM(ftape_trace_log)
-#endif
-/* end of ksym table */
-#if LINUX_VERSION_CODE < KERNEL_VER(2,1,18)
-#include <linux/symtab_end.h>
-};
+EXPORT_SYMBOL(ftape_tracing);
+EXPORT_SYMBOL(ftape_function_nest_level);
+EXPORT_SYMBOL(ftape_trace_call);
+EXPORT_SYMBOL(ftape_trace_exit);
+EXPORT_SYMBOL(ftape_trace_log);
#endif
+

2002-09-10 20:26:22

by Thunder from the hill

[permalink] [raw]
Subject: Re: [PATCH] undo 2.5.34 ftape damage

Hi,

On Tue, 10 Sep 2002, Mikael Pettersson wrote:
> In the 2.5.33->2.5.34 step someone removed "export-objs" from
> drivers/char/ftape/lowlevel/Makefile, which makes it impossible to build
> ftape as a module since is _does_ have a number of EXPORT_SYMBOL's.

This is the expsyms output. Draw your own conclusions on what should be
done.

Remove arch/arm/kernel/apm.o.
Remove arch/arm/mach-clps711x/leds-p720t.o.
Remove arch/arm/mach-integrator/leds.o.
Add arch/arm/mach-ftvpci/leds.o.
Remove arch/arm/mach-pxa/irq.o.
Remove arch/arm/mach-pxa/sa1111.o.
Remove arch/arm/mach-sa1100/irq.o.
Remove arch/arm/mach-sa1100/usb_ctl.o.
Remove arch/arm/mach-sa1100/usb_recv.o.
Remove arch/arm/mach-sa1100/usb_send.o.
Remove arch/ppc/amiga/amiga_ksyms.o.
Remove drivers/char/ftape/zftape/zftape_syms.o. <-- Bugger?
Remove drivers/char/pty.o.
Add drivers/usb/class/usb-midi.o.

Thunder
--
--./../...-/. -.--/---/..-/.-./..././.-../..-. .---/..-/.../- .-
--/../-./..-/-/./--..-- ../.----./.-../.-.. --./../...-/. -.--/---/..-
.- -/---/--/---/.-./.-./---/.--/.-.-.-
--./.-/-.../.-./.././.-../.-.-.-

2002-09-10 21:58:23

by Russell King

[permalink] [raw]
Subject: Re: [PATCH] undo 2.5.34 ftape damage

On Tue, Sep 10, 2002 at 02:31:17PM -0600, Thunder from the hill wrote:
> This is the expsyms output. Draw your own conclusions on what should be
> done.

We've been through this before. I'd have thought you'd have learnt by
now, but you've obviously got some bug bear here that you can't get
over.

This is getting worse than ESR.

> Remove arch/arm/kernel/apm.o.
> Remove arch/arm/mach-clps711x/leds-p720t.o.
> Remove arch/arm/mach-integrator/leds.o.
> Add arch/arm/mach-ftvpci/leds.o.
> Remove arch/arm/mach-pxa/irq.o.
> Remove arch/arm/mach-pxa/sa1111.o.
> Remove arch/arm/mach-sa1100/irq.o.
> Remove arch/arm/mach-sa1100/usb_ctl.o.
> Remove arch/arm/mach-sa1100/usb_recv.o.
> Remove arch/arm/mach-sa1100/usb_send.o.
> Remove arch/ppc/amiga/amiga_ksyms.o.
> Remove drivers/char/ftape/zftape/zftape_syms.o. <-- Bugger?
> Remove drivers/char/pty.o.
> Add drivers/usb/class/usb-midi.o.
>
> Thunder
> --
> --./../...-/. -.--/---/..-/.-./..././.-../..-. .---/..-/.../- .-
> --/../-./..-/-/./--..-- ../.----./.-../.-.. --./../...-/. -.--/---/..-
> .- -/---/--/---/.-./.-./---/.--/.-.-.-
> --./.-/-.../.-./.././.-../.-.-.-
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/

--
Russell King ([email protected]) The developer of ARM Linux
http://www.arm.linux.org.uk/personal/aboutme.html

2002-09-10 22:04:51

by Thunder from the hill

[permalink] [raw]
Subject: Re: [PATCH] undo 2.5.34 ftape damage

Hi,

On Tue, 10 Sep 2002, Russell King wrote:
> On Tue, Sep 10, 2002 at 02:31:17PM -0600, Thunder from the hill wrote:
> > This is the expsyms output. Draw your own conclusions on what should be
> > done.
>
> We've been through this before. I'd have thought you'd have learnt by
> now, but you've obviously got some bug bear here that you can't get
> over.

I'm aware of that. I just produced the output, which after all shows that
there's not too much wrong these days, obviously. I didn't send any patch,
I didn't remove the expsyms. I've not wanted to step into that again. Thus
nothing.

Thunder
--
--./../...-/. -.--/---/..-/.-./..././.-../..-. .---/..-/.../- .-
--/../-./..-/-/./--..-- ../.----./.-../.-.. --./../...-/. -.--/---/..-
.- -/---/--/---/.-./.-./---/.--/.-.-.-
--./.-/-.../.-./.././.-../.-.-.-

2002-09-11 06:46:16

by Sam Ravnborg

[permalink] [raw]
Subject: Re: [PATCH] undo 2.5.34 ftape damage

On Tue, Sep 10, 2002 at 02:31:17PM -0600, Thunder from the hill wrote:
> This is the expsyms output. Draw your own conclusions on what should be
> done.
>
[Russell king already commented the ARM stuff long time ago]
> Remove arch/ppc/amiga/amiga_ksyms.o.
False negative.
amiga_ksyms.c includes m68k/amiga/amiga_ksyms.c.

> Remove drivers/char/ftape/zftape/zftape_syms.o. <-- Bugger?
False negative. Fooled by the FT_KSYM macro.
- I will do a patch to get rid of FT_KSYM shortly.

> Remove drivers/char/pty.o.
Correct.
- Patch will follow.

> Add drivers/usb/class/usb-midi.o.
Correct.

Sam