mirror of
https://github.com/RGBCube/serenity
synced 2025-05-20 14:55:08 +00:00
Kernel: static vs non-static constexpr variables
Problem: - `static` variables consume memory and sometimes are less optimizable. - `static const` variables can be `constexpr`, usually. - `static` function-local variables require an initialization check every time the function is run. Solution: - If a global `static` variable is only used in a single function then move it into the function and make it non-`static` and `constexpr`. - Make all global `static` variables `constexpr` instead of `const`. - Change function-local `static const[expr]` variables to be just `constexpr`.
This commit is contained in:
parent
2b64d163cd
commit
5751327195
15 changed files with 30 additions and 37 deletions
|
@ -20,9 +20,8 @@
|
|||
|
||||
namespace Kernel {
|
||||
|
||||
static const size_t max_link_count = 65535;
|
||||
static const size_t max_block_size = 4096;
|
||||
static const ssize_t max_inline_symlink_length = 60;
|
||||
static constexpr size_t max_block_size = 4096;
|
||||
static constexpr ssize_t max_inline_symlink_length = 60;
|
||||
|
||||
struct Ext2FSDirectoryEntry {
|
||||
String name;
|
||||
|
@ -1668,6 +1667,7 @@ KResult Ext2FSInode::increment_link_count()
|
|||
Locker locker(m_lock);
|
||||
if (fs().is_readonly())
|
||||
return EROFS;
|
||||
constexpr size_t max_link_count = 65535;
|
||||
if (m_raw_inode.i_links_count == max_link_count)
|
||||
return EMLINK;
|
||||
++m_raw_inode.i_links_count;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue