mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 15:47:44 +00:00
Kernel: Set file size for smbios_entry_point and DMI blobs in ProcFS
This is needed to support dmidecode version 3.3, so it can read the 2 blobs in ProcFS.
This commit is contained in:
parent
338c6eec65
commit
65c27bfe52
3 changed files with 19 additions and 0 deletions
|
@ -70,6 +70,15 @@ DMIExpose& DMIExpose::the()
|
||||||
return *s_the;
|
return *s_the;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
size_t DMIExpose::entry_point_length() const
|
||||||
|
{
|
||||||
|
return m_entry_point_length;
|
||||||
|
}
|
||||||
|
size_t DMIExpose::structure_table_length() const
|
||||||
|
{
|
||||||
|
return m_structure_table_length;
|
||||||
|
}
|
||||||
|
|
||||||
void DMIExpose::initialize_exposer()
|
void DMIExpose::initialize_exposer()
|
||||||
{
|
{
|
||||||
ASSERT(!(m_entry_point.is_null()));
|
ASSERT(!(m_entry_point.is_null()));
|
||||||
|
|
|
@ -85,6 +85,8 @@ public:
|
||||||
bool is_available() const { return m_available; }
|
bool is_available() const { return m_available; }
|
||||||
OwnPtr<KBuffer> entry_point() const;
|
OwnPtr<KBuffer> entry_point() const;
|
||||||
OwnPtr<KBuffer> structure_table() const;
|
OwnPtr<KBuffer> structure_table() const;
|
||||||
|
size_t entry_point_length() const;
|
||||||
|
size_t structure_table_length() const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void set_64_bit_entry_initialization_values();
|
void set_64_bit_entry_initialization_values();
|
||||||
|
|
|
@ -1176,6 +1176,14 @@ InodeMetadata ProcFSInode::metadata() const
|
||||||
case FI_PID_stacks:
|
case FI_PID_stacks:
|
||||||
metadata.mode = S_IFDIR | S_IRUSR | S_IXUSR;
|
metadata.mode = S_IFDIR | S_IRUSR | S_IXUSR;
|
||||||
break;
|
break;
|
||||||
|
case FI_Root_smbios_entry_point:
|
||||||
|
metadata.mode = S_IFREG | S_IRUSR | S_IRGRP | S_IROTH;
|
||||||
|
metadata.size = DMIExpose::the().entry_point_length();
|
||||||
|
break;
|
||||||
|
case FI_Root_dmi:
|
||||||
|
metadata.mode = S_IFREG | S_IRUSR | S_IRGRP | S_IROTH;
|
||||||
|
metadata.size = DMIExpose::the().structure_table_length();
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
metadata.mode = S_IFREG | S_IRUSR | S_IRGRP | S_IROTH;
|
metadata.mode = S_IFREG | S_IRUSR | S_IRGRP | S_IROTH;
|
||||||
break;
|
break;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue