Changeset ae6021d in mainline for uspace/lib/c/generic/as.c


Ignore:
Timestamp:
2016-09-02T15:44:09Z (8 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
e755b3f
Parents:
c1f7a315
Message:

Associate each paged as_area with its memory object upon creation

This will allow us to have one pager fibril per task rather than one
per paged area.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/c/generic/as.c

    rc1f7a315 rae6021d  
    4545/** Create address space area.
    4646 *
    47  * @param base  Starting virtual address of the area.
    48  *              If set to AS_AREA_ANY ((void *) -1),
    49  *              the kernel finds a mappable area.
    50  * @param size  Size of the area.
    51  * @param flags Flags describing type of the area.
    52  * @param pager If non-negative, phone to the external pager backing the area.
    53  *              If AS_AREA_UNPAGED (-1), the area is anonymous.
     47 * @param base       Starting virtual address of the area.
     48 *                   If set to AS_AREA_ANY ((void *) -1), the kernel finds a
     49 *                  mappable area.
     50 * @param size       Size of the area.
     51 * @param flags      Flags describing type of the area.
     52 * @param pager_info Pager info structure or AS_AREA_UNPAGED (NULL) if the area
     53 *                   is not paged (i.e. anonymous).
    5454 *
    5555 * @return Starting virtual address of the created area on success.
     
    5757 *
    5858 */
    59 void *as_area_create(void *base, size_t size, unsigned int flags, int pager)
     59void *as_area_create(void *base, size_t size, unsigned int flags,
     60    as_area_pager_info_t *pager_info)
    6061{
    6162        return (void *) __SYSCALL5(SYS_AS_AREA_CREATE, (sysarg_t) base,
    6263            (sysarg_t) size, (sysarg_t) flags, (sysarg_t) __entry,
    63             (sysarg_t) pager);
     64            (sysarg_t) pager_info);
    6465}
    6566
Note: See TracChangeset for help on using the changeset viewer.