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-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2cf1ee820705180039l1d72005fq2169f8fa36e12377@mail.gmail.com>
Date:	Fri, 18 May 2007 10:39:58 +0300
From:	"emin ak" <eminak71@...il.com>
To:	"Ingo Molnar" <mingo@...e.hu>
Cc:	linux-kernel@...r.kernel.org, linux-rt-users@...r.kernel.org,
	"Thomas Gleixner" <tglx@...utronix.de>
Subject: Re: v2.6.21-rt3

Hi,
I have tried to compile -rt3 patch for ppc (mpc8540ads) and it failed
with undefined referance errors on ppc/kernel/asm-offsets.c. Here is
the compiler outputs:

  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/basic/docproc
  HOSTCC  scripts/kconfig/conf.o
  HOSTCC  scripts/kconfig/kxgettext.o
  SHIPPED scripts/kconfig/zconf.tab.c
  SHIPPED scripts/kconfig/lex.zconf.c
  SHIPPED scripts/kconfig/zconf.hash.c
  HOSTCC  scripts/kconfig/zconf.tab.o
  HOSTLD  scripts/kconfig/conf
scripts/kconfig/conf -s arch/ppc/Kconfig
  CHK     include/linux/version.h
  UPD     include/linux/version.h
  CHK     include/linux/utsrelease.h
  UPD     include/linux/utsrelease.h
  SYMLINK include/asm -> include/asm-ppc
  CC      arch/ppc/kernel/asm-offsets.s
In file included from arch/ppc/include/asm/hw_irq.h:110,
                 from include/asm/system.h:10,
                 from include/linux/list.h:9,
                 from include/linux/signal.h:8,
                 from arch/ppc/kernel/asm-offsets.c:11:
include/linux/irqflags.h:92:1: warning: "raw_local_irq_save" redefined
In file included from include/asm/system.h:10,
                 from include/linux/list.h:9,
                 from include/linux/signal.h:8,
                 from arch/ppc/kernel/asm-offsets.c:11:
arch/ppc/include/asm/hw_irq.h:103:1: warning: this is the location of
the previous definition
In file included from arch/ppc/include/asm/hw_irq.h:110,
                 from include/asm/system.h:10,
                 from include/linux/list.h:9,
                 from include/linux/signal.h:8,
                 from arch/ppc/kernel/asm-offsets.c:11:
include/linux/irqflags.h:97:1: warning: "raw_local_irq_restore" redefined
In file included from include/asm/system.h:10,
                 from include/linux/list.h:9,
                 from include/linux/signal.h:8,
                 from arch/ppc/kernel/asm-offsets.c:11:
arch/ppc/include/asm/hw_irq.h:59:1: warning: this is the location of
the previous definition
In file included from include/linux/time.h:7,
                 from include/linux/timex.h:57,
                 from include/linux/sched.h:51,
                 from arch/ppc/kernel/asm-offsets.c:12:
include/linux/seqlock.h: In function '__read_seqretry':
include/linux/seqlock.h:139: warning: implicit declaration of function
'local_irq_save'
include/linux/seqlock.h:140: warning: implicit declaration of function
'local_irq_restore'
arch/ppc/kernel/asm-offsets.c: In function 'main':
arch/ppc/kernel/asm-offsets.c:148: error: 'struct vdso_data' has no
member named 'tb_orig_stamp'
arch/ppc/kernel/asm-offsets.c:149: error: 'struct vdso_data' has no
member named 'tb_ticks_per_sec'
arch/ppc/kernel/asm-offsets.c:150: error: 'struct vdso_data' has no
member named 'tb_to_xs'
arch/ppc/kernel/asm-offsets.c:151: error: 'struct vdso_data' has no
member named 'stamp_xsec'
arch/ppc/kernel/asm-offsets.c:152: error: 'struct vdso_data' has no
member named 'tb_update_count'
arch/ppc/kernel/asm-offsets.c:153: error: 'struct vdso_data' has no
member named 'tz_minuteswest'
arch/ppc/kernel/asm-offsets.c:154: error: 'struct vdso_data' has no
member named 'tz_dsttime'
arch/ppc/kernel/asm-offsets.c:156: error: 'struct vdso_data' has no
member named 'wtom_clock_sec'
arch/ppc/kernel/asm-offsets.c:157: error: 'struct vdso_data' has no
member named 'wtom_clock_nsec'
make[1]: *** [arch/ppc/kernel/asm-offsets.s] Error 1
make: *** [prepare0] Error 2


For a workaround to overcome this problem, I have applied below patch
to asm-offsets.c:

diff -uNr linux-2.6.21/arch/ppc/kernel/asm-offsets.c
linux-2.6.21_orig/arch/ppc/kernel/asm-offsets.c
--- linux-2.6.21/arch/ppc/kernel/asm-offsets.c  2007-05-18
09:47:03.000000000 +0300
+++ linux-2.6.21_orj/arch/ppc/kernel/asm-offsets.c      2007-04-26
06:08:32.000000000 +0300
@@ -145,7 +145,6 @@
        DEFINE(NUM_USER_SEGMENTS, TASK_SIZE>>28);

        /* datapage offsets for use by vdso */
-#ifdef CONFIG_PPC64
        DEFINE(CFG_TB_ORIG_STAMP, offsetof(struct vdso_data, tb_orig_stamp));
        DEFINE(CFG_TB_TICKS_PER_SEC, offsetof(struct vdso_data,
tb_ticks_per_sec));
        DEFINE(CFG_TB_TO_XS, offsetof(struct vdso_data, tb_to_xs));
@@ -153,11 +152,9 @@
        DEFINE(CFG_TB_UPDATE_COUNT, offsetof(struct vdso_data,
tb_update_count));
        DEFINE(CFG_TZ_MINUTEWEST, offsetof(struct vdso_data, tz_minuteswest));
        DEFINE(CFG_TZ_DSTTIME, offsetof(struct vdso_data, tz_dsttime));
+       DEFINE(CFG_SYSCALL_MAP32, offsetof(struct vdso_data, syscall_map_32));
        DEFINE(WTOM_CLOCK_SEC, offsetof(struct vdso_data, wtom_clock_sec));
        DEFINE(WTOM_CLOCK_NSEC, offsetof(struct vdso_data, wtom_clock_nsec));
-#endif /* CONFIG_PPC64 */
-
-       DEFINE(CFG_SYSCALL_MAP32, offsetof(struct vdso_data, syscall_map_32));
        DEFINE(TVAL32_TV_SEC, offsetof(struct timeval, tv_sec));
        DEFINE(TVAL32_TV_USEC, offsetof(struct timeval, tv_usec));
        DEFINE(TSPEC32_TV_SEC, offsetof(struct timespec, tv_sec));

Then it failed again on asm/hw_irq.h because of syntax errors. Here is
the outputs:

eminhp:/opt/tmp/linux_2.6.21/linux-2.6.21 # make uImage
scripts/kconfig/conf -s arch/ppc/Kconfig
  CHK     include/linux/version.h
  UPD     include/linux/version.h
  CHK     include/linux/utsrelease.h
  UPD     include/linux/utsrelease.h
  SYMLINK include/asm -> include/asm-ppc
  CC      arch/ppc/kernel/asm-offsets.s
In file included from arch/ppc/include/asm/hw_irq.h:110,
                 from include/asm/system.h:10,
                 from include/linux/list.h:9,
                 from include/linux/signal.h:8,
                 from arch/ppc/kernel/asm-offsets.c:11:
include/linux/irqflags.h:92:1: warning: "raw_local_irq_save" redefined
In file included from include/asm/system.h:10,
                 from include/linux/list.h:9,
                 from include/linux/signal.h:8,
                 from arch/ppc/kernel/asm-offsets.c:11:
arch/ppc/include/asm/hw_irq.h:103:1: warning: this is the location of
the previous definition
In file included from arch/ppc/include/asm/hw_irq.h:110,
                 from include/asm/system.h:10,
                 from include/linux/list.h:9,
                 from include/linux/signal.h:8,
                 from arch/ppc/kernel/asm-offsets.c:11:
include/linux/irqflags.h:97:1: warning: "raw_local_irq_restore" redefined
In file included from include/asm/system.h:10,
                 from include/linux/list.h:9,
                 from include/linux/signal.h:8,
                 from arch/ppc/kernel/asm-offsets.c:11:
arch/ppc/include/asm/hw_irq.h:59:1: warning: this is the location of
the previous definition
In file included from include/linux/time.h:7,
                 from include/linux/timex.h:57,
                 from include/linux/sched.h:51,
                 from arch/ppc/kernel/asm-offsets.c:12:
include/linux/seqlock.h: In function '__read_seqretry':
include/linux/seqlock.h:139: warning: implicit declaration of function
'local_irq_save'
include/linux/seqlock.h:140: warning: implicit declaration of function
'local_irq_restore'
  GEN     include/asm-ppc/asm-offsets.h
  CC      scripts/mod/empty.o
  HOSTCC  scripts/mod/mk_elfconfig
  MKELF   scripts/mod/elfconfig.h
  HOSTCC  scripts/mod/file2alias.o
  HOSTCC  scripts/mod/modpost.o
  HOSTCC  scripts/mod/sumversion.o
  HOSTLD  scripts/mod/modpost
  CC      init/main.o
In file included from include/asm/system.h:10,
                 from include/linux/spinlock.h:95,
                 from include/linux/module.h:9,
                 from init/main.c:13:
arch/ppc/include/asm/hw_irq.h:59:1: warning: "raw_local_irq_restore" redefined
In file included from include/linux/spinlock.h:93,
                 from include/linux/module.h:9,
                 from init/main.c:13:
include/linux/irqflags.h:97:1: warning: this is the location of the
previous definition
In file included from include/asm/system.h:10,
                 from include/linux/spinlock.h:95,
                 from include/linux/module.h:9,
                 from init/main.c:13:
arch/ppc/include/asm/hw_irq.h:65:46: error: macro
"raw_local_irq_disable" passed 1 arguments, but takes just 0
In file included from include/asm/system.h:10,
                 from include/linux/spinlock.h:95,
                 from include/linux/module.h:9,
                 from init/main.c:13:
arch/ppc/include/asm/hw_irq.h:66: error: syntax error before '{' token
arch/ppc/include/asm/hw_irq.h:77:45: error: macro
"raw_local_irq_enable" passed 1 arguments, but takes just 0
arch/ppc/include/asm/hw_irq.h:78: error: syntax error before '{' token
arch/ppc/include/asm/hw_irq.h:103:1: warning: "raw_local_irq_save" redefined
In file included from include/linux/spinlock.h:93,
                 from include/linux/module.h:9,
                 from init/main.c:13:
include/linux/irqflags.h:92:1: warning: this is the location of the
previous definition
In file included from include/linux/time.h:7,
                 from include/linux/stat.h:57,
                 from include/linux/module.h:11,
                 from init/main.c:13:
include/linux/seqlock.h: In function '__read_seqretry':
include/linux/seqlock.h:139: warning: implicit declaration of function
'local_irq_save'
include/linux/seqlock.h:140: warning: implicit declaration of function
'local_irq_restore'
In file included from include/linux/rtc.h:102,
                 from include/linux/efi.h:19,
                 from init/main.c:43:
include/linux/interrupt.h: In function 'cli':
include/linux/interrupt.h:210: warning: implicit declaration of
function 'local_irq_disable'
include/linux/interrupt.h: In function 'sti':
include/linux/interrupt.h:214: warning: implicit declaration of
function 'local_irq_enable'
include/linux/interrupt.h: In function 'save_flags':
include/linux/interrupt.h:218: warning: implicit declaration of
function 'local_save_flags'
init/main.c: In function 'start_kernel':
init/main.c:566: warning: implicit declaration of function 'irqs_disabled'
make[1]: *** [init/main.o] Error 1
make: *** [init] Error 2

Is a a compiler issue related to assembler (I'am currently using
gcc-4.0.0) or is this a bug?

Thanks alot.
Emin

2007/5/17, Ingo Molnar <mingo@...e.hu>:
> i'm pleased to announce the v2.6.21-rt3 kernel, which can be downloaded
> from the usual place:
>
>    http://redhat.com/~mingo/realtime-preempt/
>
> more info about the -rt patchset can be found in the RT wiki:
>
>    http://rt.wiki.kernel.org
>
> This is a fixes-only release assembled by Thomas Gleixner. Many PPC
> fixes from Sergei Shtylyov, dynticks softirq fixes from Mikulas Patocka,
> a CONFIG_IRQSOFF_TIMING fix from Daniel Walker and x86_64 hrt fixes from
> Thomas Gleixner.
>
> to build a 2.6.21-rt3 tree, the following patches should be applied:
>
>  http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.21.tar.bz2
>  http://redhat.com/~mingo/realtime-preempt/patch-2.6.21-rt3
>
>        Ingo
> -
> 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/
>

View attachment ".config" of type "text/plain" (18780 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ