The NetBSD Project

CVS log for src/sys/arch/aarch64/aarch64/syscall.c

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

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.13 / (download) - annotate - [select for diffs], Thu Oct 5 19:41:03 2023 UTC (6 months, 2 weeks ago) by ad
Branch: MAIN
CVS Tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation, HEAD
Changes since 1.12: +2 -4 lines
Diff to previous 1.12 (colored)

Arrange to update cached LWP credentials in userret() rather than during
syscall/trap entry, eliminating a test+branch on every syscall/trap.

This wasn't possible in the 3.99.x timeframe when l->l_cred came about
because there wasn't a reliable/timely way to force an ONPROC LWP running on
a remote CPU into the kernel (which is just about the only new thing in
this scheme).

Revision 1.12 / (download) - annotate - [select for diffs], Sat Feb 25 00:40:22 2023 UTC (13 months, 3 weeks ago) by riastradh
Branch: MAIN
Changes since 1.11: +3 -3 lines
Diff to previous 1.11 (colored)

aarch64: curcpu() audit.

Sprinkle KASSERT (or KDASSERT in hot paths) for kpreempt_disabled()
when we use curcpu() and it's not immediately obvious that the caller
has preemption disabled but closer scrutiny suggests the caller has.

Note unsafe curcpu()s for syscall event counting.  Not sure this is
worth changing.

Possible bugs fixed:

- cpu_irq and cpu_fiq could be preempted while trying to run softints
  on this CPU.

- data_abort_handler might incorrectly think it was invoked in
  interrupt context when it was only preempted and migrated to
  another CPU.

- pmap_fault_fixup might report the wrong CPU logs.

(However, we don't currently run with kpreemption on aarch64, so
these are not yet real bugs fixed except if you patch it to build
with __HAVE_PREEMPTION.)

Revision 1.11 / (download) - annotate - [select for diffs], Mon Sep 27 17:51:15 2021 UTC (2 years, 6 months ago) by ryo
Branch: MAIN
CVS Tags: netbsd-10-base, 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
Changes since 1.10: +8 -64 lines
Diff to previous 1.10 (colored)

remove unused code.
The syscall for 32bit uses aarch32_syscall.c, so there is no need to make syscall.c support it.

Revision 1.10 / (download) - annotate - [select for diffs], Mon Sep 27 17:40:39 2021 UTC (2 years, 6 months ago) by ryo
Branch: MAIN
Changes since 1.9: +4 -2 lines
Diff to previous 1.9 (colored)

linux syscall should not break x1 register

Revision 1.9 / (download) - annotate - [select for diffs], Mon Sep 27 17:37:59 2021 UTC (2 years, 6 months ago) by ryo
Branch: MAIN
Changes since 1.8: +4 -2 lines
Diff to previous 1.8 (colored)

In order to prevent uninitialized values from being reflected in the registers after syscall, rval[] must be initialized.

Revision 1.8 / (download) - annotate - [select for diffs], Thu Sep 23 15:19:03 2021 UTC (2 years, 6 months ago) by ryo
Branch: MAIN
Changes since 1.7: +3 -3 lines
Diff to previous 1.7 (colored)

use lwp_trapframe() macro. NFC.

Revision 1.7 / (download) - annotate - [select for diffs], Thu Sep 23 06:56:26 2021 UTC (2 years, 6 months ago) by ryo
Branch: MAIN
Changes since 1.6: +26 -8 lines
Diff to previous 1.6 (colored)

add support COMPAT_LINUX for aarch64

Revision 1.2.2.1 / (download) - annotate - [select for diffs], Mon Jun 10 22:05:43 2019 UTC (4 years, 10 months ago) by christos
Branch: phil-wifi
Changes since 1.2: +5 -8 lines
Diff to previous 1.2 (colored) next main 1.3 (colored)

Sync with HEAD

Revision 1.6 / (download) - annotate - [select for diffs], Wed Apr 10 06:30:05 2019 UTC (5 years ago) by ryo
Branch: 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, phil-wifi-20191119, phil-wifi-20190609, netbsd-9-base, 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, 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
Changes since 1.5: +4 -2 lines
Diff to previous 1.5 (colored)

add missing userret() at the end of md_child_return().
this change make some ATF to pass.

Revision 1.5 / (download) - annotate - [select for diffs], Sat Apr 6 11:54:19 2019 UTC (5 years ago) by kamil
Branch: MAIN
Changes since 1.4: +3 -7 lines
Diff to previous 1.4 (colored)

Centralized shared part of child_return() into MI part

Add a new function md_child_return() for MD specific bits only.

New child_return() is now part of MI and central code that handles
uniformly tracing code (KTR and ptrace(2)).

Synchronize value passed to ktrsysret() among ports to SYS_fork. This is
a traditional value and accessing p_lflag to check for PL_PPWAIT shall
use locking against proc_lock. Returning SYS_fork vs SYS_vfork still isn't
correct enough as there are more entry points to forking code. Instead of
making it too good, just settle with plain SYS_fork for all ports.

Revision 1.4 / (download) - annotate - [select for diffs], Fri Mar 1 02:40:01 2019 UTC (5 years, 1 month ago) by mrg
Branch: MAIN
Changes since 1.3: +2 -3 lines
Diff to previous 1.3 (colored)

no need to include opt_multiprocessor.h here.

Revision 1.1.28.2 / (download) - annotate - [select for diffs], Sat Jul 28 04:37:25 2018 UTC (5 years, 8 months ago) by pgoyette
Branch: pgoyette-compat
CVS Tags: pgoyette-compat-merge-20190127
Changes since 1.1.28.1: +3 -3 lines
Diff to previous 1.1.28.1 (colored) to branchpoint 1.1 (colored) next main 1.2 (colored)

Sync with HEAD

Revision 1.3 / (download) - annotate - [select for diffs], Tue Jul 17 00:36:30 2018 UTC (5 years, 9 months ago) by christos
Branch: MAIN
CVS Tags: pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728
Changes since 1.2: +3 -3 lines
Diff to previous 1.2 (colored)

add missing casts

Revision 1.1.28.1 / (download) - annotate - [select for diffs], Sat Apr 7 04:12:10 2018 UTC (6 years ago) by pgoyette
Branch: pgoyette-compat
Changes since 1.1: +11 -6 lines
Diff to previous 1.1 (colored)

Sync with HEAD.  77 conflicts resolved - all of them $NetBSD$

Revision 1.2 / (download) - annotate - [select for diffs], Sun Apr 1 04:35:03 2018 UTC (6 years ago) by ryo
Branch: MAIN
CVS Tags: phil-wifi-base, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407
Branch point for: phil-wifi
Changes since 1.1: +11 -6 lines
Diff to previous 1.1 (colored)

Add initial support for ARMv8 (AARCH64) (by nisimura@ and ryo@)

- sys/arch/evbarm64 is gone and integrated into sys/arch/evbarm. (by skrll@)
- add support fdt. evbarm/conf/GENERIC64 fdt (bcm2837,sunxi,tegra) based generic 64bit kernel config. (by skrll@, jmcneill@)

Revision 1.1.4.2 / (download) - annotate - [select for diffs], Wed Aug 20 00:02:39 2014 UTC (9 years, 8 months ago) by tls
Branch: tls-maxphys
Changes since 1.1.4.1: +227 -0 lines
Diff to previous 1.1.4.1 (colored) to branchpoint 1.1 (colored) next main 1.2 (colored)

Rebase to HEAD as of a few days ago.

Revision 1.1.4.1, Sun Aug 10 05:47:37 2014 UTC (9 years, 8 months ago) by tls
Branch: tls-maxphys
Changes since 1.1: +0 -227 lines
FILE REMOVED

file syscall.c was added on branch tls-maxphys on 2014-08-20 00:02:39 +0000

Revision 1.1 / (download) - annotate - [select for diffs], Sun Aug 10 05:47:37 2014 UTC (9 years, 8 months ago) by matt
Branch: MAIN
CVS Tags: tls-maxphys-base-20171202, tls-maxphys-base, 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-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-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, jdolecek-ncq-base, jdolecek-ncq, bouyer-socketcan-base1, bouyer-socketcan-base, bouyer-socketcan
Branch point for: tls-maxphys, pgoyette-compat

Preliminary files for AARCH64 (64-bit ARM) support.
Enough for a distribution build.

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.




CVSweb <webmaster@jp.NetBSD.org>