[lkml]   [2000]   [Feb]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: how does kernel get the "current" task struct?
    Manfred Spraul wrote:
    > "H. Peter Anvin" wrote:
    > > Wrong. It's %esp with a whole bunch of bits *MASKED*. This works
    > > because the per-task area -- which includes the kernel stack -- is 8K
    > > in size and aligned on an 8K boundary.
    > >
    > Could you check the buddy allocator?
    > I think that the zoned buddy allocator aligns memory allocations
    > relative to the beginning of the zone, and not relative to the physical
    > address.
    > I.e. if a zone starts at 0x00001000, then an 8K allocation will be
    > unaligned. This could be a problem for CONFIG_DISCONTIG_MEM computers
    > [normal i386 zones start at 0, 16MB, 4GB --> no alignment problems]

    This is i386-specific though; effectively a way to deal with its
    register-starved set. This isn't done with kmalloc(), as far as I know:
    kmalloc() doesn't even *exist* at that point...


    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    Please read the FAQ at

     \ /
      Last update: 2005-03-22 13:56    [W:0.030 / U:219.904 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site