Skip to contentSkip to conversation

tdfx.o and -test13

DISCUSSION J Sloan 4 participants 10 messages Dec 31, 2000 – Jan 1, 2001

lore
Share & tools
lore

J Sloan

author
#0 lore raw
Quoted 5 lines · Dieter Nützel

It haven't loaded since test13-pre1 for me. Only the 'module version' was broken. Last test12-pre7 was fine, here.
It was introduced with the Makefile cleanups.

Quoted 10 lines

--- linux/drivers/char/drm/drmP.old Thu Dec 28 16:27:34 2000
+++ linux/drivers/char/drm/drmP.h Sat Dec 23 13:57:08 2000
@@ -40,6 +40,7 @@
#include <asm/current.h>
#endif /* __alpha__ */
#include <linux/config.h>
+#include <linux/modversions.h>
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/miscdevice.h>

I just want to confirm that this small fix solves my drm problems as well - currently running -test13-pre7

Er, has anybody sent a patch to the maintainers?

jjs

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/

#1 lore raw
Quoted 9 lines
Quoted 4 lines

+#include <linux/modversions.h>
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/miscdevice.h>

I just want to confirm that this small fix solves my drm problems as well - currently running -test13-pre7

Er, has anybody sent a patch to the maintainers?

Wrong patch. Modversions.h should be getting automatically included. That is what needs fixing. You've nicely located the problem and fixed the symptoms for the module versioned case

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/

#2 lore raw
Quoted 5 lines · Alan Cox
Quoted 5 lines
Quoted 4 lines

+#include <linux/modversions.h>
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/miscdevice.h>

Quoted 8 lines
Quoted 4 lines

I just want to confirm that this small fix solves my drm problems as well - currently running -test13-pre7

Er, has anybody sent a patch to the maintainers?

Wrong patch. Modversions.h should be getting automatically included. That is what needs fixing. You've nicely located the problem and fixed the symptoms for the module versioned case

This "patch" apparently has been around since test13-pre1. I guess the maintainers are on vacation.

Frank

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/

#3 lore raw
In reply to Alan Cox
Quoted 4 lines · Alan Cox

Wrong patch. Modversions.h should be getting automatically included. That is what needs fixing. You've nicely located the problem and fixed the symptoms for the module versioned case

modversions.h is being included in the 'gcc' line, however something is overriding it
in the case of the agpsupport.c file. If you move the include <linux/modversions.h> to
the top of agpsupport.c it also works correctly.

Tony

Signature · 7 lines
Can't think of a decent signature...

[email protected]		http://www.nothing-on.tv
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/
#4 lore raw
In reply to Alan Cox
Quoted 5 lines · Tony Hoyle

modversions.h is being included in the 'gcc' line, however something is overriding it
in the case of the agpsupport.c file. If you move the include <linux/modversions.h> to
the top of agpsupport.c it also works correctly.

OK ignore the above.... putting it in agpsupport doesn't fix it.

My kernel tree went a bit T-zone after I did that. Even removing the fix totally generated
a completely working module! I had to 'make distclean' to restore the old (buggy) behaviour.

Possibly something in the auto-dependencies? Unfortunately I don't have the info files for gcc so
I can't work out why the '-include' directive would be overridden/ignored.

Tony

Signature · 7 lines
Can't think of a decent signature...

[email protected]		http://www.nothing-on.tv
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/
#5 lore raw
Quoted 4 lines

Possibly something in the auto-dependencies? Unfortunately I don't have the info files for gcc so
I can't work out why the '-include' directive would be overridden/ignored.

Im wondering if it is make dependant. It seems to be working here -
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/

#6 lore raw
Quoted 7 lines · Alan Cox
Quoted 5 lines

Possibly something in the auto-dependencies? Unfortunately I don't have the info files for gcc so
I can't work out why the '-include' directive would be overridden/ignored.

Im wondering if it is make dependant. It seems to be working here

Well I'm on:

make 3.79.1
gcc 2.95.2 20000220
ld 2.10.91
modversions 2.3.23

Tony

Signature · 7 lines
Can't think of a decent signature...

[email protected]		http://www.nothing-on.tv
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/
#7 lore raw
Quoted 1 line

make 3.79.1

Ditto

Quoted 1 line

gcc 2.95.2 20000220

gcc version 2.96 20000731 (Red Hat Linux 7.0)

and I really can't see that being relevant

Quoted 1 line

ld 2.10.91

GNU ld version 2.10.90 (with BFD 2.10.0.18)

Quoted 1 line

modversions 2.3.23

insmod version 2.3.21

I see modversions.h being included properly on the command line

Alan

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/

#8 lore raw
Quoted 2 lines · Alan Cox

I see modversions.h being included properly on the command line

Me too..

make[3]: Entering directory `/usr/src/linux/drivers/char/drm' gcc -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -fno-strict-aliasing -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include
/usr/src/linux/include/linux/modversions.h -c -o agpsupport.o
agpsupport.c
In file included from agpsupport.c:1:
/usr/src/linux/include/linux/modversions.h:3: warning: ignoring pragma:
"Modversions included

Modversions *is* being included... putting a message into the header file shows it to be correctly included at compile time. However by the time the C file is processed it the symbols it has defined appear to no longer exist. When you put the patch into drmP.h it never re-includes modversions (the pragma is not hit, because _LINUX_MODVERSIONS_H is already defined) *but* the macros within it suddenly become active.

I'm confused!

Preprocessor bug? Demon possessed compiler?

Tony (still coding at 20 minutes to midnight --- sad or what?)

Signature · 7 lines
Can't think of a decent signature...

[email protected]		http://www.nothing-on.tv
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/
#9 lore raw
In reply to Alan Cox
Quoted 23 lines · Tony Hoyle
Quoted 2 lines · Alan Cox

I see modversions.h being included properly on the command line

Me too..

make[3]: Entering directory `/usr/src/linux/drivers/char/drm' gcc -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes -O2

(quoted diff) +0 -2
-fomit-frame-pointer -fno-strict-aliasing -pipe
-mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include

/usr/src/linux/include/linux/modversions.h -c -o agpsupport.o
agpsupport.c
In file included from agpsupport.c:1:
/usr/src/linux/include/linux/modversions.h:3: warning: ignoring pragma:
"Modversions included

Modversions *is* being included... putting a message into the header file shows it to be correctly included at compile time. However by the time the C file is processed it the symbols it has defined appear to no longer exist. When you put the patch into drmP.h it never re-includes modversions (the pragma is not hit, because _LINUX_MODVERSIONS_H is already defined) *but* the macros within it suddenly become active.

Quoted 3 lines

I'm confused!

Preprocessor bug? Demon possessed compiler?

No, the pre-y2k+1 bug of course.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/