The NetBSD Project

CVS log for src/sys/arch/usermode/usermode/trap.c

[BACK] Up to [cvs.NetBSD.org] / src / sys / arch / usermode / usermode

Request diff between arbitrary revisions


Keyword substitution: kv
Default branch: MAIN


Revision 1.74: download - view: text, markup, annotated - select for diffs
Sat May 28 21:14:56 2022 UTC (2 years, 10 months ago) by andvar
Branches: MAIN
CVS tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation, perseant-exfatfs-base-20240630, perseant-exfatfs-base, perseant-exfatfs, netbsd-10-base, netbsd-10-1-RELEASE, netbsd-10-0-RELEASE, netbsd-10-0-RC6, netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1, netbsd-10, bouyer-sunxi-drm-base, bouyer-sunxi-drm, HEAD
Diff to: previous 1.73: preferred, colored
Changes since revision 1.73: +5 -5 lines
fix various typos in comments, mainly origional->original,
extened->extended, incomming->incoming.

Revision 1.73: download - view: text, markup, annotated - select for diffs
Sat May 28 10:36:22 2022 UTC (2 years, 10 months ago) by andvar
Branches: MAIN
Diff to: previous 1.72: preferred, colored
Changes since revision 1.72: +3 -3 lines
fix various typos, mainly in comments.

Revision 1.68.2.2: download - view: text, markup, annotated - select for diffs
Wed Apr 8 14:07:56 2020 UTC (5 years ago) by martin
Branches: phil-wifi
Diff to: previous 1.68.2.1: preferred, colored; branchpoint 1.68: preferred, colored; next MAIN 1.69: preferred, colored
Changes since revision 1.68.2.1: +7 -13 lines
Merge changes from current as of 20200406

Revision 1.72: download - view: text, markup, annotated - select for diffs
Fri Nov 29 18:27:33 2019 UTC (5 years, 4 months ago) by ad
Branches: MAIN
CVS tags: thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf2, thorpej-i2c-spi-conf-base, thorpej-i2c-spi-conf, thorpej-futex2-base, thorpej-futex2, thorpej-futex-base, thorpej-futex, thorpej-cfargs2-base, thorpej-cfargs2, thorpej-cfargs-base, thorpej-cfargs, phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, is-mlppp-base, is-mlppp, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh, ad-namecache-base3, ad-namecache-base2, ad-namecache-base1, ad-namecache-base, ad-namecache
Diff to: previous 1.71: preferred, colored
Changes since revision 1.71: +7 -7 lines
PR port-sparc/54718 (sparc install hangs since recent scheduler changes)

- userret() must be called every time we return to user, it's not optional.
- If clearing the AST with interrupts off, you must loop over userret().

Revision 1.71: download - view: text, markup, annotated - select for diffs
Thu Nov 21 19:24:02 2019 UTC (5 years, 5 months ago) by ad
Branches: MAIN
Diff to: previous 1.70: preferred, colored
Changes since revision 1.70: +2 -8 lines
mi_userret(): take care of calling preempt(), set spc_curpriority directly,
and remove MD code that does the same.

Revision 1.68.2.1: download - view: text, markup, annotated - select for diffs
Mon Jun 10 22:06:51 2019 UTC (5 years, 10 months ago) by christos
Branches: phil-wifi
Diff to: previous 1.68: preferred, colored
Changes since revision 1.68: +32 -8 lines
Sync with HEAD

Revision 1.66.38.3: download - view: text, markup, annotated - select for diffs
Thu Sep 6 06:55:43 2018 UTC (6 years, 7 months ago) by pgoyette
Branches: pgoyette-compat
CVS tags: pgoyette-compat-merge-20190127
Diff to: previous 1.66.38.2: preferred, colored; branchpoint 1.66: preferred, colored; next MAIN 1.67: preferred, colored
Changes since revision 1.66.38.2: +32 -8 lines
Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)

Revision 1.70: download - view: text, markup, annotated - select for diffs
Wed Aug 1 09:44:31 2018 UTC (6 years, 8 months ago) by reinoud
Branches: MAIN
CVS tags: phil-wifi-20191119, phil-wifi-20190609, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, netbsd-9-base, netbsd-9-4-RELEASE, netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, netbsd-9, isaki-audio2-base, isaki-audio2
Diff to: previous 1.69: preferred, colored
Changes since revision 1.69: +31 -7 lines
Oops, forgot a debug printf

Revision 1.69: download - view: text, markup, annotated - select for diffs
Sat Jul 28 17:17:38 2018 UTC (6 years, 8 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.68: preferred, colored
Changes since revision 1.68: +3 -3 lines
Fix typo

Revision 1.66.38.2: download - view: text, markup, annotated - select for diffs
Mon Jun 25 07:25:46 2018 UTC (6 years, 10 months ago) by pgoyette
Branches: pgoyette-compat
Diff to: previous 1.66.38.1: preferred, colored; branchpoint 1.66: preferred, colored
Changes since revision 1.66.38.1: +10 -4 lines
Sync with HEAD

Revision 1.68: download - view: text, markup, annotated - select for diffs
Mon Jun 11 19:23:21 2018 UTC (6 years, 10 months ago) by reinoud
Branches: MAIN
CVS tags: phil-wifi-base, pgoyette-compat-0728, pgoyette-compat-0625
Branch point for: phil-wifi
Diff to: previous 1.67: preferred, colored
Changes since revision 1.67: +10 -4 lines
Prevent nested SIGIOs ruining the system stack

Revision 1.66.38.1: download - view: text, markup, annotated - select for diffs
Mon May 21 04:36:02 2018 UTC (6 years, 11 months ago) by pgoyette
Branches: pgoyette-compat
Diff to: previous 1.66: preferred, colored
Changes since revision 1.66: +21 -13 lines
Sync with HEAD

Revision 1.67: download - view: text, markup, annotated - select for diffs
Fri May 18 20:24:16 2018 UTC (6 years, 11 months ago) by reinoud
Branches: MAIN
CVS tags: pgoyette-compat-0521
Diff to: previous 1.66: preferred, colored
Changes since revision 1.66: +21 -13 lines
Replace the dynamically allocated signal stack to a static claimed one and add
diagnostic messages that can be enabled.

Revision 1.41.2.2: download - view: text, markup, annotated - select for diffs
Tue Oct 30 17:20:28 2012 UTC (12 years, 5 months ago) by yamt
Branches: yamt-pagecache
CVS tags: yamt-pagecache-tag8
Diff to: previous 1.41.2.1: preferred, colored; branchpoint 1.41: preferred, colored; next MAIN 1.42: preferred, colored
Changes since revision 1.41.2.1: +9 -11 lines
sync with head

Revision 1.63.2.3: download - view: text, markup, annotated - select for diffs
Wed Aug 8 15:32:25 2012 UTC (12 years, 8 months ago) by martin
Branches: netbsd-6
CVS tags: netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-1-5-RELEASE, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-1, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-6-RELEASE, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, netbsd-6-0, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus
Diff to: previous 1.63.2.2: preferred, colored; branchpoint 1.63: preferred, colored; next MAIN 1.64: preferred, colored
Changes since revision 1.63.2.2: +9 -11 lines
Pull up following revision(s) (requested by reinoud in ticket #463):
	sys/arch/usermode/usermode/trap.c: revision 1.66
Fix IO lockups in NetBSD/usermode.
1) Don't block IO signals since the return path is not garanteed to enable the
signal again.
2) Since signals can get dropped, do a 2nd pass over the routines.

Revision 1.66: download - view: text, markup, annotated - select for diffs
Sat Aug 4 14:53:32 2012 UTC (12 years, 8 months ago) by reinoud
Branches: MAIN
CVS tags: yamt-pagecache-base9, yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, tls-maxphys-base-20171202, tls-maxphys-base, tls-maxphys, tls-earlyentropy-base, tls-earlyentropy, rmind-smpnet-nbase, rmind-smpnet-base, rmind-smpnet, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, pgoyette-localcount-base, pgoyette-localcount-20170426, pgoyette-localcount-20170320, pgoyette-localcount-20170107, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, pgoyette-localcount, pgoyette-compat-base, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315, perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825, nick-nhusb-base-20170204, nick-nhusb-base-20161204, nick-nhusb-base-20161004, nick-nhusb-base-20160907, nick-nhusb-base-20160529, nick-nhusb-base-20160422, nick-nhusb-base-20160319, nick-nhusb-base-20151226, nick-nhusb-base-20150921, nick-nhusb-base-20150606, nick-nhusb-base-20150406, nick-nhusb-base, nick-nhusb, netbsd-8-base, netbsd-8-3-RELEASE, netbsd-8-2-RELEASE, netbsd-8-1-RELEASE, netbsd-8-1-RC1, netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1, netbsd-8, netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-base, netbsd-7-2-RELEASE, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0, netbsd-7, matt-nb8-mediatek-base, matt-nb8-mediatek, localcount-20160914, khorben-n900, jdolecek-ncq-base, jdolecek-ncq, bouyer-socketcan-base1, bouyer-socketcan-base, bouyer-socketcan, agc-symver-base, agc-symver
Branch point for: pgoyette-compat
Diff to: previous 1.65: preferred, colored
Changes since revision 1.65: +9 -11 lines
Fix IO lockups in NetBSD/usermode.

1) Don't block IO signals since the return path is not garanteed to enable the
signal again.
2) Since signals can get dropped, do a 2nd pass over the routines.

Revision 1.41.2.1: download - view: text, markup, annotated - select for diffs
Tue Apr 17 00:07:00 2012 UTC (13 years ago) by yamt
Branches: yamt-pagecache
Diff to: previous 1.41: preferred, colored
Changes since revision 1.41: +536 -187 lines
sync with head

Revision 1.63.2.2: download - view: text, markup, annotated - select for diffs
Thu Mar 8 17:21:20 2012 UTC (13 years, 1 month ago) by riz
Branches: netbsd-6
Diff to: previous 1.63.2.1: preferred, colored; branchpoint 1.63: preferred, colored
Changes since revision 1.63.2.1: +8 -3 lines
Pull up following revision(s) (requested by reinoud in ticket #91):
	sys/arch/usermode/usermode/trap.c: revision 1.65
Use the signal's signo instead of just returning SIGSEGV and add a comment

Revision 1.63.2.1: download - view: text, markup, annotated - select for diffs
Wed Mar 7 23:44:23 2012 UTC (13 years, 1 month ago) by riz
Branches: netbsd-6
Diff to: previous 1.63: preferred, colored
Changes since revision 1.63: +30 -8 lines
Pull up following revision(s) (requested by reinoud in ticket #89):
	sys/arch/usermode/usermode/thunk.c: revision 1.81
	sys/arch/usermode/target/i386/cpu_i386.c: revision 1.4
	sys/arch/usermode/include/thunk.h: revision 1.61
	sys/arch/usermode/include/intr.h: revision 1.9
	sys/arch/usermode/dev/cpu.c: revision 1.70
	sys/arch/usermode/dev/ttycons.c: revision 1.19
	sys/arch/usermode/usermode/trap.c: revision 1.64
Implement signal forwarding to userland for usermode kernels. Especially
SIGFPE is important since the urkel shouldn't stop when a userland program
devides by zero!

Revision 1.42.2.4: download - view: text, markup, annotated - select for diffs
Tue Mar 6 18:26:39 2012 UTC (13 years, 1 month ago) by mrg
Branches: jmcneill-usbmp
Diff to: previous 1.42.2.3: preferred, colored; branchpoint 1.42: preferred, colored; next MAIN 1.43: preferred, colored
Changes since revision 1.42.2.3: +36 -9 lines
sync to -current

Revision 1.42.2.3: download - view: text, markup, annotated - select for diffs
Tue Mar 6 09:56:11 2012 UTC (13 years, 1 month ago) by mrg
Branches: jmcneill-usbmp
Diff to: previous 1.42.2.2: preferred, colored; branchpoint 1.42: preferred, colored
Changes since revision 1.42.2.2: +9 -36 lines
sync to -current

Revision 1.42.2.2: download - view: text, markup, annotated - select for diffs
Sun Mar 4 00:46:14 2012 UTC (13 years, 1 month ago) by mrg
Branches: jmcneill-usbmp
Diff to: previous 1.42.2.1: preferred, colored; branchpoint 1.42: preferred, colored
Changes since revision 1.42.2.1: +36 -9 lines
sync to latest -current.

Revision 1.65: download - view: text, markup, annotated - select for diffs
Sat Mar 3 21:29:02 2012 UTC (13 years, 1 month ago) by reinoud
Branches: MAIN
CVS tags: yamt-pagecache-base5, yamt-pagecache-base4, jmcneill-usbmp-base9, jmcneill-usbmp-base8, jmcneill-usbmp-base7, jmcneill-usbmp-base6, jmcneill-usbmp-base4, jmcneill-usbmp-base10
Diff to: previous 1.64: preferred, colored
Changes since revision 1.64: +8 -3 lines
Use the signal's signo instead of just returning SIGSEGV and add a comment

Revision 1.64: download - view: text, markup, annotated - select for diffs
Sat Mar 3 21:15:16 2012 UTC (13 years, 1 month ago) by reinoud
Branches: MAIN
Diff to: previous 1.63: preferred, colored
Changes since revision 1.63: +30 -8 lines
Implement signal forwarding to userland for usermode kernels. Especially
SIGFPE is important since the urkel shouldn't stop when a userland program
devides by zero!

Revision 1.42.2.1: download - view: text, markup, annotated - select for diffs
Sat Feb 18 07:33:26 2012 UTC (13 years, 2 months ago) by mrg
Branches: jmcneill-usbmp
Diff to: previous 1.42: preferred, colored
Changes since revision 1.42: +476 -184 lines
merge to -current.

Revision 1.63: download - view: text, markup, annotated - select for diffs
Wed Feb 15 15:20:53 2012 UTC (13 years, 2 months ago) by reinoud
Branches: MAIN
CVS tags: netbsd-6-base, jmcneill-usbmp-base5, jmcneill-usbmp-base3, jmcneill-usbmp-base2
Branch point for: netbsd-6
Diff to: previous 1.62: preferred, colored
Changes since revision 1.62: +7 -2 lines
Prevent recursive IO signals. This prevents crashes when pieces of text are
pasted in say an Xterm. Each char might create a SIGIO running out of
stackspace very quickly!

Revision 1.62: download - view: text, markup, annotated - select for diffs
Sun Jan 22 17:51:39 2012 UTC (13 years, 3 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.61: preferred, colored
Changes since revision 1.61: +3 -3 lines
Fix compilation issue for target amd64.

Revision 1.61: download - view: text, markup, annotated - select for diffs
Sat Jan 21 22:09:57 2012 UTC (13 years, 3 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.60: preferred, colored
Changes since revision 1.60: +253 -145 lines
Complete rewrite of the signal and spl framework for NetBSD/usermode

Signals are now moved from the sigaltstack ASAP and stacked on a replacement
stack for each processes.

Preemption now works though could be enhanced a bit more

Revision 1.60: download - view: text, markup, annotated - select for diffs
Wed Jan 18 12:39:45 2012 UTC (13 years, 3 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.59: preferred, colored
Changes since revision 1.59: +82 -52 lines
Another step towards unification of the signal handers: separate the printing
of details usefull for debugging / porting from the main code.

Revision 1.59: download - view: text, markup, annotated - select for diffs
Tue Jan 17 20:50:38 2012 UTC (13 years, 3 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.58: preferred, colored
Changes since revision 1.58: +3 -3 lines
Do init the astpending variable.

Revision 1.58: download - view: text, markup, annotated - select for diffs
Tue Jan 17 19:46:55 2012 UTC (13 years, 3 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.57: preferred, colored
Changes since revision 1.57: +52 -54 lines
Clean up userret/ast handling. Now called ONLY when its 100% clear that it is
returning to userland.

Revision 1.57: download - view: text, markup, annotated - select for diffs
Sat Jan 14 21:45:28 2012 UTC (13 years, 3 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.56: preferred, colored
Changes since revision 1.56: +54 -6 lines
Reimplement userret() to also include AST for preemption.

Note it would be nice if we could do the check "are we going to userland?" in
a less intrusive way.

Revision 1.56: download - view: text, markup, annotated - select for diffs
Sat Jan 14 17:42:52 2012 UTC (13 years, 3 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.55: preferred, colored
Changes since revision 1.55: +186 -67 lines
Revamp the NetBSD/usermode pagefault and illegal instruction handing. It now
can handle recursive entry and is a lot more memory tight compared to the old
implementation. Performance wise:

* slightly less number of syscalls/sec possible though could be optimized
* a lot faster context creation / destruction making overall operation faster.

Revision 1.55: download - view: text, markup, annotated - select for diffs
Wed Jan 11 12:40:26 2012 UTC (13 years, 3 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.54: preferred, colored
Changes since revision 1.54: +26 -47 lines
Cleanup trap.c and add a stop_all_signal_handlers(void) i: bluntly stopping
all known usages of signal handlers, to be used in shutdown.

Revision 1.54: download - view: text, markup, annotated - select for diffs
Sat Jan 7 19:45:14 2012 UTC (13 years, 3 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.53: preferred, colored
Changes since revision 1.53: +7 -4 lines
Cleanup trap debug messages

Revision 1.53: download - view: text, markup, annotated - select for diffs
Fri Jan 6 20:39:42 2012 UTC (13 years, 3 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.52: preferred, colored
Changes since revision 1.52: +19 -19 lines
printf()->thunk_printf() since its for debugging and should be printed outside
the kernel's printing system.

Revision 1.52: download - view: text, markup, annotated - select for diffs
Tue Jan 3 21:28:50 2012 UTC (13 years, 3 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.51: preferred, colored
Changes since revision 1.51: +3 -3 lines
Rework NetBSD/usermode pmap fixing some oddities that were left over from
earlier times when we were forced to run PIE executables and were forced to
use a KVM above the kernel.

Revision 1.51: download - view: text, markup, annotated - select for diffs
Tue Jan 3 12:05:00 2012 UTC (13 years, 3 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.50: preferred, colored
Changes since revision 1.50: +17 -17 lines
Rename the debug printf's to use a thunk_ prefix to avoid confusion.

Revision 1.50: download - view: text, markup, annotated - select for diffs
Tue Jan 3 10:53:46 2012 UTC (13 years, 3 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.49: preferred, colored
Changes since revision 1.49: +17 -13 lines
Fix logic that checks if its the kernel or a userland process that causes the
trap. Signal sending still needs to be addressed.

Revision 1.49: download - view: text, markup, annotated - select for diffs
Mon Jan 2 22:02:51 2012 UTC (13 years, 3 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.48: preferred, colored
Changes since revision 1.48: +4 -2 lines
Remove tests that are dubious and should be (re)moved anyway.

Revision 1.48: download - view: text, markup, annotated - select for diffs
Mon Dec 26 22:04:35 2011 UTC (13 years, 4 months ago) by jmcneill
Branches: MAIN
Diff to: previous 1.47: preferred, colored
Changes since revision 1.47: +11 -9 lines
make sure the sigio signal handler runs on the alternate signal stack,
fixes random SIGILLs seen recently

Revision 1.47: download - view: text, markup, annotated - select for diffs
Mon Dec 26 12:29:39 2011 UTC (13 years, 4 months ago) by jmcneill
Branches: MAIN
Diff to: previous 1.46: preferred, colored
Changes since revision 1.46: +5 -2 lines
add sigio_intr_establish so more than one driver can register a SIGIO handler

Revision 1.46: download - view: text, markup, annotated - select for diffs
Sun Dec 25 21:10:00 2011 UTC (13 years, 4 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.45: preferred, colored
Changes since revision 1.45: +3 -3 lines
Fix VM_MAX_ADDRESS that is NOT the max address BUT the max userland address
Fix VM_MAX_KERNEL_ADDRESS that is the absolute max address accesable by the
kernel...

Revision 1.45: download - view: text, markup, annotated - select for diffs
Wed Dec 14 18:51:39 2011 UTC (13 years, 4 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.44: preferred, colored
Changes since revision 1.44: +3 -3 lines
Remove the need for a siginfo structure in illegal instruction handling.

Revision 1.44: download - view: text, markup, annotated - select for diffs
Wed Dec 14 04:12:22 2011 UTC (13 years, 4 months ago) by jmcneill
Branches: MAIN
Diff to: previous 1.43: preferred, colored
Changes since revision 1.43: +7 -3 lines
need to sigaltstack for each lwp

Revision 1.43: download - view: text, markup, annotated - select for diffs
Tue Dec 13 17:54:01 2011 UTC (13 years, 4 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.42: preferred, colored
Changes since revision 1.42: +4 -17 lines
Remove old debugging cruft

Revision 1.42: download - view: text, markup, annotated - select for diffs
Sun Nov 27 21:38:17 2011 UTC (13 years, 4 months ago) by reinoud
Branches: MAIN
CVS tags: jmcneill-usbmp-pre-base2, jmcneill-usbmp-base
Branch point for: jmcneill-usbmp
Diff to: previous 1.41: preferred, colored
Changes since revision 1.41: +192 -162 lines
Big patch that changes the signal stack usage of urkel significantly.

Formerly, all signals came on the signal stack and the two important ones were
then forwared to either the system call or the pagefault handler. This worked
fine but the signal stack remains that, a stack. When we go multi-process this
stack gets corrupted and out-of-order with all kind of nastyness since a
userland process switch can occure when a system call is called or when a
process gets a page fault.

The new scheme only uses the signal stack as a jumpboard. It swaps states and
then returns from the signal, clearing the stack but instead of returning to
the code it now jumpt to the handler and that handler then returns to the code
when its finished.

Revision 1.41: download - view: text, markup, annotated - select for diffs
Fri Sep 16 16:29:11 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
CVS tags: yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, jmcneill-audiomp3-base, jmcneill-audiomp3
Branch point for: yamt-pagecache
Diff to: previous 1.40: preferred, colored
Changes since revision 1.40: +19 -19 lines
Move the debug printf's to the new dprintf_debug() and disable the SIGALRM
blocking since we queue them now.

Revision 1.40: download - view: text, markup, annotated - select for diffs
Thu Sep 15 12:25:25 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.39: preferred, colored
Changes since revision 1.39: +4 -4 lines
Move to dprintf_debug()

Revision 1.39: download - view: text, markup, annotated - select for diffs
Sat Sep 10 10:29:39 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.38: preferred, colored
Changes since revision 1.38: +3 -3 lines
The illegal instruction handler can exist on the usermodes stack and the
stackframe will disappear when its switched back.

Revision 1.38: download - view: text, markup, annotated - select for diffs
Fri Sep 9 12:21:57 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.37: preferred, colored
Changes since revision 1.37: +5 -5 lines
Be more verbose in trap.c on what address should be passed to userland. Also
detail about what function goes into recurse

Revision 1.37: download - view: text, markup, annotated - select for diffs
Thu Sep 8 19:39:00 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.36: preferred, colored
Changes since revision 1.36: +8 -6 lines
Implement a working(!) syscall! well, it can call a number of syscalls without
dying ;)

Revision 1.36: download - view: text, markup, annotated - select for diffs
Thu Sep 8 15:13:27 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.35: preferred, colored
Changes since revision 1.35: +5 -4 lines
Use the machdep.h and now use the md_check_syscall_opcode()

Revision 1.35: download - view: text, markup, annotated - select for diffs
Thu Sep 8 14:49:42 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.34: preferred, colored
Changes since revision 1.34: +12 -20 lines
Create syscall() prototype and let illegal instruction handler switch to that
switchframe

Revision 1.34: download - view: text, markup, annotated - select for diffs
Thu Sep 8 11:56:48 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.33: preferred, colored
Changes since revision 1.33: +4 -6 lines
Remove struct trapframe

Revision 1.33: download - view: text, markup, annotated - select for diffs
Wed Sep 7 14:03:49 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.32: preferred, colored
Changes since revision 1.32: +21 -5 lines
Add skeleton for possible system call implementation

Revision 1.32: download - view: text, markup, annotated - select for diffs
Wed Sep 7 10:19:40 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.31: preferred, colored
Changes since revision 1.31: +2 -3 lines
Better not copy this trapframe

Revision 1.31: download - view: text, markup, annotated - select for diffs
Wed Sep 7 10:00:19 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.30: preferred, colored
Changes since revision 1.30: +11 -9 lines
Print the byte codes that failed

State actions to implement.

Revision 1.30: download - view: text, markup, annotated - select for diffs
Tue Sep 6 09:55:04 2011 UTC (13 years, 7 months ago) by jmcneill
Branches: MAIN
Diff to: previous 1.29: preferred, colored
Changes since revision 1.29: +2 -9 lines
cpu_lwp_inkernel approach won't work, back to the drawing board

Revision 1.29: download - view: text, markup, annotated - select for diffs
Tue Sep 6 09:38:27 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.28: preferred, colored
Changes since revision 1.28: +10 -10 lines
Move sanity check before pmap since pmap and uvm can't be looking outside this
box

Revision 1.28: download - view: text, markup, annotated - select for diffs
Mon Sep 5 21:38:05 2011 UTC (13 years, 7 months ago) by jmcneill
Branches: MAIN
Diff to: previous 1.27: preferred, colored
Changes since revision 1.27: +8 -2 lines
adjust cpu_lwp_inkernel in mem access and illegal insn handlers

Revision 1.27: download - view: text, markup, annotated - select for diffs
Mon Sep 5 18:50:34 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.26: preferred, colored
Changes since revision 1.26: +7 -2 lines
Check for NULL pcb!

Revision 1.26: download - view: text, markup, annotated - select for diffs
Mon Sep 5 12:04:40 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.25: preferred, colored
Changes since revision 1.25: +4 -4 lines
Use thunk's version of sigemptyset()

Revision 1.25: download - view: text, markup, annotated - select for diffs
Mon Sep 5 11:56:52 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.24: preferred, colored
Changes since revision 1.24: +10 -10 lines
Initialise the alternative signal stack before referring to it

Revision 1.24: download - view: text, markup, annotated - select for diffs
Mon Sep 5 11:10:36 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.23: preferred, colored
Changes since revision 1.23: +8 -5 lines
Block SIGALRM on memory access and illegal instruction signal

Revision 1.23: download - view: text, markup, annotated - select for diffs
Sun Sep 4 21:01:39 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.22: preferred, colored
Changes since revision 1.22: +4 -4 lines
pcb->errno to pcb->pcb_errno

Revision 1.22: download - view: text, markup, annotated - select for diffs
Sun Sep 4 20:54:52 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.21: preferred, colored
Changes since revision 1.21: +7 -5 lines
Try to preserve errno over traps and on context switches

Revision 1.21: download - view: text, markup, annotated - select for diffs
Sun Sep 4 12:17:59 2011 UTC (13 years, 7 months ago) by jmcneill
Branches: MAIN
Diff to: previous 1.20: preferred, colored
Changes since revision 1.20: +7 -3 lines
mem_access_handler: panic if we receive sigsegv or sigbus with SI_NOINFO,
and when "peeing outside the box" print the offending va

Revision 1.20: download - view: text, markup, annotated - select for diffs
Sat Sep 3 15:33:56 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.19: preferred, colored
Changes since revision 1.19: +83 -19 lines
Add SIGILL handler, doing nothing than printing out details.
Move the address check to be done later so pmap and uvm have their go first.

Also some minor cosmetic fixes

Revision 1.19: download - view: text, markup, annotated - select for diffs
Sat Sep 3 15:00:28 2011 UTC (13 years, 7 months ago) by jmcneill
Branches: MAIN
Diff to: previous 1.18: preferred, colored
Changes since revision 1.18: +8 -6 lines
Get this compiling (but not quite linking yet) on Linux

Revision 1.18: download - view: text, markup, annotated - select for diffs
Fri Sep 2 14:54:41 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.17: preferred, colored
Changes since revision 1.17: +3 -2 lines
Add note on how to posibly create a signal and send it to a userland program

Revision 1.17: download - view: text, markup, annotated - select for diffs
Fri Sep 2 10:11:43 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.16: preferred, colored
Changes since revision 1.16: +4 -4 lines
Disable the debug_fh code for now

Revision 1.16: download - view: text, markup, annotated - select for diffs
Thu Sep 1 18:20:20 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.15: preferred, colored
Changes since revision 1.15: +11 -4 lines
Use a alternative dedicated signal stack for the sigsegv errors; the userland
stack like that of ld.elf_so can be too short to allow for such deep
stacktraces.

Revision 1.15: download - view: text, markup, annotated - select for diffs
Thu Sep 1 15:03:41 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.14: preferred, colored
Changes since revision 1.14: +11 -8 lines
Enhance debugging capabilities of NetBSD/usermode by allowing `trap.c' to
write a system image of the memory it traps. Its extremely dirty but at least
you can look at the data and code thats giving the trouble. Its memory or
state is NOT saved in the coredump of the NetBSD/usermode program.

Revision 1.14: download - view: text, markup, annotated - select for diffs
Wed Aug 31 12:42:41 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.13: preferred, colored
Changes since revision 1.13: +41 -44 lines
Completely redo R/M emulation and fault handling taking UVM as authorative
answer and not relying on UVM's pmap directions since UVM has its own schemes
for COW etc.

Revision 1.13: download - view: text, markup, annotated - select for diffs
Mon Aug 29 14:59:09 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +42 -17 lines
Implement read and modify detection code

Revision 1.12: download - view: text, markup, annotated - select for diffs
Mon Aug 29 13:15:54 2011 UTC (13 years, 7 months ago) by jmcneill
Branches: MAIN
Diff to: previous 1.11: preferred, colored
Changes since revision 1.11: +6 -3 lines
mem_access_handler: print originating lwp ptr + pid + lid

Revision 1.11: download - view: text, markup, annotated - select for diffs
Mon Aug 29 12:42:19 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +16 -7 lines
Hack trap for now to upgrade protection.. this really needs fixing soon

Revision 1.10: download - view: text, markup, annotated - select for diffs
Sun Aug 28 19:38:20 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.9: preferred, colored
Changes since revision 1.9: +5 -5 lines
Don't use the content of trapframe yet until we know how to use fill it

Revision 1.9: download - view: text, markup, annotated - select for diffs
Sun Aug 28 00:40:10 2011 UTC (13 years, 7 months ago) by jmcneill
Branches: MAIN
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +2 -13 lines
cpu_lwp_trampoline isn't supposed to return, so drop the atexit handler
and drop a panic() at the end of the function

Revision 1.8: download - view: text, markup, annotated - select for diffs
Sat Aug 27 21:19:17 2011 UTC (13 years, 7 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +15 -2 lines
Catch the atexit() so we can bypass the libc feature that if one ucontext()
ends that it then call exit()

Revision 1.7: download - view: text, markup, annotated - select for diffs
Sat Aug 27 18:01:37 2011 UTC (13 years, 8 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.6: preferred, colored
Changes since revision 1.6: +11 -4 lines
Implement trap recursion detection and fix small one-off error in range
checks for kernel space

Revision 1.6: download - view: text, markup, annotated - select for diffs
Thu Aug 25 19:06:03 2011 UTC (13 years, 8 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.5: preferred, colored
Changes since revision 1.5: +5 -5 lines
A trap is now allways asked for RW access... that needs to be fixed but thats
later care.

Revision 1.5: download - view: text, markup, annotated - select for diffs
Thu Aug 25 15:02:54 2011 UTC (13 years, 8 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +5 -2 lines
Check if we pee'd outside the box!

Revision 1.4: download - view: text, markup, annotated - select for diffs
Thu Aug 25 14:38:56 2011 UTC (13 years, 8 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +3 -3 lines
Update and claim copyright

Revision 1.3: download - view: text, markup, annotated - select for diffs
Thu Aug 25 14:37:57 2011 UTC (13 years, 8 months ago) by reinoud
Branches: MAIN
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +115 -2 lines
Implement first generation of memory access handler for the kernel.

Revision 1.1.18.1: download - view: text, markup, annotated - select for diffs
Thu Mar 11 15:03:05 2010 UTC (15 years, 1 month ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.1: preferred, colored; next MAIN 1.2: preferred, colored
Changes since revision 1.1: +2 -8 lines
sync with head

Revision 1.2: download - view: text, markup, annotated - select for diffs
Wed Oct 21 16:07:00 2009 UTC (15 years, 6 months ago) by snj
Branches: MAIN
CVS tags: yamt-nfs-mp-base9, yamt-nfs-mp-base11, yamt-nfs-mp-base10, uebayasi-xip-base7, uebayasi-xip-base6, uebayasi-xip-base5, uebayasi-xip-base4, uebayasi-xip-base3, uebayasi-xip-base2, uebayasi-xip-base1, uebayasi-xip-base, uebayasi-xip, rmind-uvmplock-nbase, rmind-uvmplock-base, rmind-uvmplock, matt-premerge-20091211, matt-mips64-premerge-20101231, jym-xensuspend-nbase, jym-xensuspend-base, jruoho-x86intr-base, jruoho-x86intr, cherry-xenmp-base, cherry-xenmp, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +2 -8 lines
Drop 3rd and 4th clauses.  OK jmcneill (copyright holder).

Revision 1.1.8.2: download - view: text, markup, annotated - select for diffs
Mon Feb 18 21:05:13 2008 UTC (17 years, 2 months ago) by mjf
Branches: mjf-devfs
Diff to: previous 1.1.8.1: preferred, colored; branchpoint 1.1: preferred, colored; next MAIN 1.2: preferred, colored
Changes since revision 1.1.8.1: +46 -0 lines
Sync with HEAD.

Revision 1.1.6.2: download - view: text, markup, annotated - select for diffs
Mon Jan 21 09:39:58 2008 UTC (17 years, 3 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.1.6.1: preferred, colored; branchpoint 1.1: preferred, colored; next MAIN 1.2: preferred, colored
Changes since revision 1.1.6.1: +46 -0 lines
sync with head

Revision 1.1.4.2: download - view: text, markup, annotated - select for diffs
Wed Jan 9 01:49:31 2008 UTC (17 years, 3 months ago) by matt
Branches: matt-armv6
Diff to: previous 1.1.4.1: preferred, colored; branchpoint 1.1: preferred, colored; next MAIN 1.2: preferred, colored
Changes since revision 1.1.4.1: +46 -0 lines
sync with HEAD

Revision 1.1.2.2: download - view: text, markup, annotated - select for diffs
Wed Jan 2 21:51:07 2008 UTC (17 years, 3 months ago) by bouyer
Branches: bouyer-xeni386
CVS tags: bouyer-xeni386-merge1
Diff to: previous 1.1.2.1: preferred, colored; branchpoint 1.1: preferred, colored; next MAIN 1.2: preferred, colored
Changes since revision 1.1.2.1: +46 -0 lines
Sync with HEAD

Revision 1.1.8.1
Sat Dec 29 14:38:37 2007 UTC (17 years, 3 months ago) by mjf
Branches: mjf-devfs
FILE REMOVED
Changes since revision 1.1: +0 -46 lines
file trap.c was added on branch mjf-devfs on 2008-02-18 21:05:13 +0000

Revision 1.1.6.1
Sat Dec 29 14:38:37 2007 UTC (17 years, 3 months ago) by yamt
Branches: yamt-lazymbuf
FILE REMOVED
Changes since revision 1.1: +0 -46 lines
file trap.c was added on branch yamt-lazymbuf on 2008-01-21 09:39:58 +0000

Revision 1.1.4.1
Sat Dec 29 14:38:37 2007 UTC (17 years, 3 months ago) by matt
Branches: matt-armv6
FILE REMOVED
Changes since revision 1.1: +0 -46 lines
file trap.c was added on branch matt-armv6 on 2008-01-09 01:49:31 +0000

Revision 1.1.2.1
Sat Dec 29 14:38:37 2007 UTC (17 years, 3 months ago) by bouyer
Branches: bouyer-xeni386
FILE REMOVED
Changes since revision 1.1: +0 -46 lines
file trap.c was added on branch bouyer-xeni386 on 2008-01-02 21:51:07 +0000

Revision 1.1: download - view: text, markup, annotated - select for diffs
Sat Dec 29 14:38:37 2007 UTC (17 years, 3 months ago) by jmcneill
Branches: MAIN
CVS tags: yamt-pf42-baseX, yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, yamt-pf42-base, yamt-pf42, yamt-nfs-mp-base8, yamt-nfs-mp-base7, yamt-nfs-mp-base6, yamt-nfs-mp-base5, yamt-nfs-mp-base4, yamt-nfs-mp-base3, yamt-nfs-mp-base2, yamt-nfs-mp-base, yamt-lazymbuf-base15, yamt-lazymbuf-base14, wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, wrstuden-revivesa, simonb-wapbl-nbase, simonb-wapbl-base, simonb-wapbl, nick-net80211-sync-base, nick-net80211-sync, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base2, nick-hppapmap-base, nick-hppapmap, netbsd-5-base, netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2, netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, netbsd-5, mjf-devfs2-base, mjf-devfs2, mjf-devfs-base, matt-nb5-pq3-base, matt-nb5-pq3, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-premerge-20091211, matt-nb5-mips64-k15, matt-nb5-mips64, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-base2, matt-armv6-nbase, matt-armv6-base, keiichi-mipv6-nbase, keiichi-mipv6-base, keiichi-mipv6, jymxensuspend-base, jym-xensuspend, hpcarm-cleanup-nbase, hpcarm-cleanup-base, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, haad-dm, bouyer-xeni386-nbase, bouyer-xeni386-base, ad-socklock-base1, ad-audiomp2-base, ad-audiomp2
Branch point for: yamt-nfs-mp, yamt-lazymbuf, mjf-devfs, matt-armv6, bouyer-xeni386
Import work-in-progress NetBSD/usermode port.

Diff request

This form allows you to request diffs between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.

Log view options

CVSweb <webmaster@jp.NetBSD.org>