Hi,

  I find two small questions which confuse me a little.

1.
# Check signature at end of setup
       cmpl    $0x5a5aaa55, setup_sig
       jne     setup_bad

setup_sig is defined in setup.ld, which points to the constant also
defined in setup.ld, so I don't figure out in which case they don't
equal and jump to setup_bad?

In my test, drop these 2 lines seems fine, system can boot without any
obvious error.

2.
# Zero the bss
        movw    $__bss_start, %di
        movw    $_end+3, %cx
        xorl    %eax, %eax
        subw    %di, %cx
        shrw    $2, %cx
        rep; stosl

It is not a big deal, but I think replace "_end" with "__bss_end" make
more sense, and "_end" is already aligned to word length. And, there is
no other code use symbol "__bss_end". So I don't know is there any
reason to use "_end" here?

In my test, replace the 2nd line with:

        movw    $_end, %cx

or:

        movw    $__bss_end+3, %cx

are both fine.

-- 
Sincerely,
Cao jin


Reply via email to