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: <20081007170103.3dcb6384.akpm@linux-foundation.org>
Date:	Tue, 7 Oct 2008 17:01:03 -0700
From:	Andrew Morton <akpm@...ux-foundation.org>
To:	KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com>
Cc:	yinghai@...nel.org, mingo@...e.hu, linux-kernel@...r.kernel.org
Subject: Re: mmotm 2008-10-02-16-17 uploaded

On Wed, 8 Oct 2008 08:47:53 +0900
KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com> wrote:

> On Tue, 07 Oct 2008 09:18:03 -0700
> Yinghai Lu <yinghai@...nel.org> wrote:
> 
> > KAMEZAWA Hiroyuki wrote:
> > > I'm sorry if alread fixed.
> > > 
> > > Folloing function in git-x86.patch touches invalid address.
> > > ==
> > > +void __init early_cpu_init(void)
> > > +{
> > > +       struct cpu_dev **cdev;
> > > +       int count = 0;
> > > +
> > > +       printk("KERNEL supported cpus:\n");
> > > +       for (cdev = __x86_cpu_dev_start; cdev < __x86_cpu_dev_end; cdev++) {
> > > +               struct cpu_dev *cpudev = *cdev;
> > > +               unsigned int j;
> > > +
> > > +               if (count >= X86_VENDOR_NUM)
> > > +                       break;
> > > +               cpu_devs[count] = cpudev;
> > > +               count++;
> > > +
> > > +               for (j = 0; j < 2; j++) {
> > > +                       if (!cpudev->c_ident[j])
> > > +                               continue;
> > > +                       printk("  %s %s\n", cpudev->c_vendor,
> > > +                               cpudev->c_ident[j]);
> > > +               }
> > > +       }
> > > +
> > > +       early_identify_cpu(&boot_cpu_data);
> > >  }
> > > ==
> > > printk("  %s %s\n", cpudev->c_vendor, cpudev->c_ident[j]);
> > > touches invalid address. (following is printk() result by
> > > replacing %s with %p.
> > > ==
> > >   ffffffff8066e38a ffffffff8066e383
> > >   ffffffff8066e3ab ffffffff8066e3a2
> > >   ffffffff8066e3af ffffffff8066e3b7
> > >   807064c0c7c74855 08ec834853e58948
> > >   807064c0c7c74855 74c085fffffe9fe8
> > > ==
> > > and the kernel never boots on my box.
> > 
> > could be merging problem again.
> > 
> > please check in arch/x86/kernel/vmliux_64.lds.S
> > 
> > it should be like 
> > 
> >   __con_initcall_end = .;
> >   __x86_cpu_dev_start = .;
> >   .x86_cpu_dev.init : AT(ADDR(.x86_cpu_dev.init) - LOAD_OFFSET) {
> >         *(.x86_cpu_dev.init)
> >   }
> >   __x86_cpu_dev_end = .;
> > 
> >   DYN_ARRAY_INIT(8)
> > 
> >   SECURITY_INIT

The above is what's presently in Ingo's "tip" tree.

> Oh, yes. like this.
> ==
>  __con_initcall_end = .;
>   __x86_cpu_dev_start = .;
>   .x86_cpu_dev.init : AT(ADDR(.x86_cpu_dev.init) - LOAD_OFFSET) {
>         *(.x86_cpu_dev.init)
>   }
>   SECURITY_INIT
>   __x86_cpu_dev_end = .;
> ==
> 
> I'll try next version when it comes.

If that fixes it then Ingo's tree will need fixing too, I suppose.
--
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