Prefer Genode Labs packages from depot builds
parent
33d866c5e7
commit
ed3cf7f063
@ -1,23 +0,0 @@
|
||||
commit 1b8f44e80801bbb8d3dba813b72eed4c6a5a5ca6
|
||||
Author: Emery Hemingway <ehmry@posteo.net>
|
||||
Date: Fri Mar 20 20:10:28 2020 +0530
|
||||
|
||||
part_block: support for up to 128 session
|
||||
|
||||
Allow sessions for each of the 128 sessions supported by GPT.
|
||||
|
||||
Fix #3705
|
||||
|
||||
diff --git a/repos/os/src/server/part_block/main.cc b/repos/os/src/server/part_block/main.cc
|
||||
index a446be31db..56bade6086 100644
|
||||
--- a/repos/os/src/server/part_block/main.cc
|
||||
+++ b/repos/os/src/server/part_block/main.cc
|
||||
@@ -226,7 +226,7 @@ class Block::Main : Rpc_object<Typed_root<Session>>,
|
||||
Gpt _gpt { _env, _block, _heap, _reporter };
|
||||
Partition_table &_partition_table { _table() };
|
||||
|
||||
- enum { MAX_SESSIONS = 32 };
|
||||
+ enum { MAX_SESSIONS = 128 };
|
||||
Session_component *_sessions[MAX_SESSIONS] { };
|
||||
Job_queue<128> _job_queue { };
|
||||
Registry<Block::Job> _job_registry { };
|
@ -1,37 +0,0 @@
|
||||
{ buildPackages, ports }:
|
||||
with ports; {
|
||||
"app/gpt_write".portInputs = [ jitterentropy ];
|
||||
|
||||
"app/lighttpd".portInputs = [ libc lighttpd openssl zlib ];
|
||||
|
||||
"drivers/framebuffer/intel" = {
|
||||
BOARD = "pc";
|
||||
portInputs = [ dde_linux ];
|
||||
};
|
||||
|
||||
"drivers/framebuffer/vesa" = {
|
||||
BOARD = "pc";
|
||||
portInputs = [ x86emu ];
|
||||
};
|
||||
|
||||
"drivers/usb".portInputs = [ dde_linux ];
|
||||
|
||||
"lib/vfs/lwip".portInputs = [ lwip ];
|
||||
"lib/vfs/ttf".portInputs = [ libc stb ];
|
||||
"lib/vfs/rump" = {
|
||||
portInputs = [ dde_rump ];
|
||||
buildInputs = with buildPackages; [ zlib ];
|
||||
};
|
||||
|
||||
noux = {
|
||||
targets = [ "noux" "lib/libc_noux" ];
|
||||
portInputs = [ libc ];
|
||||
};
|
||||
|
||||
virtualbox5 = {
|
||||
KERNEL = "nova";
|
||||
portInputs = [ libc libiconv qemu-usb stdcxx virtualbox5 ];
|
||||
nativeBuildInputs = with buildPackages; [ iasl yasm ];
|
||||
};
|
||||
|
||||
}
|
@ -0,0 +1,57 @@
|
||||
commit 0df2ea0956e46f3914be01aa9d7b20a06d805e53
|
||||
Author: Emery Hemingway <ehmry@posteo.net>
|
||||
Date: Wed Apr 8 12:39:44 2020 +0530
|
||||
|
||||
cxx: align exception allocator to sixteen bytes
|
||||
|
||||
diff --git a/repos/base/src/lib/cxx/malloc_free.cc b/repos/base/src/lib/cxx/malloc_free.cc
|
||||
index b551dfe627..870dbb6c6d 100644
|
||||
--- a/repos/base/src/lib/cxx/malloc_free.cc
|
||||
+++ b/repos/base/src/lib/cxx/malloc_free.cc
|
||||
@@ -61,27 +61,23 @@ void Genode::init_cxx_heap(Env &env)
|
||||
}
|
||||
|
||||
|
||||
-typedef unsigned long Block_header;
|
||||
+typedef size_t Block_header;
|
||||
|
||||
|
||||
extern "C" void *malloc(size_t size)
|
||||
{
|
||||
- /* enforce size to be a multiple of 4 bytes */
|
||||
- size = (size + 3) & ~3;
|
||||
-
|
||||
/*
|
||||
- * We store the size of the allocation at the very
|
||||
- * beginning of the allocated block and return
|
||||
- * the subsequent address. This way, we can retrieve
|
||||
- * the size information when freeing the block.
|
||||
+ * We pad each allocation with 16 leading bytes for
|
||||
+ * storing the size of the allocation. This way, we can
|
||||
+ * retrieve the size information when freeing the block.
|
||||
*/
|
||||
- unsigned long real_size = size + sizeof(Block_header);
|
||||
- void *addr = 0;
|
||||
- if (!cxx_heap().alloc(real_size, &addr))
|
||||
- return 0;
|
||||
+ size_t real_size = size + 16;
|
||||
+ addr_t real_addr = 0;
|
||||
+ if (!cxx_heap().alloc(real_size, (void**)&real_addr))
|
||||
+ return nullptr;
|
||||
|
||||
- *(Block_header *)addr = real_size;
|
||||
- return (Block_header *)addr + 1;
|
||||
+ *(Block_header *)real_addr = real_size;
|
||||
+ return (void*)(real_addr + 16);
|
||||
}
|
||||
|
||||
|
||||
@@ -101,7 +97,7 @@ extern "C" void free(void *ptr)
|
||||
{
|
||||
if (!ptr) return;
|
||||
|
||||
- unsigned long *addr = ((unsigned long *)ptr) - 1;
|
||||
+ unsigned long *addr = (unsigned long *)(addr_t(ptr) - 16);
|
||||
cxx_heap().free(addr, *addr);
|
||||
}
|
||||
|
@ -0,0 +1,41 @@
|
||||
{ buildPackages, ports }:
|
||||
with ports; {
|
||||
|
||||
gpt_write.portInputs = [ jitterentropy ];
|
||||
|
||||
intel_fb_drv = {
|
||||
BOARD = "pc";
|
||||
portInputs = [ dde_linux ];
|
||||
};
|
||||
|
||||
libc.portInputs = [ libc ];
|
||||
|
||||
lighttpd.portInputs = [ libc lighttpd openssl zlib ];
|
||||
|
||||
noux.portInputs = [ libc ];
|
||||
|
||||
posix.portInputs = [ libc ];
|
||||
|
||||
rump = {
|
||||
portInputs = [ dde_rump ];
|
||||
buildInputs = with buildPackages; [ zlib ];
|
||||
};
|
||||
|
||||
usb_drv.portInputs = [ dde_linux ];
|
||||
|
||||
vbox5 = {
|
||||
KERNEL = "nova";
|
||||
portInputs = [ libc libiconv qemu-usb stdcxx virtualbox5 ];
|
||||
nativeBuildInputs = with buildPackages; [ iasl yasm ];
|
||||
enableParallelBuilding = false;
|
||||
};
|
||||
|
||||
vesa_drv.portInputs = [ libc x86emu ];
|
||||
|
||||
vfs_jitterentropy.portInputs = [ jitterentropy libc ];
|
||||
vfs_lwip.portInputs = [ lwip ];
|
||||
vfs_ttf.portInputs = [ libc stb ];
|
||||
|
||||
wifi_drv.portInputs = [ dde_linux libc openssl ];
|
||||
|
||||
}
|
Loading…
Reference in New Issue