Changeset a294ad0 in mainline for generic/include/mm/frame.h


Ignore:
Timestamp:
2006-02-02T14:00:32Z (19 years ago)
Author:
Ondrej Palkovsky <ondrap@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
2d43f3e
Parents:
758e065
Message:

Currently not-working SLAB allocator.

  • slightly changed interface to frame_alloc, allow zone preference
File:
1 edited

Legend:

Unmodified
Added
Removed
  • generic/include/mm/frame.h

    r758e065 ra294ad0  
    4040#define ONE_FRAME       0
    4141
    42 #define FRAME_KA                1       /* skip frames conflicting with user address space */
    43 #define FRAME_PANIC             2       /* panic on failure */
    44 #define FRAME_ATOMIC            4       /* do not panic and do not sleep on failure */
     42#define FRAME_KA                0x1     /* skip frames conflicting with user address space */
     43#define FRAME_PANIC             0x2     /* panic on failure */
     44#define FRAME_ATOMIC            0x4     /* do not panic and do not sleep on failure */
     45#define FRAME_NO_RECLAIM        0x8     /* Do not start reclaiming when no free memory */
    4546
    4647#define FRAME_OK                0       /* frame_alloc return status */
     
    7980        __u8 buddy_order;       /**< buddy system block order */
    8081        link_t buddy_link;      /**< link to the next free block inside one order */
    81         slab_slab_t *slab;      /**< If allocated by slab, this points there */
     82        void *parent;           /**< If allocated by slab, this points there */
    8283};
    8384
     
    101102extern void frame_initialize(frame_t *frame, zone_t *zone);
    102103
    103 __address frame_alloc(int flags, __u8 order, int * status);
     104__address frame_alloc(int flags, __u8 order, int * status, zone_t **pzone);
    104105extern void frame_free(__address addr);
    105106
     
    115116__u8 zone_buddy_get_order(buddy_system_t *b, link_t * block);
    116117void zone_buddy_mark_busy(buddy_system_t *b, link_t * block);
     118extern frame_t * frame_addr2frame(__address addr);
    117119
    118120/*
Note: See TracChangeset for help on using the changeset viewer.