mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 08:07:34 +00:00
Kernel: Remove the kmalloc_eternal heap :^)
This was a premature optimization from the early days of SerenityOS. The eternal heap was a simple bump pointer allocator over a static byte array. My original idea was to avoid heap fragmentation and improve data locality, but both ideas were rooted in cargo culting, not data. We would reserve 4 MiB at boot and only ended up using ~256 KiB, wasting the rest. This patch replaces all kmalloc_eternal() usage by regular kmalloc().
This commit is contained in:
parent
a1be135891
commit
ac7ce12123
46 changed files with 5 additions and 82 deletions
|
@ -21,7 +21,6 @@ struct BochsDisplayMMIORegisters;
|
|||
|
||||
class BochsGraphicsAdapter final : public GenericGraphicsAdapter
|
||||
, public PCI::Device {
|
||||
AK_MAKE_ETERNAL
|
||||
friend class GraphicsManagement;
|
||||
|
||||
private:
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
namespace Kernel {
|
||||
|
||||
class FramebufferDevice final : public GenericFramebufferDevice {
|
||||
AK_MAKE_ETERNAL
|
||||
friend class DeviceManagement;
|
||||
|
||||
public:
|
||||
|
|
|
@ -16,7 +16,6 @@
|
|||
namespace Kernel {
|
||||
|
||||
class GenericFramebufferDevice : public BlockDevice {
|
||||
AK_MAKE_ETERNAL
|
||||
friend class DeviceManagement;
|
||||
|
||||
public:
|
||||
|
|
|
@ -27,7 +27,6 @@ class GraphicsManagement {
|
|||
friend class IntelNativeGraphicsAdapter;
|
||||
friend class VGACompatibleAdapter;
|
||||
friend class Graphics::VirtIOGPU::GraphicsAdapter;
|
||||
AK_MAKE_ETERNAL
|
||||
|
||||
public:
|
||||
static GraphicsManagement& the();
|
||||
|
|
|
@ -47,7 +47,6 @@ enum RegisterIndex {
|
|||
|
||||
class IntelNativeGraphicsAdapter final
|
||||
: public VGACompatibleAdapter {
|
||||
AK_MAKE_ETERNAL
|
||||
public:
|
||||
struct PLLSettings {
|
||||
bool is_valid() const { return (n != 0 && m1 != 0 && m2 != 0 && p1 != 0 && p2 != 0); }
|
||||
|
|
|
@ -17,7 +17,6 @@ namespace Kernel {
|
|||
|
||||
class VGACompatibleAdapter : public GenericGraphicsAdapter
|
||||
, public PCI::Device {
|
||||
AK_MAKE_ETERNAL
|
||||
public:
|
||||
static NonnullRefPtr<VGACompatibleAdapter> initialize_with_preset_resolution(PCI::DeviceIdentifier const&, PhysicalAddress, size_t framebuffer_width, size_t framebuffer_height, size_t framebuffer_pitch);
|
||||
static NonnullRefPtr<VGACompatibleAdapter> initialize(PCI::DeviceIdentifier const&);
|
||||
|
|
|
@ -35,7 +35,6 @@ class FramebufferDevice;
|
|||
class GraphicsAdapter final
|
||||
: public GenericGraphicsAdapter
|
||||
, public VirtIO::Device {
|
||||
AK_MAKE_ETERNAL
|
||||
friend class FramebufferDevice;
|
||||
|
||||
public:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue