This is a discussion on [9fans] kernel, errfmt - Plan9 ; Hi, I have become confused trying to understand the kernel's linkage. the kernel uses print() in many places, e.g. /sys/src/9/port/xalloc.c:80 /sys/src/9/port/devcons.c:211 This calls vseprint(). /sys/src/libc/fmt/fmt.c:47 The fmt library installs %r (errfmt) by default. /sys/src/libc/fmt/errfmt.c:10 references rerrstr(). /sys/src/libc/9sys/rerrstr.c:10 references errstr(). Errstr() ...
Hi,
I have become confused trying to understand
the kernel's linkage.
the kernel uses print() in many places, e.g.
/sys/src/9/port/xalloc.c:80
/sys/src/9/port/devcons.c:211 This calls vseprint().
/sys/src/libc/fmt/fmt.c:47 The fmt library installs %r
(errfmt) by default.
/sys/src/libc/fmt/errfmt.c:10 references rerrstr().
/sys/src/libc/9sys/rerrstr.c:10 references errstr().
Errstr() is a system call and does not exist in the
kernel (where it becomes syserrstr()).
How can this work? ...or does the kernel itself
perform system calls?
-Steve