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: <Pine.LNX.4.64.0705031229300.27730@jbgna.fhfr.qr>
Date:	Thu, 3 May 2007 13:16:25 +0200 (CEST)
From:	Bernhard Kaindl <bk@...e.de>
To:	randy.dunlap@...cle.com, Andi Kleen <ak@...e.de>
cc:	patches@...-64.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] [16/34] i386: fix mtrr sections

I noticed that I can just use call graphs to make more clear what I want to say.

There is otherwise nothing new in this mail and I'll submit a new patch
which reverts this patch if my review came too late, if in doubt, just
ignore this mail, I may just refer to it later then.

> NACK - obsolete, replaced by:
> Jeremy Fitzhardinge - "x86: clean up identify_cpu"
> http://lkml.org/lkml/2007/4/7/113 [it's also patch 11/26 in this thread]
>
> It's a leftover of "__init to __cpuinit in mtrr code" (Prarit Bhargava):
> http://lkml.org/lkml/2007/2/28/198 - (acked by Bhavana Nagendra) which
> itself is rejected from Andrews tree already.
>
> Description:
> ------------
>
> This function tree (as of 2.6.21) here explains it all:
>
> __cpuinit       identify_cpu()
>     -> if BSP is inited, so only at __init time, these functions are called:
>          __init     mtrr_bp_init()
>             __init      get_mtrr_state()
>                __initdata   show_mtrr;
>                __init       print_fixed()

That was around 2.6.15 till 2.6.21.

Prarit Bhargava's patch "__init to __cpuinit in mtrr code" did this:

  __cpuinit       identify_cpu()
      -> if BSP is inited, so only at __init time, these functions are called:
-          __init        mtrr_bp_init()
-               __init        get_mtrr_state()
+          __cpuinit     mtrr_bp_init()
+               __cpuinit     get_mtrr_state()
                             (plus half a dozen other functions)
                 __initdata   show_mtrr;
                 __init       print_fixed()

and Randy's patch (on top of Prarit Bhargava's, which is removed now) does:

-                __initdata   show_mtrr;
+                             show_mtrr;
-                __init       print_fixed()
+                __cpuinit    print_fixed()

While Jeremy Fitzhardinge - "x86: clean up identify_cpu" cleans it up:

-  __cpuinit   identify_cpu()
+  __init      identify_boot_cpu()      (only does the boot-only calls)
           __init     mtrr_bp_init()
              __init      get_mtrr_state()
              (and half a dozen other functions also keep __init)
                 __initdata   show_mtrr;
                 __init       print_fixed()

which is best and Randy's patch "fix mtrr sections" is also obsolete then,
show_mtrr and print_fixed() can keep the __init/__initdata prefix.

As Andy already submitted it to Linus with http://lkml.org/lkml/2007/5/2/346
we may have to create a patch which reverts this patch.

I'm also planning to add some function headers to the MTRR functions
and also fix the existing and upcoming function headers to be complant
to kernel-doc.

Bernhard
-
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