René's URL Explorer Experiment


Title: Stafford Horne's Blog - shorne in japan

Description: Stafford Horne's (shorne, stffrdhrn) Computer Engineering blog and home page.

Keywords:

direct link

Domain: stffrdhrn.github.io

NoneIE=edge
msvalidate.01244EFE476BC887BBC78F2CACC5B2A64C

Links:

shorne in japanhttps://stffrdhrn.github.io/
bloghttps://stffrdhrn.github.io/
archivehttps://stffrdhrn.github.io/page/archive.html
abouthttps://stffrdhrn.github.io/page/about.html
resumehttps://stffrdhrn.github.io/page/curriculum-vitae.html
OpenRISC Multicore - SMP Linux soft lockupshttps://stffrdhrn.github.io/hardware/linux/embedded/openrisc/2026/01/13/or1k-linux-smp-softlockup-bug.html
#168 mor1kx pipeline is stuck in dualcore iverilog RTL simulationhttps://github.com/openrisc/mor1kx/issues/168
multicorehttps://en.wikipedia.org/wiki/Multi-core_processor
SoCshttps://en.wikipedia.org/wiki/System_on_a_chip
RCUhttps://docs.kernel.org/RCU/stallwarn.html
fusesochttps://fusesoc.readthedocs.io/en/stable/
Quartus Prime Design Softwarehttps://www.altera.com/products/development-tools/quartus
OpenOCDhttps://openocd.org
toolchainhttps://github.com/stffrdhrn/or1k-toolchain-build/releases
rootfshttps://github.com/stffrdhrn/or1k-rootfs-build/releases
De0 Nano tutorialshttps://openrisc.io/tutorials/de0_nano/
jtag_vpihttps://github.com/fjullien/jtag_vpi
de0_nanohttps://github.com/olofk/de0_nano/commits/master/
devicetreehttps://www.devicetree.org/
de0nano-smp.dtshttps://stffrdhrn.github.io/content/2026/de0nano-smp.dts
ELFhttps://en.wikipedia.org/wiki/Executable_and_Linkable_Format
patch for adding the device tree file and a defconfighttps://github.com/stffrdhrn/linux/commit/47d4f4ce21ddb1a99e72016f130377a265ec3622
IPIhttps://en.wikipedia.org/wiki/Inter-processor_interrupt
patch to capture and dump IPI statshttps://github.com/stffrdhrn/linux/commit/a7fc4d4778a70461fb28fb2e3216d3a85513fd62
quick patch to unmask IPIshttps://github.com/stffrdhrn/linux/commit/d2533084299085b9b602b8b78d6827a2411ef05b
OpenRISC IPI patchhttps://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/arch/openrisc?id=eea1a28f93c8c78b961aca2012dedfd5c528fcac
patch serieshttps://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a67594c977234b0ad6887202740e9e8b9821473a
multicore patcheshttps://github.com/stffrdhrn/openocd/commits/or1k-multicore/
OpenRISC FPU Port - Updating Linux, Compilers and Debuggershttps://stffrdhrn.github.io/hardware/embedded/openrisc/2023/08/24/or1k-fpu-linux-and-compilers.html
OpenRISChttps://openrisc.io/
glibchttps://sourceware.org/glibc/
FPUhttps://en.wikipedia.org/wiki/Floating-point_unit
user spacehttps://en.wikipedia.org/wiki/User_space_and_kernel_space
Architecture Specificationhttps://stffrdhrn.github.io/hardware/embedded/openrisc/2023/04/25/or1k-fpu-port.html
Simulators and CPU implementationshttps://stffrdhrn.github.io/hardware/embedded/openrisc/2023/08/22/or1k-fpu-hw.html
rounding mode and exceptionshttps://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html
System callshttps://en.wikipedia.org/wiki/System_call
OpenRISC calling conventionshttps://openrisc.io/or1k.html#__RefHeading__504887_595890882
entry.Shttps://elixir.bootlin.com/linux/latest/source/arch/openrisc/kernel/entry.S
do_work_pendinghttps://elixir.bootlin.com/linux/latest/source/arch/openrisc/kernel/signal.c#L298
do_work_pendinghttps://elixir.bootlin.com/linux/latest/source/arch/openrisc/kernel/signal.c#L298
virtually mapped kernel stackshttps://docs.kernel.org/mm/vmalloced-kernel-stacks.html
63d7f9f11e5ehttps://github.com/stffrdhrn/linux/commit/63d7f9f11e5e81de2ce8f1c7a8aaed5b0288eddf
ead6248f25e1https://github.com/stffrdhrn/linux/commit/ead6248f25e1
setup_rt_framehttps://elixir.bootlin.com/linux/latest/source/arch/openrisc/kernel/signal.c#L156
signalstackhttps://man7.org/linux/man-pages/man2/sigaltstack.2.html
rt_sigreturnhttps://man7.org/linux/man-pages/man2/sigreturn.2.html
major security vulnerabilityhttps://en.wikipedia.org/wiki/Stack_buffer_overflow
vdsohttps://man7.org/linux/man-pages/man7/vdso.7.html
uapi/asm-generic/ucontext.hhttps://elixir.bootlin.com/linux/v6.8/source/include/uapi/asm-generic/ucontext.h#L5
uapi/asm/ptrace.hhttps://elixir.bootlin.com/linux/v6.8/source/arch/openrisc/include/uapi/asm/ptrace.h
caused ABI breakagehttps://lore.kernel.org/linux-mm/ZL2V77V8xCWTKVR+@antec/T/
uapi/asm/sigcontext.hhttps://elixir.bootlin.com/linux/v6.8/source/arch/openrisc/include/uapi/asm/sigcontext.h
glibchttps://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/unix/sysv/linux/or1k/sys/ucontext.h;h=b17e91915461b5f2095682efd174e7612d2ec119;hb=HEAD
muslhttps://git.musl-libc.org/cgit/musl/tree/arch/or1k/bits/signal.h
27267655c531https://github.com/stffrdhrn/linux/commit/27267655c531
dceaafd66881https://github.com/stffrdhrn/linux/commit/dceaafd66881
ptracehttps://man7.org/linux/man-pages/man2/ptrace.2.html
core dumpshttps://en.wikipedia.org/wiki/Core_dump
c91b4a07655dhttps://github.com/stffrdhrn/linux/commit/c91b4a07655d
14f89b18c117https://github.com/stffrdhrn/linux/commit/14f89b18c1173fb6664bb338db850f5ad0484b93#diff-0c4ba219cbf5887111a27c6234092536a513f07927c418c14bb227a8ac85eaae
2019https://gcc.gnu.org/git/?p=gcc.git;a=commit;f=gcc/config/or1k/or1k.md;h=44080af98edf7d8a59a94dd803f60cf0505fba34
GCC Register Transfer Language(RTL)https://gcc.gnu.org/onlinedocs/gccint/Arithmetic.html
abstract syntax treehttps://en.wikipedia.org/wiki/Abstract_syntax_tree
33fb1625992https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=33fb1625992ba8180b42988e714460bcab08ca0f
mathhttps://www.gnu.org/software/libc/manual/html_node/Mathematics.html
Context Switchhttps://www.linfo.org/context_switch.html
Evolution of the x86 context switch in Linuxhttps://www.maizure.org/projects/evolution_x86_context_switch_linux/
Notes about FPU implementation in Linux kernelhttp://liujunming.top/2022/01/08/Notes-about-FPU-implementation-in-Linux-kernel/
Kernel Stack and User Stackhttps://www.baeldung.com/linux/kernel-stack-and-user-space-stack#:~:text=User%20and%20Kernel%20Stacks,part%20of%20the%20kernel%20space.
Virtually Mapped Stackshttps://docs.kernel.org/mm/vmalloced-kernel-stacks.html
pt_regs the good the bad and the uglyhttps://lpc.events/event/17/contributions/1462/
OpenRISC FPU Port - Fixing Hardwarehttps://stffrdhrn.github.io/hardware/embedded/openrisc/2023/08/22/or1k-fpu-hw.html
last articlehttps://stffrdhrn.github.io/hardware/embedded/openrisc/2023/04/25/or1k-fpu-port.html
Architecture Specificationhttps://stffrdhrn.github.io/hardware/embedded/openrisc/2023/04/25/or1k-fpu-port.html
cpu: Allow FPCSR to be read/written in user modehttps://github.com/openrisc/or1ksim/commit/7a03376c1bd0fc0d5008d3222c623601e7080b43
newlibhttps://sourceware.org/newlib/
OpenRISC user space FPCSRhttps://lore.kernel.org/qemu-devel/20230511151000.381911-1-shorne@gmail.com
qemu 8.1https://wiki.qemu.org/ChangeLog/8.1
0xd00https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/openrisc/kernel/head.S?h=v6.4-rc7#n429
fpe_trap_handlerhttps://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/openrisc/kernel/entry.S?h=v6.4-rc7#n853
do_fpe_traphttps://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/openrisc/kernel/traps.c?h=v6.4-rc7#n246
signalhttps://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html#tag_15_04
force_sig_faulthttps://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/kernel/signal.c?h=v6.4-rc7#n1705
ret_from_exceptionhttps://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/openrisc/kernel/entry.S?h=v6.4-rc7#n998
resume_userspacehttps://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/openrisc/kernel/entry.S?h=v6.4-rc7#n943
work_pendinghttps://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/openrisc/kernel/entry.S?h=v6.4-rc7#n952
do_work_pendinghttps://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/openrisc/kernel/signal.c?h=v6.4-rc7#n293
restore_allhttps://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/openrisc/kernel/entry.S?h=v6.4-rc7#n983
Unwinding a Bug - How C++ Exceptions Workhttps://stffrdhrn.github.io/software/toolchain/openrisc/2020/12/13/cxx-exception-unwinding.html
target/openrisc: Set EPCR to next PC on FPE exceptionshttps://lore.kernel.org/qemu-devel/20230731210301.3360723-1-shorne@gmail.com/
mor1kxhttps://github.com/openrisc/mor1kx
or1k_marocchinohttps://github.com/openrisc/or1k_marocchino/tree/master
Make FPCSR is R/W accessible for both user- and supervisor- modeshttps://github.com/openrisc/mor1kx/commit/6b1beaa871c02ccd570d8e6ad80f99bc4133aa26
Refactoring and implementation tininess detection before roundinghttps://github.com/openrisc/mor1kx/commit/f2a78cc5d98123e63af4b23296795d95ffdfd854
Make FPCSR is R/W accessible for both user- and supervisor- modeshttps://github.com/openrisc/or1k_marocchino/commit/cd9e2bd977f489892ea632142078e4bca8976576
Refactoring FPU Implementation for tininess detection BEFORE ROUNDINGhttps://github.com/openrisc/or1k_marocchino/commit/8be054f0bef95bd94238509ced79ef5ec7a57417
QEMU Translation Internalshttps://qemu.readthedocs.io/en/latest/devel/tcg.html
OpenRISC FPU Port - What is It?https://stffrdhrn.github.io/hardware/embedded/openrisc/2023/04/25/or1k-fpu-port.html
glibc port upstreamhttps://openrisc.io/toolchain/2022/02/19/glibc-upstream
libchttps://en.wikipedia.org/wiki/C_standard_library
muslhttps://www.musl-libc.org
ucLibchttps://uclibc-ng.org
floating-point unit (FPU)https://en.wikipedia.org/wiki/Floating-point_unit
IEEE 754https://en.wikipedia.org/wiki/IEEE_754
trigonometrichttps://en.wikipedia.org/wiki/Trigonometry
complexhttps://en.wikipedia.org/wiki/Complex_number
a while backhttps://www.phoronix.com/news/GCC-10-OpenRISC-FPU
newlibhttps://sourceware.org/newlib/
providedhttps://gcc.gnu.org/onlinedocs/gccint/Soft-float-library-routines.html
arm toolchain downloadhttps://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads
sysdeps/mips/fpu_control.hhttps://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/mips/fpu_control.h;h=d9ab3195bbef0159bf663c720485f8a3bdfbd136;hb=HEAD#l124
sysdeps/arm/fpu_control.hhttps://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/arm/fpu_control.h;h=cadbe927b3df20d06f6f4cf159c94e865a595885;hb=HEAD#l67
user-modehttps://en.wikipedia.org/wiki/User_space_and_kernel_space
floating point environmenthttps://pubs.opengroup.org/onlinepubs/9699919799/basedefs/fenv.h.html
fesetroundhttps://pubs.opengroup.org/onlinepubs/9699919799/functions/fesetround.html
feholdexcepthttps://pubs.opengroup.org/onlinepubs/9699919799/functions/feholdexcept.html
OpenRISC architecture specificationhttps://openrisc.io/architecture
FPCR and FPSRhttps://developer.arm.com/documentation/ddi0502/g/programmers-model/aarch64-register-descriptions/floating-point-control-register
FCSRhttps://riscv.org/wp-content/uploads/2017/05/riscv-privileged-v1.10.pdf
[pdf]https://ntrs.nasa.gov/api/citations/19960008463/downloads/19960008463.pdf
revision 1.4https://openrisc.io/revisions/r1.4
Unwinding a Bug - How C++ Exceptions Workhttps://stffrdhrn.github.io/software/toolchain/openrisc/2020/12/13/cxx-exception-unwinding.html
first upstreaming attempthttps://lists.librecores.org/pipermail/openrisc/2020-May/002602.html
QEMUhttps://www.qemu.org
LiteX SoChttps://github.com/enjoy-digital/litex/blob/master/README.md
MMU starves the kernelhttps://github.com/openrisc/linux/issues/12
LiteETH network driverhttps://github.com/litex-hub/linux/commit/78969c54328e35b360d9452c7602f21107a13d22
support gdbserverhttps://github.com/stffrdhrn/binutils-gdb/commit/9d0d2e9bef5c84caa7f05cc7ddba1e092e2b5120
native debugginghttps://github.com/stffrdhrn/binutils-gdb/commit/82e99d5df56be3b18c63e613d00e2367fb5a78b7
Linux Kernelhttps://github.com/stffrdhrn/linux/commit/28b852b1dc351efc6525234c5adfd5bc2ad6d6e1
GLIBChttps://github.com/stffrdhrn/or1k-glibc/commit/75ddf155968299042e4d2b492e3b547c86d4672e
NPTLhttps://en.wikipedia.org/wiki/Native_POSIX_Thread_Library
nptl/tst-cancel24.cchttps://sourceware.org/git/?p=glibc.git;a=blob;f=nptl/tst-cancel24.cc;h=1af709a8cab1d422ef4401e2b2d178df86f863c5;hb=HEAD
pthreadhttps://en.wikipedia.org/wiki/POSIX_Threads
DWARFhttps://en.wikipedia.org/wiki/DWARF
ORChttps://lwn.net/Articles/728339/
Exploiting the hard-working DWARF.pdfhttps://www.cs.dartmouth.edu/~sergey/battleaxe/hackito_2011_oakley_bratus.pdf
tgkillhttps://man7.org/linux/man-pages/man2/tgkill.2.html
sigcancel_handlerhttps://sourceware.org/git/?p=glibc.git;a=blob;f=nptl/nptl-init.c;h=53b817715d58192857ed14450052e16dc34bc01b;hb=HEAD#l126
__pthread_unwindhttps://sourceware.org/git/?p=glibc.git;a=blob;f=nptl/unwind.c;h=8f157e49f4a088ac64722e85ff24514fff7f3c71;hb=HEAD#l121
_Unwind_ForcedUnwindhttps://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/nptl/unwind-forcedunwind.c;h=50a089282bc236aa644f40feafd0dacdafe3a4e7;hb=HEAD#l122
unwind_stophttps://sourceware.org/git/?p=glibc.git;a=blob;f=nptl/unwind.c;h=8f157e49f4a088ac64722e85ff24514fff7f3c71;hb=HEAD#l39
start_threadhttps://sourceware.org/git/?p=glibc.git;a=blob;f=nptl/pthread_create.c;h=bad4e57a845bd3148ad634acaaccbea08b04dbbd;hb=HEAD#l406
setjmphttps://www.man7.org/linux/man-pages/man3/setjmp.3.html
longjumphttps://man7.org/linux/man-pages/man3/longjmp.3.html
IA-64 Itanium Exception Handling ABIhttps://itanium-cxx-abi.github.io/cxx-abi/abi-eh.html
Itaniumhttps://en.wikipedia.org/wiki/Itanium#Itanium_9700_(Kittson):_2017
_Unwind_Contexthttps://gcc.gnu.org/git/?p=gcc.git;a=blob;f=libgcc/unwind-dw2.c;h=fe896565d2ec5c43ac683f2c6ed6d5e49fd8242e;hb=HEAD#l12
_Unwind_FrameStatehttps://gcc.gnu.org/git/?p=gcc.git;a=blob;f=libgcc/unwind-dw2.h;h=2b8c1fd49dbc1bf2c816015ea2fed125774a8ef3;hb=HEAD#l25
cancel exceptions must be rethrownhttps://udrepper.livejournal.com/21541.html
_Unwind_ForcedUnwindhttps://gcc.gnu.org/git/?p=gcc.git;a=blob;f=libgcc/unwind.inc;h=9acead33ffc01e892d6feda2aaeffd9d04e56e74;hb=HEAD#l201
uw_init_contexthttps://gcc.gnu.org/git/?p=gcc.git;a=blob;f=libgcc/unwind-dw2.c;h=fe896565d2ec5c43ac683f2c6ed6d5e49fd8242e;hb=HEAD#l1558
_Unwind_ForcedUnwind_Phase2https://gcc.gnu.org/git/?p=gcc.git;a=blob;f=libgcc/unwind.inc;h=9acead33ffc01e892d6feda2aaeffd9d04e56e74;hb=HEAD#l144
uw_install_contexthttps://gcc.gnu.org/git/?p=gcc.git;a=blob;f=libgcc/unwind-dw2.c;h=fe896565d2ec5c43ac683f2c6ed6d5e49fd8242e;hb=HEAD#l1641
uw_frame_state_forhttps://gcc.gnu.org/git/?p=gcc.git;a=blob;f=libgcc/unwind-dw2.c;h=fe896565d2ec5c43ac683f2c6ed6d5e49fd8242e;hb=HEAD#l1244
uw_advance_contexthttps://gcc.gnu.org/git/?p=gcc.git;a=blob;f=libgcc/unwind-dw2.c;h=fe896565d2ec5c43ac683f2c6ed6d5e49fd8242e;hb=HEAD#l1552
_Unwind_RaiseExceptionhttps://gcc.gnu.org/git/?p=gcc.git;a=blob;f=libgcc/unwind.inc;h=9acead33ffc01e892d6feda2aaeffd9d04e56e74;hb=HEAD#l83
uw_update_contexthttps://gcc.gnu.org/git/?p=gcc.git;a=blob;f=libgcc/unwind-dw2.c;h=fe896565d2ec5c43ac683f2c6ed6d5e49fd8242e;hb=HEAD#l1516
_Unwind_RaiseException_Phase2https://gcc.gnu.org/git/?p=gcc.git;a=blob;f=libgcc/unwind.inc;h=9acead33ffc01e892d6feda2aaeffd9d04e56e74;hb=HEAD#l30
C++ standard libraryhttps://gcc.gnu.org/onlinedocs/gcc-10.2.0/libstdc++/manual/
__gxx_personality_v0https://gcc.gnu.org/git/?p=gcc.git;a=blob;f=libstdc%2B%2B-v3/libsupc%2B%2B/eh_personality.cc;h=fd7cd6fc79886bf17aea6bc713d2a3840aa31326;hb=HEAD#l336
or1k_fallback_frame_statehttps://gcc.gnu.org/git/?p=gcc.git;a=blob;f=libgcc/config/or1k/linux-unwind.h;h=c7ed043d3a89f2db205fd78fcb5db21f6fb561b2;hb=HEAD
setup_rt_framehttps://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/openrisc/kernel/signal.c?h=v5.10-rc7#n144
sigretrunhttps://man7.org/linux/man-pages/man2/sigreturn.2.html
submitted this patchhttp://sourceware-org.1504.n7.nabble.com/PATCH-nptl-Fix-issue-unwinding-through-sem-wait-futex-tt653730.html#a653833
fixed upstreamhttps://sourceware.org/git/?p=glibc.git;a=commit;h=a04689ee7a2600a1466354096123c57ccd1e1dc7
The IA64 Undwinder ABIhttps://itanium-cxx-abi.github.io/cxx-abi/
Reliable DWARF Unwindinghttps://fzn.fr/projects/frdwarf/dwarf-oopsla19-slides.pdf
Exception Frameshttps://refspecs.linuxfoundation.org/LSB_3.0.0/LSB-PDA/LSB-PDA/ehframechpt.html
2https://stffrdhrn.github.io/page2
3https://stffrdhrn.github.io/page3
4https://stffrdhrn.github.io/page4
5https://stffrdhrn.github.io/page5
6https://stffrdhrn.github.io/page6
7https://stffrdhrn.github.io/page7
8https://stffrdhrn.github.io/page8
9https://stffrdhrn.github.io/page9
10https://stffrdhrn.github.io/page10
11https://stffrdhrn.github.io/page11
12https://stffrdhrn.github.io/page12
13https://stffrdhrn.github.io/page13
Next »https://stffrdhrn.github.io/page2
github.com/stffrdhrnhttps://github.com/stffrdhrn
twitter.com/stffrdhrnhttps://twitter.com/stffrdhrn

Viewport: width=device-width


URLs of crawlers that visited me.