lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 28 Jun 2007 17:27:55 +0530
From:	"Satyam Sharma" <satyam.sharma@...il.com>
To:	"Mike Frysinger" <vapier@...too.org>
Cc:	linuxsh-dev@...ts.sourceforge.net,
	"Adrian McMenamin" <adrian@...golddream.dyndns.info>,
	LKML <linux-kernel@...r.kernel.org>,
	"Sam Ravnborg" <sam@...nborg.org>
Subject: sh section mismatches [was Re: 2.6.22-rc6 on Dreamcast (SH4)]

Hi,

> On Monday 25 June 2007, Adrian McMenamin wrote:
> > Still getting this:
> >
> >  MODPOST vmlinux
> > WARNING: arch/sh/boards/dreamcast/built-in.o(.data+0x0): Section
> > mismatch: reference to .init.text: (between 'mv_dreamcast' and
> > 'systemasic_int')

I had sent a patch for this earlier ... Adrian, did you try (build + boot +
testrun) with it? Does this one go away (and system executes fine)?

[ http://lkml.org/lkml/diff/2007/6/23/116/1 ]

[ This has to do with __init functions calling __initmv functions in a
zillion files in arch/sh/boards/.../setup.c which is problematic when
__initmv is not __init itself (!SH_GENERIC && !SH_UNKNOWN) ]

> > WARNING: drivers/built-in.o(.text+0x168e0): Section mismatch: reference
> > to .init.data: (between 'pvr2fb_check_var' and 'pvr2fb_interrupt')
> > WARNING: drivers/built-in.o(.text+0x1701c): Section mismatch: reference
> > to .init.data: (between 'pvr2fb_pci_probe' and 'read_mem')
> > WARNING: drivers/built-in.o(.text+0x17024): Section mismatch: reference
> > to .init.text: (between 'pvr2fb_pci_probe' and 'read_mem')
> > WARNING: drivers/built-in.o(.data+0x738): Section mismatch: reference
> > to .init.text: (between 'board_list' and 'pvr2fb_pci_driver')
> > WARNING: drivers/built-in.o(.data+0x750): Section mismatch: reference
> > to .init.text: (between 'board_list' and 'pvr2fb_pci_driver')

drivers/video/pvr2fb.c is a mess with __init, __initdata, __devinit and
__devinitdata (__exit and __devexit variants for good measure) all being
used and referencing each other freely ... I have no idea what function
should actually be what. Sam normally knows about such things,
adding him to Cc: list.

On 6/28/07, Mike Frysinger <vapier@...too.org> wrote:
> it means there is code that is not marked as init making references
> function/data that is marked as init ...

These warnings are most likely bogus (still good to get rid of them,
of course).

BTW, in include/asm-sh/machvec_init.h, __initmv is:

__attribute__((__section__(".machvec.init")))	/* .machvec.init */

But from arch/sh/kernel/vmlinux.ld.S the name of the section is:

__machvec_start = .;
.init.machvec : { *(.init.machvec) }		/* .init.machvec */
__machvec_end = .;

Am I obtuse, or is there something weird about this?

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ