2003-11-19 03:39:23

by Thomas Habets

[permalink] [raw]
Subject: PATCH: forgotten EXPORT_SYMBOL()s on sparc

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


These two symbols not exported on sparc made my life (well, my evening
anyway) hell (well... long anyway). I couldn't load a bunch of modules, like
sunrpc and ipv6 until I added them.

Note that these two lines are probably in the wrong place in the file.
Bleh, my mailclient is doing evil things to the patch, but it's only two
lines, so it should be clear.

Also, I wonder what the status is for keyboard, mouse and framebuffer is for
2.6.0 on sparc. None of them seem to work right now.

- --- linux-2.6.0-test9.orig/arch/sparc/kernel/sparc_ksyms.c 2003-10-25
20:42:54.000000000 +0200
+++ linux-2.6.0-test9/arch/sparc/kernel/sparc_ksyms.c 2003-11-19
03:09:46.000000000 +0100
@@ -287,6 +287,8 @@

/* Networking helper routines. */
/* XXX This is NOVERS because C_LABEL_STR doesn't get the version number.
-DaveM */
+EXPORT_SYMBOL(sparc_flush_page_to_ram);
+EXPORT_SYMBOL(csum_partial);
EXPORT_SYMBOL_NOVERS(__csum_partial_copy_sparc_generic);

/* No version information on this, heavily used in inline asm,

- ---------
typedef struct me_s {
char name[] = { "Thomas Habets" };
char email[] = { "[email protected]" };
char kernel[] = { "Linux 2.4" };
char *pgpKey[] = { "http://www.habets.pp.se/pubkey.txt" };
char pgp[] = { "A8A3 D1DD 4AE0 8467 7FDE 0945 286A E90A AD48 E854" };
char coolcmd[] = { "echo '. ./_&. ./_'>_;. ./_" };
} me_t;


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

iD8DBQE/uuXAKGrpCq1I6FQRAu3ZAKCrglCwluOp1wt1NXuX78CemjzQuwCbB2rA
OFRBa5wypAiFD/U2EwCVMFg=
=cNKA
-----END PGP SIGNATURE-----


2003-11-19 05:23:48

by Pete Zaitcev

[permalink] [raw]
Subject: Re: PATCH: forgotten EXPORT_SYMBOL()s on sparc

> From: Thomas Habets <[email protected]>
> Date: Wed, 19 Nov 2003 04:38:40 +0100

> - --- linux-2.6.0-test9.orig/arch/sparc/kernel/sparc_ksyms.c 2003-10-25
> 20:42:54.000000000 +0200
> +++ linux-2.6.0-test9/arch/sparc/kernel/sparc_ksyms.c 2003-11-19
> 03:09:46.000000000 +0100
> @@ -287,6 +287,8 @@
>
> /* Networking helper routines. */
> /* XXX This is NOVERS because C_LABEL_STR doesn't get the version number.
> -DaveM */
> +EXPORT_SYMBOL(sparc_flush_page_to_ram);
> +EXPORT_SYMBOL(csum_partial);
> EXPORT_SYMBOL_NOVERS(__csum_partial_copy_sparc_generic);
>
> /* No version information on this, heavily used in inline asm,

I wanted to get rid of sparc_flush_page_to_ram, but for the
moment it may be better to export it... It probably wants
to be next to phys_base, if anywhere.

The csum_partial is exported by kernel/ksyms.c. Why does it fail?

-- Pete

2003-11-19 14:43:59

by Thomas Habets

[permalink] [raw]
Subject: Re: PATCH: forgotten EXPORT_SYMBOL()s on sparc

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

On Wednesday 19 November 2003 06:23, Pete Zaitcev wrote:
> The csum_partial is exported by kernel/ksyms.c. Why does it fail?

Not on sparc? Which file do you mean exactly? There doesn't seem to be any
ksyms.c in the arch-independant part, nor in arch/sparc/. 2.6.0-test9

If fails when I try to modprobe some modules (ipv6, ...) with "Unknown symbol
csum_partial" or similar. Though I am running a stripped kernel (it wouldn't
boot otherwise, too big. And yes, I made everything that could be a module a
module).

- ---------
typedef struct me_s {
char name[] = { "Thomas Habets" };
char email[] = { "[email protected]" };
char kernel[] = { "Linux 2.4" };
char *pgpKey[] = { "http://www.habets.pp.se/pubkey.txt" };
char pgp[] = { "A8A3 D1DD 4AE0 8467 7FDE 0945 286A E90A AD48 E854" };
char coolcmd[] = { "echo '. ./_&. ./_'>_;. ./_" };
} me_t;
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (GNU/Linux)

iD8DBQE/u4DXKGrpCq1I6FQRAsOYAKD9TImfP6/URmf3VbngdUpYwPCdsQCg7Gfj
GlEfMGZuBgI4HwrFYAXqYBw=
=dAXs
-----END PGP SIGNATURE-----

2003-11-19 17:30:53

by Otto Solares

[permalink] [raw]
Subject: Re: PATCH: forgotten EXPORT_SYMBOL()s on sparc

On Wed, Nov 19, 2003 at 04:38:40AM +0100, Thomas Habets wrote:
> Also, I wonder what the status is for keyboard, mouse and framebuffer is for
> 2.6.0 on sparc. None of them seem to work right now.

framebuffer works perfectly on any sparc i have here, kbd/mouse not working
on sparcs with sunzilog chips. Hopefully someday i will find the cause or
another person much clever than i would do it.

-solca

2003-11-20 02:50:17

by David Miller

[permalink] [raw]
Subject: Re: PATCH: forgotten EXPORT_SYMBOL()s on sparc

On Wed, 19 Nov 2003 15:40:15 +0100
Thomas Habets <[email protected]> wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On Wednesday 19 November 2003 06:23, Pete Zaitcev wrote:
> > The csum_partial is exported by kernel/ksyms.c. Why does it fail?
>
> Not on sparc? Which file do you mean exactly? There doesn't seem to be any
> ksyms.c in the arch-independant part, nor in arch/sparc/. 2.6.0-test9

Peter he's right, kernel/ksyms.c got deleted and all EXPORT_SYMBOL()
instances moved to the site of the implementation.

I'll add a cleaned up version of Thomas's original patch to my tree.