Ignore:
Timestamp:
2007-01-19T12:21:27Z (19 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
718d600
Parents:
81cfefa
Message:

Beat the implicit illegal virtual alias created by reusing userspace frames.
In the anonymous and ELF backends, if the architecture has virtually indexed D-cache,
selectively flush cachelines belonging to the frame being freed.
This fixes Ticket #20.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/sparc64/include/mm/cache.h

    r81cfefa r9f63a83  
    3636#define KERN_sparc64_CACHE_H_
    3737
     38#include <mm/page.h>
     39#include <mm/frame.h>
     40
     41#define dcache_flush_page(p) \
     42        dcache_flush_color(PAGE_COLOR((p)))
     43#define dcache_flush_frame(p, f) \
     44        dcache_flush_tag(PAGE_COLOR((p)), ADDR2PFN((f)));
     45
    3846extern void dcache_flush(void);
     47extern void dcache_flush_color(int c);
     48extern void dcache_flush_tag(int c, pfn_t tag);
    3949
    4050#endif
Note: See TracChangeset for help on using the changeset viewer.