lkml.org 
[lkml]   [2018]   [Mar]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: questions about header.S
From
Date
Thanks very much for you hint!

On 03/21/2018 05:57 PM, Thomas Gleixner wrote:
> On Wed, 21 Mar 2018, Cao jin wrote:
>> On 03/17/2018 06:01 PM, Cao jin wrote:
>>>   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?
>
> That's a lame sanity check to make sure that nothing overwrote the loader.
>

I see.

>>> In my test, drop these 2 lines seems fine, system can boot without any
>>> obvious error.
>
> Sure it does as long as you have no corruption.
>
>>> 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?
>
> It doesn't matter at all. But its also pointless to change it.
>

It does not matter and is pointless to change for kernel itself. It just
may confuse a little for newbies who has interests.

--
Sincerely,
Cao jin


\
 
 \ /
  Last update: 2018-03-22 03:32    [W:0.297 / U:0.176 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site