Re: [PATCH] undo 2.5.34 ftape damage

From: Sam Ravnborg (sam@ravnborg.org)
Date: Tue Sep 10 2002 - 14:15:44 EST


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
+

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sun Sep 15 2002 - 22:00:22 EST