Skip to contentSkip to conversation

Building sym 2.1.18f on linux/alpha

DISCUSSION Matthew Wilcox 1 participant 1 message Jan 14, 2004 1 message not in the archive

Subsystems (2)
lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): [email protected]

#1 lore raw
Quoted 11 lines · Sergey Tikhonov

The final kernel could not pass linking stage with 2.1.18f version (included into 2.6.1 kernel patch).
The linker complains that :
drivers/built-in.o(.init.text+0x8cec): In function 'sym2_probe':
: undfined reference to 'local symbols in discarded section .exit.text'

I compared arch/alpha/kernel/vmlinux.lds.S with one from the i386 tree. The '.exit.text' and '.exit.data'
sections were moved out of DISCARD attributes in the i386 version. I did the same with alpha version
and it helped.

Thanks for this report; you uncovered a real bug. Actually two real bugs; one is that parisc is not discarding the .init.text and .exit.text sections (so I didn't notice this bug) and the other is that sym_detach is marked __devexit, yet called from a __devinit function.

Patch follows:

Index: drivers/scsi/sym53c8xx_2/sym_glue.c
===================================================================
RCS file: /var/cvs/linux-2.6/drivers/scsi/sym53c8xx_2/sym_glue.c,v retrieving revision 1.38

drivers/scsi/sym53c8xx_2/sym_glue.c +1 -1
diff -u -p -r1.38 sym_glue.c
@@ -2228,7 +2228,7 @@ void sym_config_pqs(struct pci_dev *pdev
  *  Detach the host.
  *  We have to free resources and halt the NCR chip.
  */
-static int __devexit sym_detach(struct sym_hcb *np)
+static int sym_detach(struct sym_hcb *np)
 {
 	printk("%s: detaching ...\n", sym_name(np));
 
Signature · 6 lines
"Next the statesmen will invent cheap lies, putting the blame upon 
the nation that is attacked, and every man will be glad of those
conscience-soothing falsities, and will diligently study them, and refuse
to examine any refutations of them; and thus he will by and by convince 
himself that the war is just, and will thank God for the better sleep 
he enjoys after this process of grotesque self-deception." -- Mark Twain