mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-11-10 13:00:29 +03:00
Everywhere: Replace a bundle of dbg with dbgln.
These changes are arbitrarily divided into multiple commits to make it easier to find potentially introduced bugs with git bisect.
This commit is contained in:
parent
78b2be5a2a
commit
67583bc424
Notes:
sideshowbarker
2024-07-18 22:59:14 +09:00
Author: https://github.com/asynts Commit: https://github.com/SerenityOS/serenity/commit/67583bc4242 Pull-request: https://github.com/SerenityOS/serenity/pull/5012 Reviewed-by: https://github.com/alimpfard
30
AK/Debug.h
30
AK/Debug.h
@ -129,3 +129,33 @@ constexpr bool debug_vmware_backdoor = true;
|
||||
#else
|
||||
constexpr bool debug_vmware_backdoor = false;
|
||||
#endif
|
||||
|
||||
#ifdef FILEDESCRIPTION_DEBUG
|
||||
constexpr bool debug_file_description = true;
|
||||
#else
|
||||
constexpr bool debug_file_description = false;
|
||||
#endif
|
||||
|
||||
#ifdef PROCFS_DEBUG
|
||||
constexpr bool debug_procfs = true;
|
||||
#else
|
||||
constexpr bool debug_procfs = false;
|
||||
#endif
|
||||
|
||||
#ifdef VFS_DEBUG
|
||||
constexpr bool debug_vfs = true;
|
||||
#else
|
||||
constexpr bool debug_vfs = false;
|
||||
#endif
|
||||
|
||||
#ifdef IOAPIC_DEBUG
|
||||
constexpr bool debug_ioapic = true;
|
||||
#else
|
||||
constexpr bool debug_ioapic = false;
|
||||
#endif
|
||||
|
||||
#ifdef IRQ_DEBUG
|
||||
constexpr bool debug_irq = true;
|
||||
#else
|
||||
constexpr bool debug_irq = false;
|
||||
#endif
|
||||
|
@ -124,7 +124,7 @@ struct alignas(16) TransferDescriptor final {
|
||||
|
||||
void print()
|
||||
{
|
||||
// FIXME: Use dbg() or klog() when we have something working.
|
||||
// FIXME: Use dbgln() or klog() when we have something working.
|
||||
// We're using kprintf() for now because the output stands out from the rest of the text in the log
|
||||
kprintf("UHCI: TD(%p) @ 0x%08x: link_ptr=0x%08x, status=0x%08x, token=0x%08x, buffer_ptr=0x%08x\n", this, m_paddr, m_link_ptr, m_control_status, m_token, m_buffer_ptr);
|
||||
|
||||
|
@ -24,6 +24,7 @@
|
||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#include <AK/Debug.h>
|
||||
#include <AK/MemoryStream.h>
|
||||
#include <Kernel/Devices/BlockDevice.h>
|
||||
#include <Kernel/Devices/CharacterDevice.h>
|
||||
@ -40,8 +41,6 @@
|
||||
#include <Kernel/VM/MemoryManager.h>
|
||||
#include <LibC/errno_numbers.h>
|
||||
|
||||
//#define FILEDESCRIPTION_DEBUG
|
||||
|
||||
namespace Kernel {
|
||||
|
||||
KResultOr<NonnullRefPtr<FileDescription>> FileDescription::create(Custody& custody)
|
||||
@ -50,9 +49,7 @@ KResultOr<NonnullRefPtr<FileDescription>> FileDescription::create(Custody& custo
|
||||
description->m_custody = custody;
|
||||
auto result = description->attach();
|
||||
if (result.is_error()) {
|
||||
#ifdef FILEDESCRIPTION_DEBUG
|
||||
dbg() << "Failed to create file description for custody: " << result;
|
||||
#endif
|
||||
dbgln<debug_file_description>("Failed to create file description for custody: {}", result);
|
||||
return result;
|
||||
}
|
||||
return description;
|
||||
@ -63,9 +60,7 @@ KResultOr<NonnullRefPtr<FileDescription>> FileDescription::create(File& file)
|
||||
auto description = adopt(*new FileDescription(file));
|
||||
auto result = description->attach();
|
||||
if (result.is_error()) {
|
||||
#ifdef FILEDESCRIPTION_DEBUG
|
||||
dbg() << "Failed to create file description for file: " << result;
|
||||
#endif
|
||||
dbgln<debug_file_description>("Failed to create file description for file: {}", result);
|
||||
return result;
|
||||
}
|
||||
return description;
|
||||
|
@ -24,6 +24,7 @@
|
||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#include <AK/Debug.h>
|
||||
#include <AK/JsonArraySerializer.h>
|
||||
#include <AK/JsonObject.h>
|
||||
#include <AK/JsonObjectSerializer.h>
|
||||
@ -987,9 +988,7 @@ NonnullRefPtr<Inode> ProcFS::root_inode() const
|
||||
|
||||
RefPtr<Inode> ProcFS::get_inode(InodeIdentifier inode_id) const
|
||||
{
|
||||
#ifdef PROCFS_DEBUG
|
||||
dbg() << "ProcFS::get_inode(" << inode_id.index() << ")";
|
||||
#endif
|
||||
dbgln<debug_procfs>("ProcFS::get_inode({})", inode_id.index());
|
||||
if (inode_id == root_inode()->identifier())
|
||||
return m_root_inode;
|
||||
|
||||
@ -1102,9 +1101,7 @@ void ProcFSInode::did_seek(FileDescription& description, off_t new_offset)
|
||||
|
||||
InodeMetadata ProcFSInode::metadata() const
|
||||
{
|
||||
#ifdef PROCFS_DEBUG
|
||||
dbg() << "ProcFSInode::metadata(" << index() << ")";
|
||||
#endif
|
||||
dbgln<debug_procfs>("ProcFSInode::metadata({})", index());
|
||||
InodeMetadata metadata;
|
||||
metadata.inode = identifier();
|
||||
metadata.ctime = mepoch;
|
||||
@ -1113,9 +1110,7 @@ InodeMetadata ProcFSInode::metadata() const
|
||||
auto proc_parent_directory = to_proc_parent_directory(identifier());
|
||||
auto proc_file_type = to_proc_file_type(identifier());
|
||||
|
||||
#ifdef PROCFS_DEBUG
|
||||
dbg() << " -> pid: " << to_pid(identifier()).value() << ", fi: " << proc_file_type << ", pdi: " << proc_parent_directory;
|
||||
#endif
|
||||
dbgln<debug_procfs>(" -> pid={}, fi={}, pdi={}", to_pid(identifier()).value(), (int)proc_file_type, (int)proc_parent_directory);
|
||||
|
||||
if (is_process_related_file(identifier())) {
|
||||
ProcessID pid = to_pid(identifier());
|
||||
@ -1180,18 +1175,14 @@ InodeMetadata ProcFSInode::metadata() const
|
||||
|
||||
ssize_t ProcFSInode::read_bytes(off_t offset, ssize_t count, UserOrKernelBuffer& buffer, FileDescription* description) const
|
||||
{
|
||||
#ifdef PROCFS_DEBUG
|
||||
dbg() << "ProcFS: read_bytes offset: " << offset << " count: " << count;
|
||||
#endif
|
||||
dbgln<debug_procfs>("ProcFS: read_bytes offset: {} count: {}", offset, count);
|
||||
ASSERT(offset >= 0);
|
||||
ASSERT(buffer.user_or_kernel_ptr());
|
||||
|
||||
if (!description)
|
||||
return -EIO;
|
||||
if (!description->data()) {
|
||||
#ifdef PROCFS_DEBUG
|
||||
dbgln("ProcFS: Do not have cached data!");
|
||||
#endif
|
||||
dbgln<debug_procfs>("ProcFS: Do not have cached data!");
|
||||
return -EIO;
|
||||
}
|
||||
|
||||
@ -1215,9 +1206,7 @@ InodeIdentifier ProcFS::ProcFSDirectoryEntry::identifier(unsigned fsid) const
|
||||
|
||||
KResult ProcFSInode::traverse_as_directory(Function<bool(const FS::DirectoryEntryView&)> callback) const
|
||||
{
|
||||
#ifdef PROCFS_DEBUG
|
||||
dbg() << "ProcFS: traverse_as_directory " << index();
|
||||
#endif
|
||||
dbgln<debug_procfs>("ProcFS: traverse_as_directory {}", index());
|
||||
|
||||
if (!Kernel::is_directory(identifier()))
|
||||
return ENOTDIR;
|
||||
|
@ -24,6 +24,7 @@
|
||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#include <AK/Debug.h>
|
||||
#include <AK/LexicalPath.h>
|
||||
#include <AK/Singleton.h>
|
||||
#include <AK/StringBuilder.h>
|
||||
@ -132,7 +133,7 @@ KResult VFS::unmount(Inode& guest_inode)
|
||||
}
|
||||
}
|
||||
|
||||
dbg() << "VFS: Nothing mounted on inode " << guest_inode.identifier();
|
||||
dbgln("VFS: Nothing mounted on inode {}", guest_inode.identifier());
|
||||
return ENODEV;
|
||||
}
|
||||
|
||||
@ -401,9 +402,7 @@ KResultOr<NonnullRefPtr<FileDescription>> VFS::create(StringView path, int optio
|
||||
return EROFS;
|
||||
|
||||
LexicalPath p(path);
|
||||
#ifdef VFS_DEBUG
|
||||
dbg() << "VFS::create: '" << p.basename() << "' in " << parent_inode.identifier();
|
||||
#endif
|
||||
dbgln<debug_vfs>("VFS::create: '{}' in {}", p.basename(), parent_inode.identifier());
|
||||
uid_t uid = owner.has_value() ? owner.value().uid : current_process->euid();
|
||||
gid_t gid = owner.has_value() ? owner.value().gid : current_process->egid();
|
||||
auto inode_or_error = parent_inode.create_child(p.basename(), mode, 0, uid, gid);
|
||||
@ -445,9 +444,7 @@ KResult VFS::mkdir(StringView path, mode_t mode, Custody& base)
|
||||
return EROFS;
|
||||
|
||||
LexicalPath p(path);
|
||||
#ifdef VFS_DEBUG
|
||||
dbg() << "VFS::mkdir: '" << p.basename() << "' in " << parent_inode.identifier();
|
||||
#endif
|
||||
dbgln<debug_vfs>("VFS::mkdir: '{}' in {}", p.basename(), parent_inode.identifier());
|
||||
return parent_inode.create_child(p.basename(), S_IFDIR | mode, 0, current_process->euid(), current_process->egid()).result();
|
||||
}
|
||||
|
||||
|
@ -24,6 +24,7 @@
|
||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#include <AK/Debug.h>
|
||||
#include <AK/Optional.h>
|
||||
#include <AK/StringView.h>
|
||||
#include <Kernel/ACPI/MultiProcessorParser.h>
|
||||
@ -201,13 +202,14 @@ void IOAPIC::configure_redirection_entry(int index, u8 interrupt_vector, u8 deli
|
||||
u32 redirection_entry1 = interrupt_vector | (delivery_mode & 0b111) << 8 | logical_destination << 11 | active_low << 13 | trigger_level_mode << 15 | masked << 16;
|
||||
u32 redirection_entry2 = destination << 24;
|
||||
write_register((index << 1) + IOAPIC_REDIRECTION_ENTRY_OFFSET, redirection_entry1);
|
||||
#ifdef IOAPIC_DEBUG
|
||||
dbg() << "IOAPIC Value: 0x" << String::format("%x", read_register((index << 1) + IOAPIC_REDIRECTION_ENTRY_OFFSET));
|
||||
#endif
|
||||
|
||||
if constexpr (debug_ioapic)
|
||||
dbgln("IOAPIC Value: {:#x}", read_register((index << 1) + IOAPIC_REDIRECTION_ENTRY_OFFSET));
|
||||
|
||||
write_register((index << 1) + IOAPIC_REDIRECTION_ENTRY_OFFSET + 1, redirection_entry2);
|
||||
#ifdef IOAPIC_DEBUG
|
||||
dbg() << "IOAPIC Value: 0x" << String::format("%x", read_register((index << 1) + 0x11));
|
||||
#endif
|
||||
|
||||
if constexpr (debug_ioapic)
|
||||
dbgln("IOAPIC Value: {:#x}", read_register((index << 1) + 0x11));
|
||||
}
|
||||
|
||||
void IOAPIC::mask_all_redirection_entries() const
|
||||
@ -319,17 +321,15 @@ void IOAPIC::write_register(u32 index, u32 value) const
|
||||
InterruptDisabler disabler;
|
||||
m_regs->select = index;
|
||||
m_regs->window = value;
|
||||
#ifdef IOAPIC_DEBUG
|
||||
dbg() << "IOAPIC Writing, Value 0x" << String::format("%x", m_regs->window) << " @ offset 0x" << String::format("%x", m_regs->select);
|
||||
#endif
|
||||
|
||||
dbgln<debug_ioapic>("IOAPIC Writing, Value {:#x} @ offset {:#x}", (u32)m_regs->window, (u32)m_regs->select);
|
||||
}
|
||||
u32 IOAPIC::read_register(u32 index) const
|
||||
{
|
||||
InterruptDisabler disabler;
|
||||
m_regs->select = index;
|
||||
#ifdef IOAPIC_DEBUG
|
||||
dbg() << "IOAPIC Reading, Value 0x" << String::format("%x", m_regs->window) << " @ offset 0x" << String::format("%x", m_regs->select);
|
||||
#endif
|
||||
dbgln<debug_ioapic>("IOAPIC Reading, Value {:#x} @ offset {:#x}", (u32)m_regs->window, (u32)m_regs->select);
|
||||
return m_regs->window;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -24,6 +24,7 @@
|
||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#include <AK/Debug.h>
|
||||
#include <Kernel/Arch/i386/CPU.h>
|
||||
#include <Kernel/Interrupts/IRQHandler.h>
|
||||
#include <Kernel/Interrupts/InterruptManagement.h>
|
||||
@ -45,9 +46,7 @@ IRQHandler::~IRQHandler()
|
||||
|
||||
bool IRQHandler::eoi()
|
||||
{
|
||||
#ifdef IRQ_DEBUG
|
||||
dbg() << "EOI IRQ " << interrupt_number();
|
||||
#endif
|
||||
dbgln<debug_irq>("EOI IRQ {}", interrupt_number());
|
||||
if (!m_shared_with_others) {
|
||||
ASSERT(!m_responsible_irq_controller.is_null());
|
||||
m_responsible_irq_controller->eoi(*this);
|
||||
@ -58,9 +57,7 @@ bool IRQHandler::eoi()
|
||||
|
||||
void IRQHandler::enable_irq()
|
||||
{
|
||||
#ifdef IRQ_DEBUG
|
||||
dbg() << "Enable IRQ " << interrupt_number();
|
||||
#endif
|
||||
dbgln<debug_irq>("Enable IRQ {}", interrupt_number());
|
||||
m_enabled = true;
|
||||
if (!m_shared_with_others)
|
||||
m_responsible_irq_controller->enable(*this);
|
||||
@ -68,9 +65,7 @@ void IRQHandler::enable_irq()
|
||||
|
||||
void IRQHandler::disable_irq()
|
||||
{
|
||||
#ifdef IRQ_DEBUG
|
||||
dbg() << "Disable IRQ " << interrupt_number();
|
||||
#endif
|
||||
dbgln<debug_irq>("Disable IRQ {}", interrupt_number());
|
||||
m_enabled = false;
|
||||
if (!m_shared_with_others)
|
||||
m_responsible_irq_controller->disable(*this);
|
||||
|
@ -177,3 +177,11 @@ private:
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
template<>
|
||||
struct AK::Formatter<Kernel::KResult> : Formatter<int> {
|
||||
void format(FormatBuilder& builder, Kernel::KResult value)
|
||||
{
|
||||
return Formatter<int>::format(builder, value);
|
||||
}
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user