From a236a22ace2da83cf2122a46ee4a9724d9c2d1f0 Mon Sep 17 00:00:00 2001 From: Greg Haerr Date: Sun, 16 Feb 2025 10:52:16 -0700 Subject: [PATCH] [kernel] Update debugging display in kernel, add debug_brk --- elks/arch/i86/mm/malloc.c | 10 +++++----- elks/fs/read_write.c | 2 +- elks/include/linuxmt/debug.h | 7 +++++++ 3 files changed, 13 insertions(+), 6 deletions(-) diff --git a/elks/arch/i86/mm/malloc.c b/elks/arch/i86/mm/malloc.c index 4442740e6..00d998851 100644 --- a/elks/arch/i86/mm/malloc.c +++ b/elks/arch/i86/mm/malloc.c @@ -267,7 +267,7 @@ static int set_brk(segoff_t brk, int increment) int sys_brk(segoff_t newbrk) { - dprintk("(%P)BRK %u\n", newbrk); + debug_brk("(%P)BRK %u\n", newbrk); return set_brk(newbrk, 0); } @@ -277,8 +277,8 @@ int sys_sbrk(int increment, segoff_t *pbrk) int err; if (increment) { - dprintk("(%P)SBRK %d\n", increment); - /*dprintk("(%P)SBRK %d, curbreak %u, SP %u\n", + debug_brk("(%P)SBRK %d\n", increment); + /*debug_brk("(%P)SBRK %d, curbreak %u, SP %u\n", increment, current->t_endbrk, current->t_regs.sp);*/ } err = verify_area(VERIFY_WRITE, pbrk, sizeof(*pbrk)); @@ -302,10 +302,10 @@ int sys_fmemalloc(int paras, unsigned short *pseg) return err; seg = seg_alloc((segext_t)paras, SEG_FLAG_FDAT); if (!seg) { - dprintk("(%P)FMEMALLOC %ld FAIL\n", (unsigned long)paras << 4); + debug_brk("(%P)FMEMALLOC %ld FAIL\n", (unsigned long)paras << 4); return -ENOMEM; } - dprintk("(%P)FMEMALLOC %ld\n", (unsigned long)paras << 4); + debug_brk("(%P)FMEMALLOC %ld\n", (unsigned long)paras << 4); seg->pid = current->pid; put_user(seg->base, pseg); return 0; diff --git a/elks/fs/read_write.c b/elks/fs/read_write.c index be28d3581..bdc05689f 100644 --- a/elks/fs/read_write.c +++ b/elks/fs/read_write.c @@ -22,7 +22,7 @@ int sys_lseek(unsigned int fd, loff_t * p_offset, unsigned int origin) loff_t offset; offset = (loff_t) get_user_long(p_offset); - debug_file("lseek %d, %ld, %d\n", fd, offset, origin); + debug("lseek %d, %ld, %d\n", fd, offset, origin); if (fd >= NR_OPEN || !(file = current->files.fd[fd]) || !(file->f_inode)) return -EBADF; if (origin > 2) return -EINVAL; diff --git a/elks/include/linuxmt/debug.h b/elks/include/linuxmt/debug.h index 9d900c1e5..5e222967d 100644 --- a/elks/include/linuxmt/debug.h +++ b/elks/include/linuxmt/debug.h @@ -16,6 +16,7 @@ #define DEBUG_LEVEL 0 /* default startup debug level*/ #define DEBUG_BIOS 0 /* BIOS driver*/ #define DEBUG_BLK 0 /* block i/o*/ +#define DEBUG_BRK 0 /* sbrk/brk */ #define DEBUG_CACHE 0 /* floppy track cache*/ #define DEBUG_ETH 0 /* ethernet*/ #define DEBUG_FAT 0 /* FAT filesystem*/ @@ -55,6 +56,12 @@ void debug_setcallback(int evnum, void (*cbfunc)()); /* callback on debug event* #define debug_blk(...) #endif +#if DEBUG_BRK +#define debug_brk PRINTK +#else +#define debug_brk(...) +#endif + #if DEBUG_CACHE #define debug_cache PRINTK #define debug_cache2 if (debug_level > 1) PRINTK