# bcopy (and all other functions written in assembler) doesn't set up the
# frame pointer, so stack traces in it don't work right. Usually, the
# previous function's args are shown as bcopy's args and the previous
# function's name isn't shown. They are easy to see by examining the
# stack (x/x $esp,10).
Oh, thanks. Didn't know this.
# >The kernel has "options DDB", no compiler optimization,
# Not even the default -O?
Yes, I threw it away, being afraid to get even more strange
results from the debugger. Today CPUs _are_ fast enough. :)
# >config(8) had '-g' switch (note: linkage of the kernel failed with this
# >switch combo; ld didn't find _memcmp symbol, why? I added libc.a to the
# memcmp is a C library function that isn't available in the kernel.
I guess that with '-g' present gcc doesn't put an inline
equivalent of it in the resulting code?
Thanks! (I'll probably try it once more, but I hope
I localized the erroneous code already. Stupid me --
why didn't I realize that "block in log body ..."
never actually logged "body" for me? :(