, including all inherited members.
__attribute__((noinline)) preinit(Utcb *utcb | Sigma0 | |
__attribute__((noreturn)) run(Utcb *utcb | Sigma0 | |
NovaProgram::__attribute__((noreturn)) block_forever() | NovaProgram | [inline, protected] |
__hip | Sigma0 | |
__pad0__ | Sigma0 | |
_cap_ | CapAllocator< NovaProgram > | [static] |
_cap_block | NovaProgram | [protected] |
_cap_order | CapAllocator< NovaProgram > | [static] |
_cap_start | CapAllocator< NovaProgram > | [static] |
_console_data | Sigma0 | |
_cpunr | Sigma0 | |
_disk_data | Sigma0 | |
_free_phys | NovaProgram | [protected] |
_free_virt | NovaProgram | [protected] |
_gsi | Sigma0 | |
_hip | NovaProgram | [protected] |
_last_affinity | Sigma0 | |
_lock_gsi | Sigma0 | |
_lock_gsi | Sigma0 | |
_lock_mem | Sigma0 | [static] |
_lock_mem | Sigma0 | |
_mac | Sigma0 | |
_mb | Sigma0 | |
_modinfo | Sigma0 | |
_msivector | Sigma0 | |
_numcpus | Sigma0 | |
_pcidirect | Sigma0 | |
_percpu | Sigma0 | |
_prod_network | Sigma0 | |
_start_config(Utcb *utcb, char *elf, unsigned long mod_size, char const *mconfig, char const *client_cmdline, unsigned sigma0_cmdlen, unsigned &internal_id) | Sigma0 | [inline] |
_vga | Sigma0 | |
_vga | Sigma0 | |
_vga_regs | Sigma0 | |
_virt_phys | NovaProgram | [protected] |
acpi(MessageAcpi &msg) | Sigma0Base | [inline, static] |
adapt_ptr_map(ModuleInfo *modinfo, unsigned long &physoffset, unsigned long &physsize) | Sigma0 | [inline, static] |
Sigma0Base::add_mappings(Utcb *utcb, unsigned long addr, unsigned long size, unsigned long hotspot, unsigned rights) | BaseProgram | [inline, static] |
NovaProgram::add_mappings(Utcb *utcb, unsigned long addr, unsigned long size, unsigned long hotspot, unsigned rights) | BaseProgram | [inline, static] |
admission | Sigma0 | |
alloc_cap(unsigned count=1) | CapAllocator< NovaProgram > | [inline, static] |
alloc_console(ModuleInfo const *modinfo, const char *cmdline) | Sigma0 | [inline] |
alloc_crd() | Sigma0 | [inline] |
alloc_module(char const *cmdline, unsigned sigma0_cmdlen) | Sigma0 | [inline] |
alloc_utcb() | NovaProgram | [inline, protected] |
assert(_cap_start==0 &&_cap_order==16 &&CLIENT_PT_OFFSET==0x20000U) | Sigma0 | |
assert(reserve &&reserve->virt<=CLIENT_PT_OFFSET &&reserve->size-(reserve->virt-CLIENT_PT_OFFSET) >=(2<< CLIENT_PT_ORDER)) | Sigma0 | |
assert(!_cap_region.find(CLIENT_PT_OFFSET)&&!_cap_region.find(CLIENT_PT_OFFSET+(1U<< CLIENT_PT_ORDER)-1U)) | Sigma0 | |
assert(!_cap_region.find(CLIENT_PT_OFFSET+(2U<< CLIENT_PT_ORDER)-1U)) | Sigma0 | |
assert(!_cap_region.find(0)) | Sigma0 | |
assert(!_cap_region.find(ParentProtocol::CAP_PT_PERCPU-1U)) | Sigma0 | |
assert(!_cap_region.find(ParentProtocol::CAP_PT_PERCPU+Config::MAX_CPUS-1U)) | Sigma0 | |
assert(modinfo) | Sigma0 | |
assign_pci_device(unsigned pd_cap, unsigned bdf, unsigned vfbdf) | Sigma0 | [inline] |
attach_drives(char const *cmdline, unsigned long cmdlen, unsigned client) | Sigma0 | [inline] |
attach_irq(unsigned gsi, unsigned cap_sm, bool unlocked, unsigned cpunr) | Sigma0 | [inline] |
attach_msi(MessageHostOp *msg, unsigned cpunr) | Sigma0 | [inline] |
cap_ec_echo | Sigma0 | |
cap_ec_worker | Sigma0 | |
cap_irq | Sigma0 | |
cap_pt_echo | Sigma0 | |
CapAllocator(unsigned long __cap_, unsigned long __cap_start, unsigned long __cap_order) | CapAllocator< NovaProgram > | [inline] |
check1(1, init(hip)) | Sigma0 | |
check1(2, nova_create_sm(_lock_gsi.sm())||nova_create_sm(_lock_mem.sm())) | Sigma0 | |
check1(3, create_worker_threads(hip, utcb->head.nul_cpunr)) | Sigma0 | |
check1(6, nova_create_sm(putcd.sem.sm())) | Sigma0 | |
check1(7, nova_create_sm(CLIENT_PT_OFFSET+ParentProtocol::CAP_PARENT_ID)) | Sigma0 | |
check1(8, nova_call(_percpu[utcb->head.nul_cpunr].cap_pt_echo)) | Sigma0 | |
console(MessageConsole &msg) | Sigma0Base | [inline, static] |
consolesem | Sigma0 | |
convert_client_ptr(ModuleInfo *modinfo, T *&ptr, unsigned size) | Sigma0 | [inline, static] |
COUNTER_INC("request") | Sigma0 | |
Crd(ParentProtocol::CAP_PARENT_ID, 0, MAP_MAP).value()) | Sigma0 | |
create_ec_helper(C *tls, unsigned cpunr, unsigned excbase, Utcb **utcb_out=0, void *func=0, unsigned cap=alloc_cap()) | NovaProgram | [inline, protected] |
create_host_devices(Utcb *utcb, Hip *hip) | Sigma0 | [inline] |
create_worker_threads(Hip *hip, int cpunr) | Sigma0 | [inline] |
cursor_pos | Sigma0 | |
dealloc_cap(unsigned cap, unsigned count=1) | CapAllocator< NovaProgram > | [inline, static] |
debug_dump() | Device | [inline] |
debug_name() | Device | [inline] |
del(Region(CLIENT_PT_OFFSET, 2U<< CLIENT_PT_ORDER)) | Sigma0 | |
Device(const char *debug_name) | Device | [inline] |
disk(MessageDisk &msg) | Sigma0Base | [inline, static] |
exc_base | Sigma0 | |
exit(const char *msg) | NovaProgram | [inline, static] |
fancy_output(const char *st, unsigned maxchars) | Sigma0 | [inline, static] |
find_free_tag(unsigned short client, unsigned char disknr, unsigned long usertag, unsigned long &tag) | Sigma0 | [inline] |
for(unsigned gsi=0;gsi< hip->cfg_gsi;gsi++) | Sigma0 | [inline] |
free_module(ModuleInfo *modinfo) | Sigma0 | [inline] |
generate_hostmac() | Sigma0 | [inline] |
get_mac(unsigned clientnr) | Sigma0 | [inline] |
get_module(unsigned id) | Sigma0 | [inline] |
gsi | Sigma0 | |
handle_attach(ModuleInfo *modinfo, PRODUCER &res, Utcb *utcb) | Sigma0 | [inline] |
hash(unsigned state, unsigned value) | Sigma0 | [inline] |
hostop(MessageHostOp &msg) | Sigma0Base | [inline, static] |
if(utcb->head.untyped==EXCEPTION_WORDS) | Sigma0 | [inline] |
if(request_pcicfg(modinfo->id, utcb)) return | Sigma0 | |
if(!request_vnet(modinfo, utcb)&&!request_disks(modinfo, utcb)&&!request_console(modinfo, utcb)&&!request_network(modinfo, utcb)) switch(utcb->msg[0]) | Sigma0 | [inline] |
init(Hip *hip) | NovaProgram | [inline, protected] |
init_console() | Sigma0 | [inline] |
init_disks() | Sigma0 | [inline] |
init_mem(Hip *hip) | NovaProgram | [inline, protected] |
init_memmap(Utcb *utcb) | Sigma0 | [inline] |
init_network() | Sigma0 | [inline] |
init_vnet() | Sigma0 | [inline] |
internal_error(unsigned pid, Utcb *utcb) | Sigma0 | [inline] |
kill_module(ModuleInfo *modinfo) | Sigma0 | [inline] |
l(_lock_gsi) | Sigma0 | |
locked | Sigma0 | |
Logging::init(putc, 0) | Sigma0 | |
Logging::init(putc,&putcd) | Sigma0 | |
Logging::panic("s0: %s(%x, %x) request failed with %x\n", __func__, gsi, cap_irq, res) | Sigma0 | |
Logging::printf("s0: preinit %p\n\n", hip) | Sigma0 | |
Logging::printf("s0: create locks\n") | Sigma0 | |
Logging::printf("s0: create pf echo+worker threads\n") | Sigma0 | |
Logging::printf("s0: map vga memory\n") | Sigma0 | |
Logging::printf("s0: %s(%x) vec %x %s\n", __func__, cap_irq, gsi, locked?"locked":"unlocked") | Sigma0 | |
map_self(Utcb *utcb, unsigned long physmem, unsigned long size, unsigned rights=DESC_MEM_ALL) | Sigma0 | [inline] |
map_string(Utcb *utcb, unsigned long src) | Sigma0 | [inline] |
MAXDISKREQUESTS enum value | Sigma0 | |
MAXDISKS enum value | Sigma0 | |
memcpy(_vga+0x1a000, _vga+0x18000, 0x1000) | Sigma0 | |
modinfo | Sigma0 | |
msg(shared?MessageIrq::ASSERT_NOTIFY:MessageIrq::ASSERT_IRQ, gsi) | Sigma0 | |
Sigma0Base::mycpu() | BaseProgram | [inline, static] |
NovaProgram::mycpu() | BaseProgram | [inline, static] |
Sigma0Base::myutcb(unsigned long esp=0) | BaseProgram | [inline, static] |
NovaProgram::myutcb(unsigned long esp=0) | BaseProgram | [inline, static] |
network(MessageNetwork &msg) | Sigma0Base | [inline, static] |
NovaProgram() | NovaProgram | [inline] |
offset | Sigma0 | |
pcicfg(MessagePciConfig &msg) | Sigma0Base | [inline, static] |
postinit(Hip *hip) | Sigma0 | [inline] |
PT_FUNC(do_map, assert(~utcb->head.untyped &1);utcb->set_header(0, utcb->head.untyped/2);memmove(utcb->item_start(), utcb->msg, sizeof(unsigned)*utcb->head.typed *2);) PT_FUNC_NORETURN(do_gsi | Sigma0 | |
PT_FUNC(do_startup, ModuleInfo *modinfo=get_module((pid-CLIENT_PT_OFFSET) >> CLIENT_PT_SHIFT);assert(modinfo);utcb->eip=modinfo->rip;utcb->esp=CLIENT_HIP;utcb->mtd=MTD_RIP_LEN|MTD_RSP;) PT_FUNC(do_request | Sigma0 | |
putc(void *data, int value) | Sigma0 | [inline, static] |
putcd | Sigma0 | |
receive(MessageHostOp &msg) | Sigma0 | [inline] |
receive(MessageNetwork &msg) | Sigma0 | [inline] |
receive(MessageVirtualNetPing &msg) | Sigma0 | [inline] |
receive(MessageDiskCommit &msg) | Sigma0 | [inline] |
receive(MessageConsole &msg) | Sigma0 | [inline] |
receive_static(Device *o, M &msg) | StaticReceiver< Sigma0 > | [inline, static] |
regs | Sigma0 | |
REQUEST_ACPI enum value | Sigma0Base | |
request_attach(Utcb *utcb, void *buffer, unsigned sem_nq) | Sigma0Base | [inline, protected, static] |
REQUEST_CONSOLE enum value | Sigma0Base | |
request_console(ModuleInfo *modinfo, Utcb *utcb) | Sigma0 | [inline] |
REQUEST_DISK enum value | Sigma0Base | |
request_disks(ModuleInfo *modinfo, Utcb *utcb) | Sigma0 | [inline] |
REQUEST_DISKS_ATTACH enum value | Sigma0Base | |
request_disks_attach(Utcb *utcb, void *buffer, unsigned sem_nq) | Sigma0Base | [inline, static] |
REQUEST_HOSTOP enum value | Sigma0Base | |
Sigma0Base::request_mapping(char *start, unsigned long size, unsigned long hotspot) | BaseProgram | [inline, static] |
NovaProgram::request_mapping(char *start, unsigned long size, unsigned long hotspot) | BaseProgram | [inline, static] |
REQUEST_NETWORK enum value | Sigma0Base | |
request_network(ModuleInfo *modinfo, Utcb *utcb) | Sigma0 | [inline] |
request_network_attach(Utcb *utcb, void *buffer, unsigned sem_nq) | Sigma0Base | [inline, static] |
REQUEST_NETWORK_ATTACH enum value | Sigma0Base | |
REQUEST_PCICFG enum value | Sigma0Base | |
request_pcicfg(unsigned client, Utcb *utcb) | Sigma0 | [inline] |
request_stdin(Utcb *utcb, void *buffer, unsigned sem_nq) | Sigma0Base | [inline, static] |
REQUEST_STDIN_ATTACH enum value | Sigma0Base | |
request_vnet(ModuleInfo *modinfo, Utcb *utcb) | Sigma0 | [inline] |
REQUEST_VNET enum value | Sigma0Base | |
request_vnet_attach(Utcb *utcb, unsigned sem_nq) | Sigma0Base | [inline, static] |
REQUEST_VNET_ATTACH enum value | Sigma0Base | |
res | Sigma0 | |
reserve | Sigma0 | |
return | Sigma0 | |
Sigma0Base::revoke_all_mem(void *address, unsigned long size, unsigned rights, bool myself) | BaseProgram | [inline, static] |
NovaProgram::revoke_all_mem(void *address, unsigned long size, unsigned rights, bool myself) | BaseProgram | [inline, static] |
s0_ParentProtocol class | Sigma0 | [friend] |
screen | Sigma0 | |
sem | Sigma0 | |
serial_send(long value) | Sigma0 | [inline, static] |
service_admission | Sigma0 | |
service_parent | Sigma0 | |
set_header(2, 0) | Sigma0 | |
set_header(1, 0) | Sigma0 | |
shared | Sigma0 | |
Sigma0() | Sigma0 | [inline] |
sigma0_memalloc(unsigned long size, unsigned long align) | Sigma0 | [inline, static] |
sigma0_message(MESSAGE &msg) | Sigma0Base | [inline, protected, static] |
Sigma0Base::stack_size | BaseProgram | [static] |
NovaProgram::stack_size | BaseProgram | [static] |
Sigma0Base::stack_size_shift | BaseProgram | [static] |
NovaProgram::stack_size_shift | BaseProgram | [static] |
start_config(Utcb *utcb, unsigned which, unsigned &internal_id) | Sigma0 | [inline] |
start_config(Utcb *utcb, char const *mconfig, unsigned &internal_id) | Sigma0 | [inline] |
StaticReceiver() | StaticReceiver< Sigma0 > | [inline] |
switch_view(Motherboard *mb, int view=0, unsigned short consoleid=console_id) | Sigma0 | [inline, static] |
up() | Sigma0 | |
up() | Sigma0 | |
Utcb::TypedMapCap(CLIENT_PT_OFFSET+ParentProtocol::CAP_PARENT_ID).fill_words(utcb->msg | Sigma0 | |
vnet_sm | Sigma0 | |
vnetop(MessageVirtualNet &msg) | Sigma0Base | [inline, static] |
while(!(res=nova_semdownmulti(cap_irq))) | Sigma0 | [inline] |