Messages in this thread | | | Date | Sat, 23 Feb 2008 12:07:39 +0300 | From | Cyrill Gorcunov <> | Subject | Re: [Q] x86 - boot/header.S |
| |
[Yinghai Lu - Sat, Feb 23, 2008 at 12:44:49AM -0800] | On Sat, Feb 23, 2008 at 12:20 AM, Cyrill Gorcunov <gorcunov@gmail.com> wrote: | > Hi Peter, Sam, | > | > could you take a look on x86/boot/header.S:280 please? | > | > # Zero the bss | > movw $__bss_start, %di | > movw $_end+3, %cx | > xorl %eax, %eax | > subw %di, %cx | > shrw $2, %cx | > rep; stosl | > | > I wonder why is $_end there instead of $__bss_stop? | > Well, accroding to vmlinux_32.lsd both _end and __bss_stop | > are the same BUT __bss_stop is more convenient methink. | > Would it be usefull to change? | | we should have head32.c like head64.c | and x86_32_start_kernel. | | Eric's patch long time ago... | | YH |
Hi Yinghai,
thanks for reply BUT that is not the point (or maybe I miss something).
Look, we only have head64.c - there is no head32.c at all. Both vmlinux_32/64.lds defines _end exactly the same as __bss_stop. So in code which DO fillup bss section with zeros the prefered name is __bss_stop. The only thing I'm trying to say that it would be clean naming scheme and I think it would help for further review - instead of searching all over x86 files to find _end definition __bss_stop tell us WHAT we are zeroing from the code.
- Cyrill -
| |