Up to [cvs.NetBSD.org] / src / sys / kern
Request diff between arbitrary revisions
Default branch: MAIN
Current tag: MAIN
Revision 1.12 / (download) - annotate - [select for diffs], Sun Dec 2 21:00:13 2018 UTC (11 months, 2 weeks ago) by maxv
CVS Tags: phil-wifi-20190609, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, netbsd-9-base, netbsd-9, isaki-audio2-base, isaki-audio2, HEAD
Changes since 1.11: +3 -2 lines
Diff to previous 1.11 (colored)
Introduce KLEAK, a new feature that can detect kernel information leaks. It works by tainting memory sources with marker values, letting the data travel through the kernel, and scanning the kernel<->user frontier for these marker values. Combined with compiler instrumentation and rotation of the markers, it is able to yield relevant results with little effort. We taint the pools and the stack, and scan copyout/copyoutstr. KLEAK is supported on amd64 only for now, but it is not complicated to add more architectures (just a matter of having the address of .text, and a stack unwinder). A userland tool is provided, that allows to execute a command in rounds and monitor the leaks generated all the while. KLEAK already detected directly 12 kernel info leaks, and prompted changes that in total fixed 25+ leaks. Based on an idea developed jointly with Thomas Barabosch (of Fraunhofer FKIE).
Revision 1.11 / (download) - annotate - [select for diffs], Sat Mar 7 16:38:49 2015 UTC (4 years, 8 months ago) by christos
CVS Tags: tls-maxphys-base-20171202, prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, phil-wifi-base, 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-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521, 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, netbsd-8-base, netbsd-8-1-RELEASE, netbsd-8-1-RC1, netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1, netbsd-8, matt-nb8-mediatek-base, matt-nb8-mediatek, localcount-20160914, jdolecek-ncq-base, jdolecek-ncq, bouyer-socketcan-base1, bouyer-socketcan-base, bouyer-socketcan
Branch point for: phil-wifi, pgoyette-compat
Changes since 1.10: +6 -7 lines
Diff to previous 1.10 (colored)
Revision 1.10 / (download) - annotate - [select for diffs], Sat May 5 19:44:02 2012 UTC (7 years, 6 months ago) by christos
CVS Tags: yamt-pagecache-base9, yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, yamt-pagecache-base5, tls-maxphys-base, 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, nick-nhusb-base, 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, khorben-n900, jmcneill-usbmp-base10, agc-symver-base, agc-symver
Branch point for: tls-maxphys, nick-nhusb
Changes since 1.9: +5 -4 lines
Diff to previous 1.9 (colored)
use sy_call() so that l->l_sysent gets set, so that we can autoload modules that define new syscalls properly.
Revision 1.9 / (download) - annotate - [select for diffs], Tue Apr 29 06:53:03 2008 UTC (11 years, 6 months ago) by martin
CVS Tags: yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, yamt-pagecache-base4, yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, yamt-nfs-mp-base9, 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-base11, yamt-nfs-mp-base10, wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, wrstuden-revivesa, uebayasi-xip-base4, uebayasi-xip-base3, uebayasi-xip-base2, uebayasi-xip-base1, uebayasi-xip-base, uebayasi-xip, simonb-wapbl-nbase, simonb-wapbl-base, simonb-wapbl, rmind-uvmplock-nbase, rmind-uvmplock-base, rmind-uvmplock, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base2, nick-hppapmap-base, nick-hppapmap, netbsd-6-base, 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, netbsd-6, 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, matt-premerge-20091211, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, 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-premerge-20101231, matt-mips64-base2, jymxensuspend-base, jym-xensuspend-nbase, jym-xensuspend-base, jym-xensuspend, jruoho-x86intr-base, jruoho-x86intr, jmcneill-usbmp-pre-base2, jmcneill-usbmp-base9, jmcneill-usbmp-base8, jmcneill-usbmp-base7, jmcneill-usbmp-base6, jmcneill-usbmp-base5, jmcneill-usbmp-base4, jmcneill-usbmp-base3, jmcneill-usbmp-base2, jmcneill-usbmp-base, jmcneill-audiomp3-base, jmcneill-audiomp3, hpcarm-cleanup-nbase, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, haad-dm, cherry-xenmp-base, cherry-xenmp, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2, ad-audiomp2-base, ad-audiomp2
Branch point for: yamt-pagecache, jmcneill-usbmp
Changes since 1.8: +2 -5 lines
Diff to previous 1.8 (colored)
Convert to new 2 clause license
Revision 1.8 / (download) - annotate - [select for diffs], Wed Feb 6 22:12:42 2008 UTC (11 years, 9 months ago) by dsl
CVS Tags: yamt-pf42-baseX, yamt-pf42-base, yamt-nfs-mp-base, yamt-lazymbuf-base15, yamt-lazymbuf-base14, nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, matt-armv6-nbase, keiichi-mipv6-nbase, keiichi-mipv6-base, keiichi-mipv6, hpcarm-cleanup-base, ad-socklock-base1
Branch point for: yamt-pf42, yamt-nfs-mp, mjf-devfs2
Changes since 1.7: +7 -6 lines
Diff to previous 1.7 (colored)
Remove the 'args' parameter to 'trace_exit()' it is no longer used. Instead of passing the (un)real system call code and syscall table pointer, just pass the number of arguments - which is what ktrace really wants. Ride forthcoming 4.99.53
Revision 1.7 / (download) - annotate - [select for diffs], Sat Jan 5 12:53:56 2008 UTC (11 years, 10 months ago) by dsl
CVS Tags: matt-armv6-base, bouyer-xeni386-nbase, bouyer-xeni386-base
Branch point for: matt-armv6
Changes since 1.6: +4 -4 lines
Diff to previous 1.6 (colored)
Don't pass 'curlwp' into trace_enter() and trace_exit().
Revision 1.6 / (download) - annotate - [select for diffs], Mon Dec 31 15:32:13 2007 UTC (11 years, 10 months ago) by ad
Changes since 1.5: +2 -3 lines
Diff to previous 1.5 (colored)
Remove systrace. Ok core@.
Revision 1.5 / (download) - annotate - [select for diffs], Sat Dec 22 16:19:35 2007 UTC (11 years, 11 months ago) by dsl
CVS Tags: vmlocking2-base3
Changes since 1.4: +3 -3 lines
Diff to previous 1.4 (colored)
Further constification of the syscall args buffer. It will get __UNCONST() applied in the systrace code if/when systrace tries to change the arguments. This sucks since the syscall args might be in the trap frame, and the syscall might return ERESTART so the restarted call would use the wrong arguments. OTOH systrace() (as a security measure) is almost impossible to implement for a threaded app (validated filenames can be changed before namei() reads them into memory). The current code is just plain broken for threaded apps - data that needs to be lwp-specified is proc-specific. I believe ad is planning to nuke systrace ...
Revision 1.4 / (download) - annotate - [select for diffs], Sat Dec 22 11:38:55 2007 UTC (11 years, 11 months ago) by dsl
Changes since 1.3: +5 -4 lines
Diff to previous 1.3 (colored)
Add a few buckets of 'const' and 'static' to the system call trace code. sys_trace() still needs to be able to update the syscall args.
Revision 1.3 / (download) - annotate - [select for diffs], Thu Dec 20 23:03:12 2007 UTC (11 years, 11 months ago) by dsl
Changes since 1.2: +5 -5 lines
Diff to previous 1.2 (colored)
Convert all the system call entry points from: int foo(struct lwp *l, void *v, register_t *retval) to: int foo(struct lwp *l, const struct foo_args *uap, register_t *retval) Fixup compat code to not write into 'uap' and (in some cases) to actually pass a correctly formatted 'uap' structure with the right name to the next routine. A few 'compat' routines that just call standard ones have been deleted. All the 'compat' code compiles (along with the kernels required to test build it). 98% done by automated scripts.
Revision 1.2 / (download) - annotate - [select for diffs], Tue Dec 11 12:16:34 2007 UTC (11 years, 11 months ago) by lukem
CVS Tags: yamt-kmem-base3, yamt-kmem-base2, cube-autoconf-base, cube-autoconf
Changes since 1.1: +2 -2 lines
Diff to previous 1.1 (colored)
use __KERNEL_RCSID() instead of __RCSID()
Revision 1.1 / (download) - annotate - [select for diffs], Fri Nov 9 14:50:51 2007 UTC (12 years ago) by dsl
CVS Tags: yamt-kmem-base, vmlocking2-base2, vmlocking2-base1, vmlocking-nbase, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base, jmcneill-pm-base, bouyer-xenamd64-base2, bouyer-xenamd64-base
Branch point for: yamt-lazymbuf, yamt-kmem, vmlocking2, mjf-devfs, jmcneill-pm, bouyer-xeni386, bouyer-xenamd64
Add MI implementations of the indirect stystem call functions sys_syscall() and sys___syscall(). These functions are only used if the MI system call entry code doesn't special-case the relevant entries.
This form allows you to request diff's 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.