#
1.85 |
|
30-Oct-2022 |
riastradh |
arm/pic: Sprinkle dtrace probes on interrupt handlers like x86.
|
#
1.84 |
|
29-Oct-2022 |
riastradh |
arm/pic: Use a local variable to reduce #ifdef scope.
Avoids straddling a conditional this way.
|
Revision tags: bouyer-sunxi-drm-base
|
#
1.83 |
|
28-Jul-2022 |
riastradh |
arm/pic: Mark definitions static to match declarations.
|
#
1.82 |
|
28-Jul-2022 |
riastradh |
arm/pic: Assert ci_cpl doesn't lower across interrupt handler.
|
#
1.81 |
|
28-Jul-2022 |
skrll |
Catch up with the per lwp astpending (rather than per cpu) flag in the preemption code. NFC as preemption (still) isn't enabled.
|
#
1.80 |
|
25-Jun-2022 |
jmcneill |
pic: Update ci_cpl in pic_set_priority callback.
Not all ICs need interrupts disabled to update the priority. DAIF accesses are not cheap, so push the update of ci_cpl from pic_set_priority to the IC's pic_set_priority callback, and let the IC driver determine whether or not it needs interrupts disabled.
|
#
1.79 |
|
02-Jan-2022 |
riastradh |
arm: No #if DIAGNOSTIC needed any more.
Compiler can (and gcc does) flush call to strlen when the result is unused, so no performance impact here.
|
#
1.78 |
|
21-Dec-2021 |
skrll |
Fix a bug where pic_establish_intr would fail to call pic_establish_irq if a free pic__iplsources slot was found, i.e. an interrupt handler at the same ipl had been disestablished previously.
|
#
1.77 |
|
21-Dec-2021 |
skrll |
G/C pic_iplsource
|
#
1.76 |
|
21-Dec-2021 |
skrll |
KNF
|
#
1.75 |
|
31-Oct-2021 |
skrll |
Only perform pic_unblock_percpu if all of the following are true - mp_online, i.e. APs are running. - is_mpsafe, i.e. the interrupt handler is MP safe - is_percpu, i.e. the interrupt actually requires it!
The last one (is_percpu) is true for GIC PPI+SGI only.
|
#
1.74 |
|
31-Oct-2021 |
skrll |
Assert we can sleep in pic_add
|
#
1.73 |
|
31-Oct-2021 |
skrll |
Rework Arm (32bit and 64bit) AP startup so that cpu_hatch doesn't sleep.
The AP initialisation code in cpu_init_secondary_processor will read and initialise the required system registers and state for the BP to attach and report.
Rework the interrupt handler code for this new sequence. Thankfully, this removes a bunch of code for bcm2836mp.
The VFP detection handler on <= armv7 relies on the global undefined handler being in place until the BP attaches vfp. That is, after the APs have been spun up.
gicv3_its.c has a serialisation issue which is protected against in the gicv3_its_cpu_init, which is called from cpu_hatch, with a spin lock. The serialisation issue needs addressing more completely.
Tested on RPI3, Apple M1, QEMU, and lx2k
Fixes PR port-arm/56264: diagnostic assertion "l->l_stat == LSONPROC" failed on RPI3
|
#
1.72 |
|
26-Sep-2021 |
jmcneill |
If an SGI or PPI is established after interrupts are enabled, make sure we unblock the source on _all_ CPUs and not just the CPU that is establishing the interrupt.
|
Revision tags: thorpej-i2c-spi-conf2-base
|
#
1.71 |
|
08-Aug-2021 |
skrll |
Re-apply
Move 'struct pic_pending' from percpu to struct cpu_info. Saves a few instructions in splx.
There is(/was) no need to use atomic operations on the percpu / cpu_info members, so don't.
Finally removng the use of percpu should help avoid problems with "late" attaching cpus.
|
Revision tags: thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
#
1.70 |
|
27-Mar-2021 |
jmcneill |
Revert recent pic optimizations until I have more time to work on this.
|
#
1.69 |
|
21-Feb-2021 |
jmcneill |
branches: 1.69.2; Inline pic_set_priority and use cpu_dosoftints_ci when available.
|
#
1.68 |
|
21-Feb-2021 |
skrll |
Fixup with __HAVE_PREEMPTION code which is currently unused
|
#
1.67 |
|
20-Feb-2021 |
jmcneill |
Inline "pic_do_pending_ints" in splx and check ci_pending_ipls to optimize the common case (hw priority, no cascaded interrupts pending).
This also removes the need for the "pic_pending_used" flag, and should fix booting on Raspberry Pi 3.
|
#
1.66 |
|
20-Feb-2021 |
jmcneill |
Move 'struct pic_pending' from percpu to struct cpu_info. Saves a few instructions in splx.
|
#
1.65 |
|
16-Feb-2021 |
jmcneill |
pic: avoid pic_do_pending_ints if pic_mark_pending_* has never been called
|
#
1.64 |
|
15-Feb-2021 |
jmcneill |
splx: use pic_set_priority_psw in interrupts disabled case to skip a few more daif accesses.
|
#
1.63 |
|
15-Feb-2021 |
jmcneill |
pic: reduce the number of daif accesses in pic_do_pending_ints
The caller has already provided daif state. No need to keep updating daif via pic_set_priority if it's already in the state we need (interrupts disabled).
|
#
1.62 |
|
07-Feb-2021 |
jmcneill |
Use ENABLE_INTERRUPT() / DISABLE_INTERRUPT() instead of cpsie()/cpsid() in places where we don't care about the cpsie() return value.
|
#
1.61 |
|
01-Nov-2020 |
jmcneill |
branches: 1.61.2; intr_ipi_send: assert that kcp is either NULL or contains exactly one CPU
|
#
1.60 |
|
26-Oct-2020 |
skrll |
Improve a comment
|
#
1.59 |
|
26-Oct-2020 |
skrll |
KNF
|
#
1.58 |
|
25-Oct-2020 |
skrll |
KASSERT -> KASSERTMSG
|
#
1.57 |
|
27-Jul-2020 |
skrll |
Trailing whitespace
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
|
#
1.56 |
|
01-Feb-2020 |
riastradh |
KNF
|
#
1.55 |
|
01-Feb-2020 |
riastradh |
Reduce some ifdefs.
|
#
1.54 |
|
01-Feb-2020 |
riastradh |
pic_pending_zero is unnecessary; percpu_alloc already zeroes.
|
#
1.53 |
|
01-Feb-2020 |
riastradh |
Switch arm pic allocation and initialization to percpu_create.
|
Revision tags: ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
#
1.52 |
|
24-Dec-2019 |
skrll |
branches: 1.52.2; Update pic_add to allocate and return an irqbase if passed PIC_IRQBASE_ALLOC.
|
#
1.51 |
|
24-Dec-2019 |
skrll |
Make pic_sourcebase static
|
#
1.50 |
|
23-Dec-2019 |
jmcneill |
Add reference counts to intr_mask/intr_unmask as calls can be nested, spotted by thorpej
|
#
1.49 |
|
23-Dec-2019 |
jmcneill |
Implement acpi_md_intr_mask and acpi_md_intr_unmask
|
Revision tags: netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.48 |
|
16-Nov-2018 |
jmcneill |
Add intr_establish_xname support to arm and expose it to intrctl
|
#
1.47 |
|
13-Nov-2018 |
jmcneill |
Fix intrctl for pics with non-0 irqbase
|
#
1.46 |
|
11-Nov-2018 |
jmcneill |
Add support for intrctl(8).
|
Revision tags: pgoyette-compat-1020
|
#
1.45 |
|
12-Oct-2018 |
jmcneill |
Implement intr_string(9)
|
Revision tags: pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728
|
#
1.44 |
|
15-Jul-2018 |
jmcneill |
Add support for setting and getting interrupt affinity.
|
#
1.43 |
|
09-Jul-2018 |
ryo |
fix false positive KASSERT. the case that secondary processors failed to hatch, and not attached.
when "cpu1 at cpus0: disabled (unresponsive)"
|
Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407
|
#
1.42 |
|
01-Apr-2018 |
ryo |
branches: 1.42.2; 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 tags: pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
#
1.41 |
|
12-Oct-2017 |
skrll |
branches: 1.41.2; Trailing whitespace
|
#
1.40 |
|
21-Sep-2017 |
skrll |
spaces to TAB
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|
#
1.83 |
|
28-Jul-2022 |
riastradh |
arm/pic: Mark definitions static to match declarations.
|
#
1.82 |
|
28-Jul-2022 |
riastradh |
arm/pic: Assert ci_cpl doesn't lower across interrupt handler.
|
#
1.81 |
|
28-Jul-2022 |
skrll |
Catch up with the per lwp astpending (rather than per cpu) flag in the preemption code. NFC as preemption (still) isn't enabled.
|
#
1.80 |
|
25-Jun-2022 |
jmcneill |
pic: Update ci_cpl in pic_set_priority callback.
Not all ICs need interrupts disabled to update the priority. DAIF accesses are not cheap, so push the update of ci_cpl from pic_set_priority to the IC's pic_set_priority callback, and let the IC driver determine whether or not it needs interrupts disabled.
|
#
1.79 |
|
02-Jan-2022 |
riastradh |
arm: No #if DIAGNOSTIC needed any more.
Compiler can (and gcc does) flush call to strlen when the result is unused, so no performance impact here.
|
#
1.78 |
|
21-Dec-2021 |
skrll |
Fix a bug where pic_establish_intr would fail to call pic_establish_irq if a free pic__iplsources slot was found, i.e. an interrupt handler at the same ipl had been disestablished previously.
|
#
1.77 |
|
21-Dec-2021 |
skrll |
G/C pic_iplsource
|
#
1.76 |
|
21-Dec-2021 |
skrll |
KNF
|
#
1.75 |
|
31-Oct-2021 |
skrll |
Only perform pic_unblock_percpu if all of the following are true - mp_online, i.e. APs are running. - is_mpsafe, i.e. the interrupt handler is MP safe - is_percpu, i.e. the interrupt actually requires it!
The last one (is_percpu) is true for GIC PPI+SGI only.
|
#
1.74 |
|
31-Oct-2021 |
skrll |
Assert we can sleep in pic_add
|
#
1.73 |
|
31-Oct-2021 |
skrll |
Rework Arm (32bit and 64bit) AP startup so that cpu_hatch doesn't sleep.
The AP initialisation code in cpu_init_secondary_processor will read and initialise the required system registers and state for the BP to attach and report.
Rework the interrupt handler code for this new sequence. Thankfully, this removes a bunch of code for bcm2836mp.
The VFP detection handler on <= armv7 relies on the global undefined handler being in place until the BP attaches vfp. That is, after the APs have been spun up.
gicv3_its.c has a serialisation issue which is protected against in the gicv3_its_cpu_init, which is called from cpu_hatch, with a spin lock. The serialisation issue needs addressing more completely.
Tested on RPI3, Apple M1, QEMU, and lx2k
Fixes PR port-arm/56264: diagnostic assertion "l->l_stat == LSONPROC" failed on RPI3
|
#
1.72 |
|
26-Sep-2021 |
jmcneill |
If an SGI or PPI is established after interrupts are enabled, make sure we unblock the source on _all_ CPUs and not just the CPU that is establishing the interrupt.
|
Revision tags: thorpej-i2c-spi-conf2-base
|
#
1.71 |
|
08-Aug-2021 |
skrll |
Re-apply
Move 'struct pic_pending' from percpu to struct cpu_info. Saves a few instructions in splx.
There is(/was) no need to use atomic operations on the percpu / cpu_info members, so don't.
Finally removng the use of percpu should help avoid problems with "late" attaching cpus.
|
Revision tags: thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
#
1.70 |
|
27-Mar-2021 |
jmcneill |
Revert recent pic optimizations until I have more time to work on this.
|
#
1.69 |
|
21-Feb-2021 |
jmcneill |
branches: 1.69.2; Inline pic_set_priority and use cpu_dosoftints_ci when available.
|
#
1.68 |
|
21-Feb-2021 |
skrll |
Fixup with __HAVE_PREEMPTION code which is currently unused
|
#
1.67 |
|
20-Feb-2021 |
jmcneill |
Inline "pic_do_pending_ints" in splx and check ci_pending_ipls to optimize the common case (hw priority, no cascaded interrupts pending).
This also removes the need for the "pic_pending_used" flag, and should fix booting on Raspberry Pi 3.
|
#
1.66 |
|
20-Feb-2021 |
jmcneill |
Move 'struct pic_pending' from percpu to struct cpu_info. Saves a few instructions in splx.
|
#
1.65 |
|
16-Feb-2021 |
jmcneill |
pic: avoid pic_do_pending_ints if pic_mark_pending_* has never been called
|
#
1.64 |
|
15-Feb-2021 |
jmcneill |
splx: use pic_set_priority_psw in interrupts disabled case to skip a few more daif accesses.
|
#
1.63 |
|
15-Feb-2021 |
jmcneill |
pic: reduce the number of daif accesses in pic_do_pending_ints
The caller has already provided daif state. No need to keep updating daif via pic_set_priority if it's already in the state we need (interrupts disabled).
|
#
1.62 |
|
07-Feb-2021 |
jmcneill |
Use ENABLE_INTERRUPT() / DISABLE_INTERRUPT() instead of cpsie()/cpsid() in places where we don't care about the cpsie() return value.
|
#
1.61 |
|
01-Nov-2020 |
jmcneill |
branches: 1.61.2; intr_ipi_send: assert that kcp is either NULL or contains exactly one CPU
|
#
1.60 |
|
26-Oct-2020 |
skrll |
Improve a comment
|
#
1.59 |
|
26-Oct-2020 |
skrll |
KNF
|
#
1.58 |
|
25-Oct-2020 |
skrll |
KASSERT -> KASSERTMSG
|
#
1.57 |
|
27-Jul-2020 |
skrll |
Trailing whitespace
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
|
#
1.56 |
|
01-Feb-2020 |
riastradh |
KNF
|
#
1.55 |
|
01-Feb-2020 |
riastradh |
Reduce some ifdefs.
|
#
1.54 |
|
01-Feb-2020 |
riastradh |
pic_pending_zero is unnecessary; percpu_alloc already zeroes.
|
#
1.53 |
|
01-Feb-2020 |
riastradh |
Switch arm pic allocation and initialization to percpu_create.
|
Revision tags: ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
#
1.52 |
|
24-Dec-2019 |
skrll |
branches: 1.52.2; Update pic_add to allocate and return an irqbase if passed PIC_IRQBASE_ALLOC.
|
#
1.51 |
|
24-Dec-2019 |
skrll |
Make pic_sourcebase static
|
#
1.50 |
|
23-Dec-2019 |
jmcneill |
Add reference counts to intr_mask/intr_unmask as calls can be nested, spotted by thorpej
|
#
1.49 |
|
23-Dec-2019 |
jmcneill |
Implement acpi_md_intr_mask and acpi_md_intr_unmask
|
Revision tags: netbsd-9-2-RELEASE netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.48 |
|
16-Nov-2018 |
jmcneill |
Add intr_establish_xname support to arm and expose it to intrctl
|
#
1.47 |
|
13-Nov-2018 |
jmcneill |
Fix intrctl for pics with non-0 irqbase
|
#
1.46 |
|
11-Nov-2018 |
jmcneill |
Add support for intrctl(8).
|
Revision tags: pgoyette-compat-1020
|
#
1.45 |
|
12-Oct-2018 |
jmcneill |
Implement intr_string(9)
|
Revision tags: pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728
|
#
1.44 |
|
15-Jul-2018 |
jmcneill |
Add support for setting and getting interrupt affinity.
|
#
1.43 |
|
09-Jul-2018 |
ryo |
fix false positive KASSERT. the case that secondary processors failed to hatch, and not attached.
when "cpu1 at cpus0: disabled (unresponsive)"
|
Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407
|
#
1.42 |
|
01-Apr-2018 |
ryo |
branches: 1.42.2; 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 tags: pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
#
1.41 |
|
12-Oct-2017 |
skrll |
branches: 1.41.2; Trailing whitespace
|
#
1.40 |
|
21-Sep-2017 |
skrll |
spaces to TAB
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|
#
1.80 |
|
25-Jun-2022 |
jmcneill |
pic: Update ci_cpl in pic_set_priority callback.
Not all ICs need interrupts disabled to update the priority. DAIF accesses are not cheap, so push the update of ci_cpl from pic_set_priority to the IC's pic_set_priority callback, and let the IC driver determine whether or not it needs interrupts disabled.
|
#
1.79 |
|
02-Jan-2022 |
riastradh |
arm: No #if DIAGNOSTIC needed any more.
Compiler can (and gcc does) flush call to strlen when the result is unused, so no performance impact here.
|
#
1.78 |
|
21-Dec-2021 |
skrll |
Fix a bug where pic_establish_intr would fail to call pic_establish_irq if a free pic__iplsources slot was found, i.e. an interrupt handler at the same ipl had been disestablished previously.
|
#
1.77 |
|
21-Dec-2021 |
skrll |
G/C pic_iplsource
|
#
1.76 |
|
21-Dec-2021 |
skrll |
KNF
|
#
1.75 |
|
31-Oct-2021 |
skrll |
Only perform pic_unblock_percpu if all of the following are true - mp_online, i.e. APs are running. - is_mpsafe, i.e. the interrupt handler is MP safe - is_percpu, i.e. the interrupt actually requires it!
The last one (is_percpu) is true for GIC PPI+SGI only.
|
#
1.74 |
|
31-Oct-2021 |
skrll |
Assert we can sleep in pic_add
|
#
1.73 |
|
31-Oct-2021 |
skrll |
Rework Arm (32bit and 64bit) AP startup so that cpu_hatch doesn't sleep.
The AP initialisation code in cpu_init_secondary_processor will read and initialise the required system registers and state for the BP to attach and report.
Rework the interrupt handler code for this new sequence. Thankfully, this removes a bunch of code for bcm2836mp.
The VFP detection handler on <= armv7 relies on the global undefined handler being in place until the BP attaches vfp. That is, after the APs have been spun up.
gicv3_its.c has a serialisation issue which is protected against in the gicv3_its_cpu_init, which is called from cpu_hatch, with a spin lock. The serialisation issue needs addressing more completely.
Tested on RPI3, Apple M1, QEMU, and lx2k
Fixes PR port-arm/56264: diagnostic assertion "l->l_stat == LSONPROC" failed on RPI3
|
#
1.72 |
|
26-Sep-2021 |
jmcneill |
If an SGI or PPI is established after interrupts are enabled, make sure we unblock the source on _all_ CPUs and not just the CPU that is establishing the interrupt.
|
Revision tags: thorpej-i2c-spi-conf2-base
|
#
1.71 |
|
08-Aug-2021 |
skrll |
Re-apply
Move 'struct pic_pending' from percpu to struct cpu_info. Saves a few instructions in splx.
There is(/was) no need to use atomic operations on the percpu / cpu_info members, so don't.
Finally removng the use of percpu should help avoid problems with "late" attaching cpus.
|
Revision tags: thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
#
1.70 |
|
27-Mar-2021 |
jmcneill |
Revert recent pic optimizations until I have more time to work on this.
|
#
1.69 |
|
21-Feb-2021 |
jmcneill |
branches: 1.69.2; Inline pic_set_priority and use cpu_dosoftints_ci when available.
|
#
1.68 |
|
21-Feb-2021 |
skrll |
Fixup with __HAVE_PREEMPTION code which is currently unused
|
#
1.67 |
|
20-Feb-2021 |
jmcneill |
Inline "pic_do_pending_ints" in splx and check ci_pending_ipls to optimize the common case (hw priority, no cascaded interrupts pending).
This also removes the need for the "pic_pending_used" flag, and should fix booting on Raspberry Pi 3.
|
#
1.66 |
|
20-Feb-2021 |
jmcneill |
Move 'struct pic_pending' from percpu to struct cpu_info. Saves a few instructions in splx.
|
#
1.65 |
|
16-Feb-2021 |
jmcneill |
pic: avoid pic_do_pending_ints if pic_mark_pending_* has never been called
|
#
1.64 |
|
15-Feb-2021 |
jmcneill |
splx: use pic_set_priority_psw in interrupts disabled case to skip a few more daif accesses.
|
#
1.63 |
|
15-Feb-2021 |
jmcneill |
pic: reduce the number of daif accesses in pic_do_pending_ints
The caller has already provided daif state. No need to keep updating daif via pic_set_priority if it's already in the state we need (interrupts disabled).
|
#
1.62 |
|
07-Feb-2021 |
jmcneill |
Use ENABLE_INTERRUPT() / DISABLE_INTERRUPT() instead of cpsie()/cpsid() in places where we don't care about the cpsie() return value.
|
#
1.61 |
|
01-Nov-2020 |
jmcneill |
branches: 1.61.2; intr_ipi_send: assert that kcp is either NULL or contains exactly one CPU
|
#
1.60 |
|
26-Oct-2020 |
skrll |
Improve a comment
|
#
1.59 |
|
26-Oct-2020 |
skrll |
KNF
|
#
1.58 |
|
25-Oct-2020 |
skrll |
KASSERT -> KASSERTMSG
|
#
1.57 |
|
27-Jul-2020 |
skrll |
Trailing whitespace
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
|
#
1.56 |
|
01-Feb-2020 |
riastradh |
KNF
|
#
1.55 |
|
01-Feb-2020 |
riastradh |
Reduce some ifdefs.
|
#
1.54 |
|
01-Feb-2020 |
riastradh |
pic_pending_zero is unnecessary; percpu_alloc already zeroes.
|
#
1.53 |
|
01-Feb-2020 |
riastradh |
Switch arm pic allocation and initialization to percpu_create.
|
Revision tags: ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
#
1.52 |
|
24-Dec-2019 |
skrll |
branches: 1.52.2; Update pic_add to allocate and return an irqbase if passed PIC_IRQBASE_ALLOC.
|
#
1.51 |
|
24-Dec-2019 |
skrll |
Make pic_sourcebase static
|
#
1.50 |
|
23-Dec-2019 |
jmcneill |
Add reference counts to intr_mask/intr_unmask as calls can be nested, spotted by thorpej
|
#
1.49 |
|
23-Dec-2019 |
jmcneill |
Implement acpi_md_intr_mask and acpi_md_intr_unmask
|
Revision tags: netbsd-9-2-RELEASE netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.48 |
|
16-Nov-2018 |
jmcneill |
Add intr_establish_xname support to arm and expose it to intrctl
|
#
1.47 |
|
13-Nov-2018 |
jmcneill |
Fix intrctl for pics with non-0 irqbase
|
#
1.46 |
|
11-Nov-2018 |
jmcneill |
Add support for intrctl(8).
|
Revision tags: pgoyette-compat-1020
|
#
1.45 |
|
12-Oct-2018 |
jmcneill |
Implement intr_string(9)
|
Revision tags: pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728
|
#
1.44 |
|
15-Jul-2018 |
jmcneill |
Add support for setting and getting interrupt affinity.
|
#
1.43 |
|
09-Jul-2018 |
ryo |
fix false positive KASSERT. the case that secondary processors failed to hatch, and not attached.
when "cpu1 at cpus0: disabled (unresponsive)"
|
Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407
|
#
1.42 |
|
01-Apr-2018 |
ryo |
branches: 1.42.2; 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 tags: pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
#
1.41 |
|
12-Oct-2017 |
skrll |
branches: 1.41.2; Trailing whitespace
|
#
1.40 |
|
21-Sep-2017 |
skrll |
spaces to TAB
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|
#
1.79 |
|
02-Jan-2022 |
riastradh |
arm: No #if DIAGNOSTIC needed any more.
Compiler can (and gcc does) flush call to strlen when the result is unused, so no performance impact here.
|
#
1.78 |
|
21-Dec-2021 |
skrll |
Fix a bug where pic_establish_intr would fail to call pic_establish_irq if a free pic__iplsources slot was found, i.e. an interrupt handler at the same ipl had been disestablished previously.
|
#
1.77 |
|
21-Dec-2021 |
skrll |
G/C pic_iplsource
|
#
1.76 |
|
21-Dec-2021 |
skrll |
KNF
|
#
1.75 |
|
31-Oct-2021 |
skrll |
Only perform pic_unblock_percpu if all of the following are true - mp_online, i.e. APs are running. - is_mpsafe, i.e. the interrupt handler is MP safe - is_percpu, i.e. the interrupt actually requires it!
The last one (is_percpu) is true for GIC PPI+SGI only.
|
#
1.74 |
|
31-Oct-2021 |
skrll |
Assert we can sleep in pic_add
|
#
1.73 |
|
31-Oct-2021 |
skrll |
Rework Arm (32bit and 64bit) AP startup so that cpu_hatch doesn't sleep.
The AP initialisation code in cpu_init_secondary_processor will read and initialise the required system registers and state for the BP to attach and report.
Rework the interrupt handler code for this new sequence. Thankfully, this removes a bunch of code for bcm2836mp.
The VFP detection handler on <= armv7 relies on the global undefined handler being in place until the BP attaches vfp. That is, after the APs have been spun up.
gicv3_its.c has a serialisation issue which is protected against in the gicv3_its_cpu_init, which is called from cpu_hatch, with a spin lock. The serialisation issue needs addressing more completely.
Tested on RPI3, Apple M1, QEMU, and lx2k
Fixes PR port-arm/56264: diagnostic assertion "l->l_stat == LSONPROC" failed on RPI3
|
#
1.72 |
|
26-Sep-2021 |
jmcneill |
If an SGI or PPI is established after interrupts are enabled, make sure we unblock the source on _all_ CPUs and not just the CPU that is establishing the interrupt.
|
Revision tags: thorpej-i2c-spi-conf2-base
|
#
1.71 |
|
08-Aug-2021 |
skrll |
Re-apply
Move 'struct pic_pending' from percpu to struct cpu_info. Saves a few instructions in splx.
There is(/was) no need to use atomic operations on the percpu / cpu_info members, so don't.
Finally removng the use of percpu should help avoid problems with "late" attaching cpus.
|
Revision tags: thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
#
1.70 |
|
27-Mar-2021 |
jmcneill |
Revert recent pic optimizations until I have more time to work on this.
|
#
1.69 |
|
21-Feb-2021 |
jmcneill |
branches: 1.69.2; Inline pic_set_priority and use cpu_dosoftints_ci when available.
|
#
1.68 |
|
21-Feb-2021 |
skrll |
Fixup with __HAVE_PREEMPTION code which is currently unused
|
#
1.67 |
|
20-Feb-2021 |
jmcneill |
Inline "pic_do_pending_ints" in splx and check ci_pending_ipls to optimize the common case (hw priority, no cascaded interrupts pending).
This also removes the need for the "pic_pending_used" flag, and should fix booting on Raspberry Pi 3.
|
#
1.66 |
|
20-Feb-2021 |
jmcneill |
Move 'struct pic_pending' from percpu to struct cpu_info. Saves a few instructions in splx.
|
#
1.65 |
|
16-Feb-2021 |
jmcneill |
pic: avoid pic_do_pending_ints if pic_mark_pending_* has never been called
|
#
1.64 |
|
15-Feb-2021 |
jmcneill |
splx: use pic_set_priority_psw in interrupts disabled case to skip a few more daif accesses.
|
#
1.63 |
|
15-Feb-2021 |
jmcneill |
pic: reduce the number of daif accesses in pic_do_pending_ints
The caller has already provided daif state. No need to keep updating daif via pic_set_priority if it's already in the state we need (interrupts disabled).
|
#
1.62 |
|
07-Feb-2021 |
jmcneill |
Use ENABLE_INTERRUPT() / DISABLE_INTERRUPT() instead of cpsie()/cpsid() in places where we don't care about the cpsie() return value.
|
#
1.61 |
|
01-Nov-2020 |
jmcneill |
branches: 1.61.2; intr_ipi_send: assert that kcp is either NULL or contains exactly one CPU
|
#
1.60 |
|
26-Oct-2020 |
skrll |
Improve a comment
|
#
1.59 |
|
26-Oct-2020 |
skrll |
KNF
|
#
1.58 |
|
25-Oct-2020 |
skrll |
KASSERT -> KASSERTMSG
|
#
1.57 |
|
27-Jul-2020 |
skrll |
Trailing whitespace
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
|
#
1.56 |
|
01-Feb-2020 |
riastradh |
KNF
|
#
1.55 |
|
01-Feb-2020 |
riastradh |
Reduce some ifdefs.
|
#
1.54 |
|
01-Feb-2020 |
riastradh |
pic_pending_zero is unnecessary; percpu_alloc already zeroes.
|
#
1.53 |
|
01-Feb-2020 |
riastradh |
Switch arm pic allocation and initialization to percpu_create.
|
Revision tags: ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
#
1.52 |
|
24-Dec-2019 |
skrll |
branches: 1.52.2; Update pic_add to allocate and return an irqbase if passed PIC_IRQBASE_ALLOC.
|
#
1.51 |
|
24-Dec-2019 |
skrll |
Make pic_sourcebase static
|
#
1.50 |
|
23-Dec-2019 |
jmcneill |
Add reference counts to intr_mask/intr_unmask as calls can be nested, spotted by thorpej
|
#
1.49 |
|
23-Dec-2019 |
jmcneill |
Implement acpi_md_intr_mask and acpi_md_intr_unmask
|
Revision tags: netbsd-9-2-RELEASE netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.48 |
|
16-Nov-2018 |
jmcneill |
Add intr_establish_xname support to arm and expose it to intrctl
|
#
1.47 |
|
13-Nov-2018 |
jmcneill |
Fix intrctl for pics with non-0 irqbase
|
#
1.46 |
|
11-Nov-2018 |
jmcneill |
Add support for intrctl(8).
|
Revision tags: pgoyette-compat-1020
|
#
1.45 |
|
12-Oct-2018 |
jmcneill |
Implement intr_string(9)
|
Revision tags: pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728
|
#
1.44 |
|
15-Jul-2018 |
jmcneill |
Add support for setting and getting interrupt affinity.
|
#
1.43 |
|
09-Jul-2018 |
ryo |
fix false positive KASSERT. the case that secondary processors failed to hatch, and not attached.
when "cpu1 at cpus0: disabled (unresponsive)"
|
Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407
|
#
1.42 |
|
01-Apr-2018 |
ryo |
branches: 1.42.2; 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 tags: pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
#
1.41 |
|
12-Oct-2017 |
skrll |
branches: 1.41.2; Trailing whitespace
|
#
1.40 |
|
21-Sep-2017 |
skrll |
spaces to TAB
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|
#
1.78 |
|
21-Dec-2021 |
skrll |
Fix a bug where pic_establish_intr would fail to call pic_establish_irq if a free pic__iplsources slot was found, i.e. an interrupt handler at the same ipl had been disestablished previously.
|
#
1.77 |
|
21-Dec-2021 |
skrll |
G/C pic_iplsource
|
#
1.76 |
|
21-Dec-2021 |
skrll |
KNF
|
#
1.75 |
|
31-Oct-2021 |
skrll |
Only perform pic_unblock_percpu if all of the following are true - mp_online, i.e. APs are running. - is_mpsafe, i.e. the interrupt handler is MP safe - is_percpu, i.e. the interrupt actually requires it!
The last one (is_percpu) is true for GIC PPI+SGI only.
|
#
1.74 |
|
31-Oct-2021 |
skrll |
Assert we can sleep in pic_add
|
#
1.73 |
|
31-Oct-2021 |
skrll |
Rework Arm (32bit and 64bit) AP startup so that cpu_hatch doesn't sleep.
The AP initialisation code in cpu_init_secondary_processor will read and initialise the required system registers and state for the BP to attach and report.
Rework the interrupt handler code for this new sequence. Thankfully, this removes a bunch of code for bcm2836mp.
The VFP detection handler on <= armv7 relies on the global undefined handler being in place until the BP attaches vfp. That is, after the APs have been spun up.
gicv3_its.c has a serialisation issue which is protected against in the gicv3_its_cpu_init, which is called from cpu_hatch, with a spin lock. The serialisation issue needs addressing more completely.
Tested on RPI3, Apple M1, QEMU, and lx2k
Fixes PR port-arm/56264: diagnostic assertion "l->l_stat == LSONPROC" failed on RPI3
|
#
1.72 |
|
26-Sep-2021 |
jmcneill |
If an SGI or PPI is established after interrupts are enabled, make sure we unblock the source on _all_ CPUs and not just the CPU that is establishing the interrupt.
|
Revision tags: thorpej-i2c-spi-conf2-base
|
#
1.71 |
|
08-Aug-2021 |
skrll |
Re-apply
Move 'struct pic_pending' from percpu to struct cpu_info. Saves a few instructions in splx.
There is(/was) no need to use atomic operations on the percpu / cpu_info members, so don't.
Finally removng the use of percpu should help avoid problems with "late" attaching cpus.
|
Revision tags: thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
#
1.70 |
|
27-Mar-2021 |
jmcneill |
Revert recent pic optimizations until I have more time to work on this.
|
#
1.69 |
|
21-Feb-2021 |
jmcneill |
branches: 1.69.2; Inline pic_set_priority and use cpu_dosoftints_ci when available.
|
#
1.68 |
|
21-Feb-2021 |
skrll |
Fixup with __HAVE_PREEMPTION code which is currently unused
|
#
1.67 |
|
20-Feb-2021 |
jmcneill |
Inline "pic_do_pending_ints" in splx and check ci_pending_ipls to optimize the common case (hw priority, no cascaded interrupts pending).
This also removes the need for the "pic_pending_used" flag, and should fix booting on Raspberry Pi 3.
|
#
1.66 |
|
20-Feb-2021 |
jmcneill |
Move 'struct pic_pending' from percpu to struct cpu_info. Saves a few instructions in splx.
|
#
1.65 |
|
16-Feb-2021 |
jmcneill |
pic: avoid pic_do_pending_ints if pic_mark_pending_* has never been called
|
#
1.64 |
|
15-Feb-2021 |
jmcneill |
splx: use pic_set_priority_psw in interrupts disabled case to skip a few more daif accesses.
|
#
1.63 |
|
15-Feb-2021 |
jmcneill |
pic: reduce the number of daif accesses in pic_do_pending_ints
The caller has already provided daif state. No need to keep updating daif via pic_set_priority if it's already in the state we need (interrupts disabled).
|
#
1.62 |
|
07-Feb-2021 |
jmcneill |
Use ENABLE_INTERRUPT() / DISABLE_INTERRUPT() instead of cpsie()/cpsid() in places where we don't care about the cpsie() return value.
|
#
1.61 |
|
01-Nov-2020 |
jmcneill |
branches: 1.61.2; intr_ipi_send: assert that kcp is either NULL or contains exactly one CPU
|
#
1.60 |
|
26-Oct-2020 |
skrll |
Improve a comment
|
#
1.59 |
|
26-Oct-2020 |
skrll |
KNF
|
#
1.58 |
|
25-Oct-2020 |
skrll |
KASSERT -> KASSERTMSG
|
#
1.57 |
|
27-Jul-2020 |
skrll |
Trailing whitespace
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
|
#
1.56 |
|
01-Feb-2020 |
riastradh |
KNF
|
#
1.55 |
|
01-Feb-2020 |
riastradh |
Reduce some ifdefs.
|
#
1.54 |
|
01-Feb-2020 |
riastradh |
pic_pending_zero is unnecessary; percpu_alloc already zeroes.
|
#
1.53 |
|
01-Feb-2020 |
riastradh |
Switch arm pic allocation and initialization to percpu_create.
|
Revision tags: ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
#
1.52 |
|
24-Dec-2019 |
skrll |
branches: 1.52.2; Update pic_add to allocate and return an irqbase if passed PIC_IRQBASE_ALLOC.
|
#
1.51 |
|
24-Dec-2019 |
skrll |
Make pic_sourcebase static
|
#
1.50 |
|
23-Dec-2019 |
jmcneill |
Add reference counts to intr_mask/intr_unmask as calls can be nested, spotted by thorpej
|
#
1.49 |
|
23-Dec-2019 |
jmcneill |
Implement acpi_md_intr_mask and acpi_md_intr_unmask
|
Revision tags: netbsd-9-2-RELEASE netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.48 |
|
16-Nov-2018 |
jmcneill |
Add intr_establish_xname support to arm and expose it to intrctl
|
#
1.47 |
|
13-Nov-2018 |
jmcneill |
Fix intrctl for pics with non-0 irqbase
|
#
1.46 |
|
11-Nov-2018 |
jmcneill |
Add support for intrctl(8).
|
Revision tags: pgoyette-compat-1020
|
#
1.45 |
|
12-Oct-2018 |
jmcneill |
Implement intr_string(9)
|
Revision tags: pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728
|
#
1.44 |
|
15-Jul-2018 |
jmcneill |
Add support for setting and getting interrupt affinity.
|
#
1.43 |
|
09-Jul-2018 |
ryo |
fix false positive KASSERT. the case that secondary processors failed to hatch, and not attached.
when "cpu1 at cpus0: disabled (unresponsive)"
|
Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407
|
#
1.42 |
|
01-Apr-2018 |
ryo |
branches: 1.42.2; 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 tags: pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
#
1.41 |
|
12-Oct-2017 |
skrll |
branches: 1.41.2; Trailing whitespace
|
#
1.40 |
|
21-Sep-2017 |
skrll |
spaces to TAB
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|
#
1.75 |
|
31-Oct-2021 |
skrll |
Only perform pic_unblock_percpu if all of the following are true - mp_online, i.e. APs are running. - is_mpsafe, i.e. the interrupt handler is MP safe - is_percpu, i.e. the interrupt actually requires it!
The last one (is_percpu) is true for GIC PPI+SGI only.
|
#
1.74 |
|
31-Oct-2021 |
skrll |
Assert we can sleep in pic_add
|
#
1.73 |
|
31-Oct-2021 |
skrll |
Rework Arm (32bit and 64bit) AP startup so that cpu_hatch doesn't sleep.
The AP initialisation code in cpu_init_secondary_processor will read and initialise the required system registers and state for the BP to attach and report.
Rework the interrupt handler code for this new sequence. Thankfully, this removes a bunch of code for bcm2836mp.
The VFP detection handler on <= armv7 relies on the global undefined handler being in place until the BP attaches vfp. That is, after the APs have been spun up.
gicv3_its.c has a serialisation issue which is protected against in the gicv3_its_cpu_init, which is called from cpu_hatch, with a spin lock. The serialisation issue needs addressing more completely.
Tested on RPI3, Apple M1, QEMU, and lx2k
Fixes PR port-arm/56264: diagnostic assertion "l->l_stat == LSONPROC" failed on RPI3
|
#
1.72 |
|
26-Sep-2021 |
jmcneill |
If an SGI or PPI is established after interrupts are enabled, make sure we unblock the source on _all_ CPUs and not just the CPU that is establishing the interrupt.
|
Revision tags: thorpej-i2c-spi-conf2-base
|
#
1.71 |
|
08-Aug-2021 |
skrll |
Re-apply
Move 'struct pic_pending' from percpu to struct cpu_info. Saves a few instructions in splx.
There is(/was) no need to use atomic operations on the percpu / cpu_info members, so don't.
Finally removng the use of percpu should help avoid problems with "late" attaching cpus.
|
Revision tags: thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
#
1.70 |
|
27-Mar-2021 |
jmcneill |
Revert recent pic optimizations until I have more time to work on this.
|
#
1.69 |
|
21-Feb-2021 |
jmcneill |
branches: 1.69.2; Inline pic_set_priority and use cpu_dosoftints_ci when available.
|
#
1.68 |
|
21-Feb-2021 |
skrll |
Fixup with __HAVE_PREEMPTION code which is currently unused
|
#
1.67 |
|
20-Feb-2021 |
jmcneill |
Inline "pic_do_pending_ints" in splx and check ci_pending_ipls to optimize the common case (hw priority, no cascaded interrupts pending).
This also removes the need for the "pic_pending_used" flag, and should fix booting on Raspberry Pi 3.
|
#
1.66 |
|
20-Feb-2021 |
jmcneill |
Move 'struct pic_pending' from percpu to struct cpu_info. Saves a few instructions in splx.
|
#
1.65 |
|
16-Feb-2021 |
jmcneill |
pic: avoid pic_do_pending_ints if pic_mark_pending_* has never been called
|
#
1.64 |
|
15-Feb-2021 |
jmcneill |
splx: use pic_set_priority_psw in interrupts disabled case to skip a few more daif accesses.
|
#
1.63 |
|
15-Feb-2021 |
jmcneill |
pic: reduce the number of daif accesses in pic_do_pending_ints
The caller has already provided daif state. No need to keep updating daif via pic_set_priority if it's already in the state we need (interrupts disabled).
|
#
1.62 |
|
07-Feb-2021 |
jmcneill |
Use ENABLE_INTERRUPT() / DISABLE_INTERRUPT() instead of cpsie()/cpsid() in places where we don't care about the cpsie() return value.
|
#
1.61 |
|
01-Nov-2020 |
jmcneill |
branches: 1.61.2; intr_ipi_send: assert that kcp is either NULL or contains exactly one CPU
|
#
1.60 |
|
26-Oct-2020 |
skrll |
Improve a comment
|
#
1.59 |
|
26-Oct-2020 |
skrll |
KNF
|
#
1.58 |
|
25-Oct-2020 |
skrll |
KASSERT -> KASSERTMSG
|
#
1.57 |
|
27-Jul-2020 |
skrll |
Trailing whitespace
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
|
#
1.56 |
|
01-Feb-2020 |
riastradh |
KNF
|
#
1.55 |
|
01-Feb-2020 |
riastradh |
Reduce some ifdefs.
|
#
1.54 |
|
01-Feb-2020 |
riastradh |
pic_pending_zero is unnecessary; percpu_alloc already zeroes.
|
#
1.53 |
|
01-Feb-2020 |
riastradh |
Switch arm pic allocation and initialization to percpu_create.
|
Revision tags: ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
#
1.52 |
|
24-Dec-2019 |
skrll |
branches: 1.52.2; Update pic_add to allocate and return an irqbase if passed PIC_IRQBASE_ALLOC.
|
#
1.51 |
|
24-Dec-2019 |
skrll |
Make pic_sourcebase static
|
#
1.50 |
|
23-Dec-2019 |
jmcneill |
Add reference counts to intr_mask/intr_unmask as calls can be nested, spotted by thorpej
|
#
1.49 |
|
23-Dec-2019 |
jmcneill |
Implement acpi_md_intr_mask and acpi_md_intr_unmask
|
Revision tags: netbsd-9-2-RELEASE netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.48 |
|
16-Nov-2018 |
jmcneill |
Add intr_establish_xname support to arm and expose it to intrctl
|
#
1.47 |
|
13-Nov-2018 |
jmcneill |
Fix intrctl for pics with non-0 irqbase
|
#
1.46 |
|
11-Nov-2018 |
jmcneill |
Add support for intrctl(8).
|
Revision tags: pgoyette-compat-1020
|
#
1.45 |
|
12-Oct-2018 |
jmcneill |
Implement intr_string(9)
|
Revision tags: pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728
|
#
1.44 |
|
15-Jul-2018 |
jmcneill |
Add support for setting and getting interrupt affinity.
|
#
1.43 |
|
09-Jul-2018 |
ryo |
fix false positive KASSERT. the case that secondary processors failed to hatch, and not attached.
when "cpu1 at cpus0: disabled (unresponsive)"
|
Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407
|
#
1.42 |
|
01-Apr-2018 |
ryo |
branches: 1.42.2; 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 tags: pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
#
1.41 |
|
12-Oct-2017 |
skrll |
branches: 1.41.2; Trailing whitespace
|
#
1.40 |
|
21-Sep-2017 |
skrll |
spaces to TAB
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|
#
1.72 |
|
26-Sep-2021 |
jmcneill |
If an SGI or PPI is established after interrupts are enabled, make sure we unblock the source on _all_ CPUs and not just the CPU that is establishing the interrupt.
|
Revision tags: thorpej-i2c-spi-conf2-base
|
#
1.71 |
|
08-Aug-2021 |
skrll |
Re-apply
Move 'struct pic_pending' from percpu to struct cpu_info. Saves a few instructions in splx.
There is(/was) no need to use atomic operations on the percpu / cpu_info members, so don't.
Finally removng the use of percpu should help avoid problems with "late" attaching cpus.
|
Revision tags: thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
#
1.70 |
|
27-Mar-2021 |
jmcneill |
Revert recent pic optimizations until I have more time to work on this.
|
#
1.69 |
|
21-Feb-2021 |
jmcneill |
branches: 1.69.2; Inline pic_set_priority and use cpu_dosoftints_ci when available.
|
#
1.68 |
|
21-Feb-2021 |
skrll |
Fixup with __HAVE_PREEMPTION code which is currently unused
|
#
1.67 |
|
20-Feb-2021 |
jmcneill |
Inline "pic_do_pending_ints" in splx and check ci_pending_ipls to optimize the common case (hw priority, no cascaded interrupts pending).
This also removes the need for the "pic_pending_used" flag, and should fix booting on Raspberry Pi 3.
|
#
1.66 |
|
20-Feb-2021 |
jmcneill |
Move 'struct pic_pending' from percpu to struct cpu_info. Saves a few instructions in splx.
|
#
1.65 |
|
16-Feb-2021 |
jmcneill |
pic: avoid pic_do_pending_ints if pic_mark_pending_* has never been called
|
#
1.64 |
|
15-Feb-2021 |
jmcneill |
splx: use pic_set_priority_psw in interrupts disabled case to skip a few more daif accesses.
|
#
1.63 |
|
15-Feb-2021 |
jmcneill |
pic: reduce the number of daif accesses in pic_do_pending_ints
The caller has already provided daif state. No need to keep updating daif via pic_set_priority if it's already in the state we need (interrupts disabled).
|
#
1.62 |
|
07-Feb-2021 |
jmcneill |
Use ENABLE_INTERRUPT() / DISABLE_INTERRUPT() instead of cpsie()/cpsid() in places where we don't care about the cpsie() return value.
|
#
1.61 |
|
01-Nov-2020 |
jmcneill |
branches: 1.61.2; intr_ipi_send: assert that kcp is either NULL or contains exactly one CPU
|
#
1.60 |
|
26-Oct-2020 |
skrll |
Improve a comment
|
#
1.59 |
|
26-Oct-2020 |
skrll |
KNF
|
#
1.58 |
|
25-Oct-2020 |
skrll |
KASSERT -> KASSERTMSG
|
#
1.57 |
|
27-Jul-2020 |
skrll |
Trailing whitespace
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
|
#
1.56 |
|
01-Feb-2020 |
riastradh |
KNF
|
#
1.55 |
|
01-Feb-2020 |
riastradh |
Reduce some ifdefs.
|
#
1.54 |
|
01-Feb-2020 |
riastradh |
pic_pending_zero is unnecessary; percpu_alloc already zeroes.
|
#
1.53 |
|
01-Feb-2020 |
riastradh |
Switch arm pic allocation and initialization to percpu_create.
|
Revision tags: ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
#
1.52 |
|
24-Dec-2019 |
skrll |
branches: 1.52.2; Update pic_add to allocate and return an irqbase if passed PIC_IRQBASE_ALLOC.
|
#
1.51 |
|
24-Dec-2019 |
skrll |
Make pic_sourcebase static
|
#
1.50 |
|
23-Dec-2019 |
jmcneill |
Add reference counts to intr_mask/intr_unmask as calls can be nested, spotted by thorpej
|
#
1.49 |
|
23-Dec-2019 |
jmcneill |
Implement acpi_md_intr_mask and acpi_md_intr_unmask
|
Revision tags: netbsd-9-2-RELEASE netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.48 |
|
16-Nov-2018 |
jmcneill |
Add intr_establish_xname support to arm and expose it to intrctl
|
#
1.47 |
|
13-Nov-2018 |
jmcneill |
Fix intrctl for pics with non-0 irqbase
|
#
1.46 |
|
11-Nov-2018 |
jmcneill |
Add support for intrctl(8).
|
Revision tags: pgoyette-compat-1020
|
#
1.45 |
|
12-Oct-2018 |
jmcneill |
Implement intr_string(9)
|
Revision tags: pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728
|
#
1.44 |
|
15-Jul-2018 |
jmcneill |
Add support for setting and getting interrupt affinity.
|
#
1.43 |
|
09-Jul-2018 |
ryo |
fix false positive KASSERT. the case that secondary processors failed to hatch, and not attached.
when "cpu1 at cpus0: disabled (unresponsive)"
|
Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407
|
#
1.42 |
|
01-Apr-2018 |
ryo |
branches: 1.42.2; 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 tags: pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
#
1.41 |
|
12-Oct-2017 |
skrll |
branches: 1.41.2; Trailing whitespace
|
#
1.40 |
|
21-Sep-2017 |
skrll |
spaces to TAB
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|
Revision tags: thorpej-i2c-spi-conf2-base
|
#
1.71 |
|
08-Aug-2021 |
skrll |
Re-apply
Move 'struct pic_pending' from percpu to struct cpu_info. Saves a few instructions in splx.
There is(/was) no need to use atomic operations on the percpu / cpu_info members, so don't.
Finally removng the use of percpu should help avoid problems with "late" attaching cpus.
|
Revision tags: thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
#
1.70 |
|
27-Mar-2021 |
jmcneill |
Revert recent pic optimizations until I have more time to work on this.
|
#
1.69 |
|
21-Feb-2021 |
jmcneill |
branches: 1.69.2; Inline pic_set_priority and use cpu_dosoftints_ci when available.
|
#
1.68 |
|
21-Feb-2021 |
skrll |
Fixup with __HAVE_PREEMPTION code which is currently unused
|
#
1.67 |
|
20-Feb-2021 |
jmcneill |
Inline "pic_do_pending_ints" in splx and check ci_pending_ipls to optimize the common case (hw priority, no cascaded interrupts pending).
This also removes the need for the "pic_pending_used" flag, and should fix booting on Raspberry Pi 3.
|
#
1.66 |
|
20-Feb-2021 |
jmcneill |
Move 'struct pic_pending' from percpu to struct cpu_info. Saves a few instructions in splx.
|
#
1.65 |
|
16-Feb-2021 |
jmcneill |
pic: avoid pic_do_pending_ints if pic_mark_pending_* has never been called
|
#
1.64 |
|
15-Feb-2021 |
jmcneill |
splx: use pic_set_priority_psw in interrupts disabled case to skip a few more daif accesses.
|
#
1.63 |
|
15-Feb-2021 |
jmcneill |
pic: reduce the number of daif accesses in pic_do_pending_ints
The caller has already provided daif state. No need to keep updating daif via pic_set_priority if it's already in the state we need (interrupts disabled).
|
#
1.62 |
|
07-Feb-2021 |
jmcneill |
Use ENABLE_INTERRUPT() / DISABLE_INTERRUPT() instead of cpsie()/cpsid() in places where we don't care about the cpsie() return value.
|
#
1.61 |
|
01-Nov-2020 |
jmcneill |
branches: 1.61.2; intr_ipi_send: assert that kcp is either NULL or contains exactly one CPU
|
#
1.60 |
|
26-Oct-2020 |
skrll |
Improve a comment
|
#
1.59 |
|
26-Oct-2020 |
skrll |
KNF
|
#
1.58 |
|
25-Oct-2020 |
skrll |
KASSERT -> KASSERTMSG
|
#
1.57 |
|
27-Jul-2020 |
skrll |
Trailing whitespace
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
|
#
1.56 |
|
01-Feb-2020 |
riastradh |
KNF
|
#
1.55 |
|
01-Feb-2020 |
riastradh |
Reduce some ifdefs.
|
#
1.54 |
|
01-Feb-2020 |
riastradh |
pic_pending_zero is unnecessary; percpu_alloc already zeroes.
|
#
1.53 |
|
01-Feb-2020 |
riastradh |
Switch arm pic allocation and initialization to percpu_create.
|
Revision tags: ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
#
1.52 |
|
24-Dec-2019 |
skrll |
branches: 1.52.2; Update pic_add to allocate and return an irqbase if passed PIC_IRQBASE_ALLOC.
|
#
1.51 |
|
24-Dec-2019 |
skrll |
Make pic_sourcebase static
|
#
1.50 |
|
23-Dec-2019 |
jmcneill |
Add reference counts to intr_mask/intr_unmask as calls can be nested, spotted by thorpej
|
#
1.49 |
|
23-Dec-2019 |
jmcneill |
Implement acpi_md_intr_mask and acpi_md_intr_unmask
|
Revision tags: netbsd-9-2-RELEASE netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.48 |
|
16-Nov-2018 |
jmcneill |
Add intr_establish_xname support to arm and expose it to intrctl
|
#
1.47 |
|
13-Nov-2018 |
jmcneill |
Fix intrctl for pics with non-0 irqbase
|
#
1.46 |
|
11-Nov-2018 |
jmcneill |
Add support for intrctl(8).
|
Revision tags: pgoyette-compat-1020
|
#
1.45 |
|
12-Oct-2018 |
jmcneill |
Implement intr_string(9)
|
Revision tags: pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728
|
#
1.44 |
|
15-Jul-2018 |
jmcneill |
Add support for setting and getting interrupt affinity.
|
#
1.43 |
|
09-Jul-2018 |
ryo |
fix false positive KASSERT. the case that secondary processors failed to hatch, and not attached.
when "cpu1 at cpus0: disabled (unresponsive)"
|
Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407
|
#
1.42 |
|
01-Apr-2018 |
ryo |
branches: 1.42.2; 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 tags: pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
#
1.41 |
|
12-Oct-2017 |
skrll |
branches: 1.41.2; Trailing whitespace
|
#
1.40 |
|
21-Sep-2017 |
skrll |
spaces to TAB
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|
#
1.70 |
|
27-Mar-2021 |
jmcneill |
Revert recent pic optimizations until I have more time to work on this.
|
Revision tags: thorpej-cfargs-base
|
#
1.69 |
|
21-Feb-2021 |
jmcneill |
Inline pic_set_priority and use cpu_dosoftints_ci when available.
|
#
1.68 |
|
21-Feb-2021 |
skrll |
Fixup with __HAVE_PREEMPTION code which is currently unused
|
#
1.67 |
|
20-Feb-2021 |
jmcneill |
Inline "pic_do_pending_ints" in splx and check ci_pending_ipls to optimize the common case (hw priority, no cascaded interrupts pending).
This also removes the need for the "pic_pending_used" flag, and should fix booting on Raspberry Pi 3.
|
#
1.66 |
|
20-Feb-2021 |
jmcneill |
Move 'struct pic_pending' from percpu to struct cpu_info. Saves a few instructions in splx.
|
#
1.65 |
|
16-Feb-2021 |
jmcneill |
pic: avoid pic_do_pending_ints if pic_mark_pending_* has never been called
|
#
1.64 |
|
15-Feb-2021 |
jmcneill |
splx: use pic_set_priority_psw in interrupts disabled case to skip a few more daif accesses.
|
#
1.63 |
|
15-Feb-2021 |
jmcneill |
pic: reduce the number of daif accesses in pic_do_pending_ints
The caller has already provided daif state. No need to keep updating daif via pic_set_priority if it's already in the state we need (interrupts disabled).
|
#
1.62 |
|
07-Feb-2021 |
jmcneill |
Use ENABLE_INTERRUPT() / DISABLE_INTERRUPT() instead of cpsie()/cpsid() in places where we don't care about the cpsie() return value.
|
Revision tags: thorpej-futex-base
|
#
1.61 |
|
01-Nov-2020 |
jmcneill |
intr_ipi_send: assert that kcp is either NULL or contains exactly one CPU
|
#
1.60 |
|
26-Oct-2020 |
skrll |
Improve a comment
|
#
1.59 |
|
26-Oct-2020 |
skrll |
KNF
|
#
1.58 |
|
25-Oct-2020 |
skrll |
KASSERT -> KASSERTMSG
|
#
1.57 |
|
27-Jul-2020 |
skrll |
Trailing whitespace
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
|
#
1.56 |
|
01-Feb-2020 |
riastradh |
KNF
|
#
1.55 |
|
01-Feb-2020 |
riastradh |
Reduce some ifdefs.
|
#
1.54 |
|
01-Feb-2020 |
riastradh |
pic_pending_zero is unnecessary; percpu_alloc already zeroes.
|
#
1.53 |
|
01-Feb-2020 |
riastradh |
Switch arm pic allocation and initialization to percpu_create.
|
Revision tags: ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
#
1.52 |
|
24-Dec-2019 |
skrll |
branches: 1.52.2; Update pic_add to allocate and return an irqbase if passed PIC_IRQBASE_ALLOC.
|
#
1.51 |
|
24-Dec-2019 |
skrll |
Make pic_sourcebase static
|
#
1.50 |
|
23-Dec-2019 |
jmcneill |
Add reference counts to intr_mask/intr_unmask as calls can be nested, spotted by thorpej
|
#
1.49 |
|
23-Dec-2019 |
jmcneill |
Implement acpi_md_intr_mask and acpi_md_intr_unmask
|
Revision tags: netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.48 |
|
16-Nov-2018 |
jmcneill |
Add intr_establish_xname support to arm and expose it to intrctl
|
#
1.47 |
|
13-Nov-2018 |
jmcneill |
Fix intrctl for pics with non-0 irqbase
|
#
1.46 |
|
11-Nov-2018 |
jmcneill |
Add support for intrctl(8).
|
Revision tags: pgoyette-compat-1020
|
#
1.45 |
|
12-Oct-2018 |
jmcneill |
Implement intr_string(9)
|
Revision tags: pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728
|
#
1.44 |
|
15-Jul-2018 |
jmcneill |
Add support for setting and getting interrupt affinity.
|
#
1.43 |
|
09-Jul-2018 |
ryo |
fix false positive KASSERT. the case that secondary processors failed to hatch, and not attached.
when "cpu1 at cpus0: disabled (unresponsive)"
|
Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407
|
#
1.42 |
|
01-Apr-2018 |
ryo |
branches: 1.42.2; 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 tags: pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
#
1.41 |
|
12-Oct-2017 |
skrll |
branches: 1.41.2; Trailing whitespace
|
#
1.40 |
|
21-Sep-2017 |
skrll |
spaces to TAB
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|
#
1.69 |
|
21-Feb-2021 |
jmcneill |
Inline pic_set_priority and use cpu_dosoftints_ci when available.
|
#
1.68 |
|
21-Feb-2021 |
skrll |
Fixup with __HAVE_PREEMPTION code which is currently unused
|
#
1.67 |
|
20-Feb-2021 |
jmcneill |
Inline "pic_do_pending_ints" in splx and check ci_pending_ipls to optimize the common case (hw priority, no cascaded interrupts pending).
This also removes the need for the "pic_pending_used" flag, and should fix booting on Raspberry Pi 3.
|
#
1.66 |
|
20-Feb-2021 |
jmcneill |
Move 'struct pic_pending' from percpu to struct cpu_info. Saves a few instructions in splx.
|
#
1.65 |
|
16-Feb-2021 |
jmcneill |
pic: avoid pic_do_pending_ints if pic_mark_pending_* has never been called
|
#
1.64 |
|
15-Feb-2021 |
jmcneill |
splx: use pic_set_priority_psw in interrupts disabled case to skip a few more daif accesses.
|
#
1.63 |
|
15-Feb-2021 |
jmcneill |
pic: reduce the number of daif accesses in pic_do_pending_ints
The caller has already provided daif state. No need to keep updating daif via pic_set_priority if it's already in the state we need (interrupts disabled).
|
#
1.62 |
|
07-Feb-2021 |
jmcneill |
Use ENABLE_INTERRUPT() / DISABLE_INTERRUPT() instead of cpsie()/cpsid() in places where we don't care about the cpsie() return value.
|
Revision tags: thorpej-futex-base
|
#
1.61 |
|
01-Nov-2020 |
jmcneill |
intr_ipi_send: assert that kcp is either NULL or contains exactly one CPU
|
#
1.60 |
|
26-Oct-2020 |
skrll |
Improve a comment
|
#
1.59 |
|
26-Oct-2020 |
skrll |
KNF
|
#
1.58 |
|
25-Oct-2020 |
skrll |
KASSERT -> KASSERTMSG
|
#
1.57 |
|
27-Jul-2020 |
skrll |
Trailing whitespace
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
|
#
1.56 |
|
01-Feb-2020 |
riastradh |
KNF
|
#
1.55 |
|
01-Feb-2020 |
riastradh |
Reduce some ifdefs.
|
#
1.54 |
|
01-Feb-2020 |
riastradh |
pic_pending_zero is unnecessary; percpu_alloc already zeroes.
|
#
1.53 |
|
01-Feb-2020 |
riastradh |
Switch arm pic allocation and initialization to percpu_create.
|
Revision tags: ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
#
1.52 |
|
24-Dec-2019 |
skrll |
branches: 1.52.2; Update pic_add to allocate and return an irqbase if passed PIC_IRQBASE_ALLOC.
|
#
1.51 |
|
24-Dec-2019 |
skrll |
Make pic_sourcebase static
|
#
1.50 |
|
23-Dec-2019 |
jmcneill |
Add reference counts to intr_mask/intr_unmask as calls can be nested, spotted by thorpej
|
#
1.49 |
|
23-Dec-2019 |
jmcneill |
Implement acpi_md_intr_mask and acpi_md_intr_unmask
|
Revision tags: netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.48 |
|
16-Nov-2018 |
jmcneill |
Add intr_establish_xname support to arm and expose it to intrctl
|
#
1.47 |
|
13-Nov-2018 |
jmcneill |
Fix intrctl for pics with non-0 irqbase
|
#
1.46 |
|
11-Nov-2018 |
jmcneill |
Add support for intrctl(8).
|
Revision tags: pgoyette-compat-1020
|
#
1.45 |
|
12-Oct-2018 |
jmcneill |
Implement intr_string(9)
|
Revision tags: pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728
|
#
1.44 |
|
15-Jul-2018 |
jmcneill |
Add support for setting and getting interrupt affinity.
|
#
1.43 |
|
09-Jul-2018 |
ryo |
fix false positive KASSERT. the case that secondary processors failed to hatch, and not attached.
when "cpu1 at cpus0: disabled (unresponsive)"
|
Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407
|
#
1.42 |
|
01-Apr-2018 |
ryo |
branches: 1.42.2; 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 tags: pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
#
1.41 |
|
12-Oct-2017 |
skrll |
branches: 1.41.2; Trailing whitespace
|
#
1.40 |
|
21-Sep-2017 |
skrll |
spaces to TAB
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|
#
1.68 |
|
21-Feb-2021 |
skrll |
Fixup with __HAVE_PREEMPTION code which is currently unused
|
#
1.67 |
|
20-Feb-2021 |
jmcneill |
Inline "pic_do_pending_ints" in splx and check ci_pending_ipls to optimize the common case (hw priority, no cascaded interrupts pending).
This also removes the need for the "pic_pending_used" flag, and should fix booting on Raspberry Pi 3.
|
#
1.66 |
|
20-Feb-2021 |
jmcneill |
Move 'struct pic_pending' from percpu to struct cpu_info. Saves a few instructions in splx.
|
#
1.65 |
|
16-Feb-2021 |
jmcneill |
pic: avoid pic_do_pending_ints if pic_mark_pending_* has never been called
|
#
1.64 |
|
15-Feb-2021 |
jmcneill |
splx: use pic_set_priority_psw in interrupts disabled case to skip a few more daif accesses.
|
#
1.63 |
|
15-Feb-2021 |
jmcneill |
pic: reduce the number of daif accesses in pic_do_pending_ints
The caller has already provided daif state. No need to keep updating daif via pic_set_priority if it's already in the state we need (interrupts disabled).
|
#
1.62 |
|
07-Feb-2021 |
jmcneill |
Use ENABLE_INTERRUPT() / DISABLE_INTERRUPT() instead of cpsie()/cpsid() in places where we don't care about the cpsie() return value.
|
Revision tags: thorpej-futex-base
|
#
1.61 |
|
01-Nov-2020 |
jmcneill |
intr_ipi_send: assert that kcp is either NULL or contains exactly one CPU
|
#
1.60 |
|
26-Oct-2020 |
skrll |
Improve a comment
|
#
1.59 |
|
26-Oct-2020 |
skrll |
KNF
|
#
1.58 |
|
25-Oct-2020 |
skrll |
KASSERT -> KASSERTMSG
|
#
1.57 |
|
27-Jul-2020 |
skrll |
Trailing whitespace
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
|
#
1.56 |
|
01-Feb-2020 |
riastradh |
KNF
|
#
1.55 |
|
01-Feb-2020 |
riastradh |
Reduce some ifdefs.
|
#
1.54 |
|
01-Feb-2020 |
riastradh |
pic_pending_zero is unnecessary; percpu_alloc already zeroes.
|
#
1.53 |
|
01-Feb-2020 |
riastradh |
Switch arm pic allocation and initialization to percpu_create.
|
Revision tags: ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
#
1.52 |
|
24-Dec-2019 |
skrll |
branches: 1.52.2; Update pic_add to allocate and return an irqbase if passed PIC_IRQBASE_ALLOC.
|
#
1.51 |
|
24-Dec-2019 |
skrll |
Make pic_sourcebase static
|
#
1.50 |
|
23-Dec-2019 |
jmcneill |
Add reference counts to intr_mask/intr_unmask as calls can be nested, spotted by thorpej
|
#
1.49 |
|
23-Dec-2019 |
jmcneill |
Implement acpi_md_intr_mask and acpi_md_intr_unmask
|
Revision tags: netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.48 |
|
16-Nov-2018 |
jmcneill |
Add intr_establish_xname support to arm and expose it to intrctl
|
#
1.47 |
|
13-Nov-2018 |
jmcneill |
Fix intrctl for pics with non-0 irqbase
|
#
1.46 |
|
11-Nov-2018 |
jmcneill |
Add support for intrctl(8).
|
Revision tags: pgoyette-compat-1020
|
#
1.45 |
|
12-Oct-2018 |
jmcneill |
Implement intr_string(9)
|
Revision tags: pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728
|
#
1.44 |
|
15-Jul-2018 |
jmcneill |
Add support for setting and getting interrupt affinity.
|
#
1.43 |
|
09-Jul-2018 |
ryo |
fix false positive KASSERT. the case that secondary processors failed to hatch, and not attached.
when "cpu1 at cpus0: disabled (unresponsive)"
|
Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407
|
#
1.42 |
|
01-Apr-2018 |
ryo |
branches: 1.42.2; 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 tags: pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
#
1.41 |
|
12-Oct-2017 |
skrll |
branches: 1.41.2; Trailing whitespace
|
#
1.40 |
|
21-Sep-2017 |
skrll |
spaces to TAB
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|
#
1.65 |
|
16-Feb-2021 |
jmcneill |
pic: avoid pic_do_pending_ints if pic_mark_pending_* has never been called
|
#
1.64 |
|
15-Feb-2021 |
jmcneill |
splx: use pic_set_priority_psw in interrupts disabled case to skip a few more daif accesses.
|
#
1.63 |
|
15-Feb-2021 |
jmcneill |
pic: reduce the number of daif accesses in pic_do_pending_ints
The caller has already provided daif state. No need to keep updating daif via pic_set_priority if it's already in the state we need (interrupts disabled).
|
#
1.62 |
|
07-Feb-2021 |
jmcneill |
Use ENABLE_INTERRUPT() / DISABLE_INTERRUPT() instead of cpsie()/cpsid() in places where we don't care about the cpsie() return value.
|
Revision tags: thorpej-futex-base
|
#
1.61 |
|
01-Nov-2020 |
jmcneill |
intr_ipi_send: assert that kcp is either NULL or contains exactly one CPU
|
#
1.60 |
|
26-Oct-2020 |
skrll |
Improve a comment
|
#
1.59 |
|
26-Oct-2020 |
skrll |
KNF
|
#
1.58 |
|
25-Oct-2020 |
skrll |
KASSERT -> KASSERTMSG
|
#
1.57 |
|
27-Jul-2020 |
skrll |
Trailing whitespace
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
|
#
1.56 |
|
01-Feb-2020 |
riastradh |
KNF
|
#
1.55 |
|
01-Feb-2020 |
riastradh |
Reduce some ifdefs.
|
#
1.54 |
|
01-Feb-2020 |
riastradh |
pic_pending_zero is unnecessary; percpu_alloc already zeroes.
|
#
1.53 |
|
01-Feb-2020 |
riastradh |
Switch arm pic allocation and initialization to percpu_create.
|
Revision tags: ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
#
1.52 |
|
24-Dec-2019 |
skrll |
branches: 1.52.2; Update pic_add to allocate and return an irqbase if passed PIC_IRQBASE_ALLOC.
|
#
1.51 |
|
24-Dec-2019 |
skrll |
Make pic_sourcebase static
|
#
1.50 |
|
23-Dec-2019 |
jmcneill |
Add reference counts to intr_mask/intr_unmask as calls can be nested, spotted by thorpej
|
#
1.49 |
|
23-Dec-2019 |
jmcneill |
Implement acpi_md_intr_mask and acpi_md_intr_unmask
|
Revision tags: netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.48 |
|
16-Nov-2018 |
jmcneill |
Add intr_establish_xname support to arm and expose it to intrctl
|
#
1.47 |
|
13-Nov-2018 |
jmcneill |
Fix intrctl for pics with non-0 irqbase
|
#
1.46 |
|
11-Nov-2018 |
jmcneill |
Add support for intrctl(8).
|
Revision tags: pgoyette-compat-1020
|
#
1.45 |
|
12-Oct-2018 |
jmcneill |
Implement intr_string(9)
|
Revision tags: pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728
|
#
1.44 |
|
15-Jul-2018 |
jmcneill |
Add support for setting and getting interrupt affinity.
|
#
1.43 |
|
09-Jul-2018 |
ryo |
fix false positive KASSERT. the case that secondary processors failed to hatch, and not attached.
when "cpu1 at cpus0: disabled (unresponsive)"
|
Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407
|
#
1.42 |
|
01-Apr-2018 |
ryo |
branches: 1.42.2; 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 tags: pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
#
1.41 |
|
12-Oct-2017 |
skrll |
branches: 1.41.2; Trailing whitespace
|
#
1.40 |
|
21-Sep-2017 |
skrll |
spaces to TAB
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|
#
1.62 |
|
07-Feb-2021 |
jmcneill |
Use ENABLE_INTERRUPT() / DISABLE_INTERRUPT() instead of cpsie()/cpsid() in places where we don't care about the cpsie() return value.
|
Revision tags: thorpej-futex-base
|
#
1.61 |
|
01-Nov-2020 |
jmcneill |
intr_ipi_send: assert that kcp is either NULL or contains exactly one CPU
|
#
1.60 |
|
26-Oct-2020 |
skrll |
Improve a comment
|
#
1.59 |
|
26-Oct-2020 |
skrll |
KNF
|
#
1.58 |
|
25-Oct-2020 |
skrll |
KASSERT -> KASSERTMSG
|
#
1.57 |
|
27-Jul-2020 |
skrll |
Trailing whitespace
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
|
#
1.56 |
|
01-Feb-2020 |
riastradh |
KNF
|
#
1.55 |
|
01-Feb-2020 |
riastradh |
Reduce some ifdefs.
|
#
1.54 |
|
01-Feb-2020 |
riastradh |
pic_pending_zero is unnecessary; percpu_alloc already zeroes.
|
#
1.53 |
|
01-Feb-2020 |
riastradh |
Switch arm pic allocation and initialization to percpu_create.
|
Revision tags: ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
#
1.52 |
|
24-Dec-2019 |
skrll |
branches: 1.52.2; Update pic_add to allocate and return an irqbase if passed PIC_IRQBASE_ALLOC.
|
#
1.51 |
|
24-Dec-2019 |
skrll |
Make pic_sourcebase static
|
#
1.50 |
|
23-Dec-2019 |
jmcneill |
Add reference counts to intr_mask/intr_unmask as calls can be nested, spotted by thorpej
|
#
1.49 |
|
23-Dec-2019 |
jmcneill |
Implement acpi_md_intr_mask and acpi_md_intr_unmask
|
Revision tags: netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.48 |
|
16-Nov-2018 |
jmcneill |
Add intr_establish_xname support to arm and expose it to intrctl
|
#
1.47 |
|
13-Nov-2018 |
jmcneill |
Fix intrctl for pics with non-0 irqbase
|
#
1.46 |
|
11-Nov-2018 |
jmcneill |
Add support for intrctl(8).
|
Revision tags: pgoyette-compat-1020
|
#
1.45 |
|
12-Oct-2018 |
jmcneill |
Implement intr_string(9)
|
Revision tags: pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728
|
#
1.44 |
|
15-Jul-2018 |
jmcneill |
Add support for setting and getting interrupt affinity.
|
#
1.43 |
|
09-Jul-2018 |
ryo |
fix false positive KASSERT. the case that secondary processors failed to hatch, and not attached.
when "cpu1 at cpus0: disabled (unresponsive)"
|
Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407
|
#
1.42 |
|
01-Apr-2018 |
ryo |
branches: 1.42.2; 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 tags: pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
#
1.41 |
|
12-Oct-2017 |
skrll |
branches: 1.41.2; Trailing whitespace
|
#
1.40 |
|
21-Sep-2017 |
skrll |
spaces to TAB
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|
Revision tags: thorpej-futex-base
|
#
1.61 |
|
01-Nov-2020 |
jmcneill |
intr_ipi_send: assert that kcp is either NULL or contains exactly one CPU
|
#
1.60 |
|
26-Oct-2020 |
skrll |
Improve a comment
|
#
1.59 |
|
26-Oct-2020 |
skrll |
KNF
|
#
1.58 |
|
25-Oct-2020 |
skrll |
KASSERT -> KASSERTMSG
|
#
1.57 |
|
27-Jul-2020 |
skrll |
Trailing whitespace
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
|
#
1.56 |
|
01-Feb-2020 |
riastradh |
KNF
|
#
1.55 |
|
01-Feb-2020 |
riastradh |
Reduce some ifdefs.
|
#
1.54 |
|
01-Feb-2020 |
riastradh |
pic_pending_zero is unnecessary; percpu_alloc already zeroes.
|
#
1.53 |
|
01-Feb-2020 |
riastradh |
Switch arm pic allocation and initialization to percpu_create.
|
Revision tags: ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
#
1.52 |
|
24-Dec-2019 |
skrll |
branches: 1.52.2; Update pic_add to allocate and return an irqbase if passed PIC_IRQBASE_ALLOC.
|
#
1.51 |
|
24-Dec-2019 |
skrll |
Make pic_sourcebase static
|
#
1.50 |
|
23-Dec-2019 |
jmcneill |
Add reference counts to intr_mask/intr_unmask as calls can be nested, spotted by thorpej
|
#
1.49 |
|
23-Dec-2019 |
jmcneill |
Implement acpi_md_intr_mask and acpi_md_intr_unmask
|
Revision tags: netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.48 |
|
16-Nov-2018 |
jmcneill |
Add intr_establish_xname support to arm and expose it to intrctl
|
#
1.47 |
|
13-Nov-2018 |
jmcneill |
Fix intrctl for pics with non-0 irqbase
|
#
1.46 |
|
11-Nov-2018 |
jmcneill |
Add support for intrctl(8).
|
Revision tags: pgoyette-compat-1020
|
#
1.45 |
|
12-Oct-2018 |
jmcneill |
Implement intr_string(9)
|
Revision tags: pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728
|
#
1.44 |
|
15-Jul-2018 |
jmcneill |
Add support for setting and getting interrupt affinity.
|
#
1.43 |
|
09-Jul-2018 |
ryo |
fix false positive KASSERT. the case that secondary processors failed to hatch, and not attached.
when "cpu1 at cpus0: disabled (unresponsive)"
|
Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407
|
#
1.42 |
|
01-Apr-2018 |
ryo |
branches: 1.42.2; 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 tags: pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
#
1.41 |
|
12-Oct-2017 |
skrll |
branches: 1.41.2; Trailing whitespace
|
#
1.40 |
|
21-Sep-2017 |
skrll |
spaces to TAB
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|
#
1.60 |
|
26-Oct-2020 |
skrll |
Improve a comment
|
#
1.59 |
|
26-Oct-2020 |
skrll |
KNF
|
#
1.58 |
|
25-Oct-2020 |
skrll |
KASSERT -> KASSERTMSG
|
#
1.57 |
|
27-Jul-2020 |
skrll |
Trailing whitespace
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
|
#
1.56 |
|
01-Feb-2020 |
riastradh |
KNF
|
#
1.55 |
|
01-Feb-2020 |
riastradh |
Reduce some ifdefs.
|
#
1.54 |
|
01-Feb-2020 |
riastradh |
pic_pending_zero is unnecessary; percpu_alloc already zeroes.
|
#
1.53 |
|
01-Feb-2020 |
riastradh |
Switch arm pic allocation and initialization to percpu_create.
|
Revision tags: ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
#
1.52 |
|
24-Dec-2019 |
skrll |
branches: 1.52.2; Update pic_add to allocate and return an irqbase if passed PIC_IRQBASE_ALLOC.
|
#
1.51 |
|
24-Dec-2019 |
skrll |
Make pic_sourcebase static
|
#
1.50 |
|
23-Dec-2019 |
jmcneill |
Add reference counts to intr_mask/intr_unmask as calls can be nested, spotted by thorpej
|
#
1.49 |
|
23-Dec-2019 |
jmcneill |
Implement acpi_md_intr_mask and acpi_md_intr_unmask
|
Revision tags: netbsd-9-1-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.48 |
|
16-Nov-2018 |
jmcneill |
Add intr_establish_xname support to arm and expose it to intrctl
|
#
1.47 |
|
13-Nov-2018 |
jmcneill |
Fix intrctl for pics with non-0 irqbase
|
#
1.46 |
|
11-Nov-2018 |
jmcneill |
Add support for intrctl(8).
|
Revision tags: pgoyette-compat-1020
|
#
1.45 |
|
12-Oct-2018 |
jmcneill |
Implement intr_string(9)
|
Revision tags: pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728
|
#
1.44 |
|
15-Jul-2018 |
jmcneill |
Add support for setting and getting interrupt affinity.
|
#
1.43 |
|
09-Jul-2018 |
ryo |
fix false positive KASSERT. the case that secondary processors failed to hatch, and not attached.
when "cpu1 at cpus0: disabled (unresponsive)"
|
Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407
|
#
1.42 |
|
01-Apr-2018 |
ryo |
branches: 1.42.2; 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 tags: pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
#
1.41 |
|
12-Oct-2017 |
skrll |
branches: 1.41.2; Trailing whitespace
|
#
1.40 |
|
21-Sep-2017 |
skrll |
spaces to TAB
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|
#
1.57 |
|
27-Jul-2020 |
skrll |
Trailing whitespace
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
|
#
1.56 |
|
01-Feb-2020 |
riastradh |
KNF
|
#
1.55 |
|
01-Feb-2020 |
riastradh |
Reduce some ifdefs.
|
#
1.54 |
|
01-Feb-2020 |
riastradh |
pic_pending_zero is unnecessary; percpu_alloc already zeroes.
|
#
1.53 |
|
01-Feb-2020 |
riastradh |
Switch arm pic allocation and initialization to percpu_create.
|
Revision tags: ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
#
1.52 |
|
24-Dec-2019 |
skrll |
branches: 1.52.2; Update pic_add to allocate and return an irqbase if passed PIC_IRQBASE_ALLOC.
|
#
1.51 |
|
24-Dec-2019 |
skrll |
Make pic_sourcebase static
|
#
1.50 |
|
23-Dec-2019 |
jmcneill |
Add reference counts to intr_mask/intr_unmask as calls can be nested, spotted by thorpej
|
#
1.49 |
|
23-Dec-2019 |
jmcneill |
Implement acpi_md_intr_mask and acpi_md_intr_unmask
|
Revision tags: netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.48 |
|
16-Nov-2018 |
jmcneill |
Add intr_establish_xname support to arm and expose it to intrctl
|
#
1.47 |
|
13-Nov-2018 |
jmcneill |
Fix intrctl for pics with non-0 irqbase
|
#
1.46 |
|
11-Nov-2018 |
jmcneill |
Add support for intrctl(8).
|
Revision tags: pgoyette-compat-1020
|
#
1.45 |
|
12-Oct-2018 |
jmcneill |
Implement intr_string(9)
|
Revision tags: pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728
|
#
1.44 |
|
15-Jul-2018 |
jmcneill |
Add support for setting and getting interrupt affinity.
|
#
1.43 |
|
09-Jul-2018 |
ryo |
fix false positive KASSERT. the case that secondary processors failed to hatch, and not attached.
when "cpu1 at cpus0: disabled (unresponsive)"
|
Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407
|
#
1.42 |
|
01-Apr-2018 |
ryo |
branches: 1.42.2; 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 tags: pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
#
1.41 |
|
12-Oct-2017 |
skrll |
branches: 1.41.2; Trailing whitespace
|
#
1.40 |
|
21-Sep-2017 |
skrll |
spaces to TAB
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|
#
1.56 |
|
01-Feb-2020 |
riastradh |
KNF
|
#
1.55 |
|
01-Feb-2020 |
riastradh |
Reduce some ifdefs.
|
#
1.54 |
|
01-Feb-2020 |
riastradh |
pic_pending_zero is unnecessary; percpu_alloc already zeroes.
|
#
1.53 |
|
01-Feb-2020 |
riastradh |
Switch arm pic allocation and initialization to percpu_create.
|
Revision tags: ad-namecache-base2 ad-namecache-base1 ad-namecache-base
|
#
1.52 |
|
24-Dec-2019 |
skrll |
Update pic_add to allocate and return an irqbase if passed PIC_IRQBASE_ALLOC.
|
#
1.51 |
|
24-Dec-2019 |
skrll |
Make pic_sourcebase static
|
#
1.50 |
|
23-Dec-2019 |
jmcneill |
Add reference counts to intr_mask/intr_unmask as calls can be nested, spotted by thorpej
|
#
1.49 |
|
23-Dec-2019 |
jmcneill |
Implement acpi_md_intr_mask and acpi_md_intr_unmask
|
Revision tags: netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.48 |
|
16-Nov-2018 |
jmcneill |
Add intr_establish_xname support to arm and expose it to intrctl
|
#
1.47 |
|
13-Nov-2018 |
jmcneill |
Fix intrctl for pics with non-0 irqbase
|
#
1.46 |
|
11-Nov-2018 |
jmcneill |
Add support for intrctl(8).
|
Revision tags: pgoyette-compat-1020
|
#
1.45 |
|
12-Oct-2018 |
jmcneill |
Implement intr_string(9)
|
Revision tags: pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728
|
#
1.44 |
|
15-Jul-2018 |
jmcneill |
Add support for setting and getting interrupt affinity.
|
#
1.43 |
|
09-Jul-2018 |
ryo |
fix false positive KASSERT. the case that secondary processors failed to hatch, and not attached.
when "cpu1 at cpus0: disabled (unresponsive)"
|
Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407
|
#
1.42 |
|
01-Apr-2018 |
ryo |
branches: 1.42.2; 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 tags: pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
#
1.41 |
|
12-Oct-2017 |
skrll |
branches: 1.41.2; Trailing whitespace
|
#
1.40 |
|
21-Sep-2017 |
skrll |
spaces to TAB
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|
#
1.52 |
|
24-Dec-2019 |
skrll |
Update pic_add to allocate and return an irqbase if passed PIC_IRQBASE_ALLOC.
|
#
1.51 |
|
24-Dec-2019 |
skrll |
Make pic_sourcebase static
|
#
1.50 |
|
23-Dec-2019 |
jmcneill |
Add reference counts to intr_mask/intr_unmask as calls can be nested, spotted by thorpej
|
#
1.49 |
|
23-Dec-2019 |
jmcneill |
Implement acpi_md_intr_mask and acpi_md_intr_unmask
|
Revision tags: netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.48 |
|
16-Nov-2018 |
jmcneill |
Add intr_establish_xname support to arm and expose it to intrctl
|
#
1.47 |
|
13-Nov-2018 |
jmcneill |
Fix intrctl for pics with non-0 irqbase
|
#
1.46 |
|
11-Nov-2018 |
jmcneill |
Add support for intrctl(8).
|
Revision tags: pgoyette-compat-1020
|
#
1.45 |
|
12-Oct-2018 |
jmcneill |
Implement intr_string(9)
|
Revision tags: pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728
|
#
1.44 |
|
15-Jul-2018 |
jmcneill |
Add support for setting and getting interrupt affinity.
|
#
1.43 |
|
09-Jul-2018 |
ryo |
fix false positive KASSERT. the case that secondary processors failed to hatch, and not attached.
when "cpu1 at cpus0: disabled (unresponsive)"
|
Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407
|
#
1.42 |
|
01-Apr-2018 |
ryo |
branches: 1.42.2; 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 tags: pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
#
1.41 |
|
12-Oct-2017 |
skrll |
branches: 1.41.2; Trailing whitespace
|
#
1.40 |
|
21-Sep-2017 |
skrll |
spaces to TAB
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|
#
1.50 |
|
23-Dec-2019 |
jmcneill |
Add reference counts to intr_mask/intr_unmask as calls can be nested, spotted by thorpej
|
#
1.49 |
|
23-Dec-2019 |
jmcneill |
Implement acpi_md_intr_mask and acpi_md_intr_unmask
|
Revision tags: netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.48 |
|
16-Nov-2018 |
jmcneill |
Add intr_establish_xname support to arm and expose it to intrctl
|
#
1.47 |
|
13-Nov-2018 |
jmcneill |
Fix intrctl for pics with non-0 irqbase
|
#
1.46 |
|
11-Nov-2018 |
jmcneill |
Add support for intrctl(8).
|
Revision tags: pgoyette-compat-1020
|
#
1.45 |
|
12-Oct-2018 |
jmcneill |
Implement intr_string(9)
|
Revision tags: pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728
|
#
1.44 |
|
15-Jul-2018 |
jmcneill |
Add support for setting and getting interrupt affinity.
|
#
1.43 |
|
09-Jul-2018 |
ryo |
fix false positive KASSERT. the case that secondary processors failed to hatch, and not attached.
when "cpu1 at cpus0: disabled (unresponsive)"
|
Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407
|
#
1.42 |
|
01-Apr-2018 |
ryo |
branches: 1.42.2; 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 tags: pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
#
1.41 |
|
12-Oct-2017 |
skrll |
branches: 1.41.2; Trailing whitespace
|
#
1.40 |
|
21-Sep-2017 |
skrll |
spaces to TAB
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|
Revision tags: isaki-audio2-base pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
|
#
1.48 |
|
16-Nov-2018 |
jmcneill |
Add intr_establish_xname support to arm and expose it to intrctl
|
#
1.47 |
|
13-Nov-2018 |
jmcneill |
Fix intrctl for pics with non-0 irqbase
|
#
1.46 |
|
11-Nov-2018 |
jmcneill |
Add support for intrctl(8).
|
Revision tags: pgoyette-compat-1020
|
#
1.45 |
|
12-Oct-2018 |
jmcneill |
Implement intr_string(9)
|
Revision tags: pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728
|
#
1.44 |
|
15-Jul-2018 |
jmcneill |
Add support for setting and getting interrupt affinity.
|
#
1.43 |
|
09-Jul-2018 |
ryo |
fix false positive KASSERT. the case that secondary processors failed to hatch, and not attached.
when "cpu1 at cpus0: disabled (unresponsive)"
|
Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407
|
#
1.42 |
|
01-Apr-2018 |
ryo |
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 tags: pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202
|
#
1.41 |
|
12-Oct-2017 |
skrll |
branches: 1.41.2; Trailing whitespace
|
#
1.40 |
|
21-Sep-2017 |
skrll |
spaces to TAB
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|
#
1.41 |
|
12-Oct-2017 |
skrll |
Trailing whitespace
|
#
1.40 |
|
21-Sep-2017 |
skrll |
spaces to TAB
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|
#
1.39 |
|
29-Aug-2017 |
nisimura |
decouple pic_ipi_kpreempt() from DDB
|
#
1.38 |
|
25-Aug-2017 |
jmcneill |
The assertion at the bottom of intr_ipi_send is invalid for UP configs; add a text for arm_cpu_max == 1
|
Revision tags: nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base
|
#
1.37 |
|
01-Jun-2017 |
chs |
remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
Revision tags: prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320 nick-nhusb-base-20170204 bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529 nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226
|
#
1.36 |
|
11-Oct-2015 |
mlelstv |
unblock interrupts also when reusing a previously freed irq slot.
|
Revision tags: nick-nhusb-base-20150921 nick-nhusb-base-20150606
|
#
1.35 |
|
18-Apr-2015 |
skrll |
Serialise work in pic_add.
|
#
1.34 |
|
15-Apr-2015 |
matt |
Add separate IPI routines for IPI_AST and IPI_KPREEMPT.
|
#
1.33 |
|
14-Apr-2015 |
jmcneill |
__HAVE_PREEEMPTION -> __HAVE_PREEMPTION
|
#
1.32 |
|
12-Apr-2015 |
matt |
Don't send IPIs to ourselves if sending to everyone.
|
#
1.31 |
|
12-Apr-2015 |
matt |
Don't need pic_ipi_sender anymore.
|
#
1.30 |
|
12-Apr-2015 |
matt |
Use right kcpuset call.
|
#
1.29 |
|
11-Apr-2015 |
matt |
Adapt pic to deal with the BCM2836 interrupts. Move pic_pending_pics, pic_pending_ipls, and pic_blocked_irqs into a structure and make then per-cpu. There is no global interrupt state anymore.
|
#
1.28 |
|
08-Apr-2015 |
matt |
Add __HAVE_PIC_HAVE_PENDING_INTRS and define it if __HAVE_PIC_SET_PRIORITY is undefined (also define in mvsoc_intr.h since their use of the latter is peculiar). This new define controls whether the pending interrupt logic is compiled. The GIC doesn't use pending interrupts since it uses the priority level on the GIC to control delivery of interrupts, thus there can never be a pending interrupt. The kernel shrinks about 4KB with the removal of the pending interupt support,
|
#
1.27 |
|
08-Apr-2015 |
matt |
Don't clear CI_ASTPENDING in exception return, do it in ast() instead. Add basic support for __HAVE_PREEMPTION. Use atomic ops for ci_astpending if __HAVE_PREEMPTION is defined. Use kpreempt_disable/kpreempt_enable
|
Revision tags: nick-nhusb-base-20150406
|
#
1.26 |
|
29-Mar-2015 |
matt |
Add aarch64 support (mostly remapping I32_bit and F32_bit onto aarch64 bits).
|
Revision tags: nick-nhusb-base
|
#
1.25 |
|
08-Nov-2014 |
skrll |
branches: 1.25.2; Include opt_multiprocessor.h
|
#
1.24 |
|
29-Oct-2014 |
skrll |
In the MULTIPROCESSOR case mark all interrupt handlers not at IPL_VM as mpsafe, so the kernel_lock is only taken at IPL_VM as per spl(9).
|
#
1.23 |
|
13-Oct-2014 |
skrll |
Comment out a printf that was confusing entering ddb output.
|
Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
|
#
1.22 |
|
19-May-2014 |
rmind |
branches: 1.22.2; Implement MI IPI interface with cross-call support.
|
Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base
|
#
1.21 |
|
13-Mar-2014 |
matt |
branches: 1.21.2; Support MPSAFE interrupts.
|
#
1.20 |
|
03-Mar-2014 |
matt |
Add a mpsafe flag to the intrsource
|
#
1.19 |
|
28-Jan-2014 |
martin |
Mark a diagnostic-only variable
|
#
1.18 |
|
08-Dec-2013 |
skrll |
Mark rv as unused (for now)
|
#
1.17 |
|
07-Sep-2013 |
matt |
Use KASSERTMSG
|
#
1.16 |
|
19-Aug-2013 |
skrll |
Whitespace
|
Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 matt-nb6-plus-nbase matt-nb6-plus-base
|
#
1.15 |
|
30-Oct-2012 |
msaitoh |
branches: 1.15.2; 1.15.6; Fix a bug that incorrect arg is passed to pic_block_irqs() on disestablish. Fixes PR#45371 by Yuichiro Goto.
|
Revision tags: yamt-pagecache-base6
|
#
1.14 |
|
01-Sep-2012 |
matt |
branches: 1.14.2; Add #ifdef DIAGNOSTIC / #endif
|
#
1.13 |
|
01-Sep-2012 |
matt |
Add PIC hooks for MP and for the ARM Generic Interrupt Controller.
|
#
1.12 |
|
20-Jul-2012 |
matt |
Fix botched change to use right value for ipl. Thanks jak
|
#
1.11 |
|
14-Jul-2012 |
matt |
Add hooks for __HAVE_PIC_SET_PRIORITY which allows updating of a hardware (PIC) priority based on current IPL.
|
#
1.10 |
|
07-Jul-2012 |
skrll |
Convert a KASSERT to a KASSERTMSG
|
#
1.9 |
|
04-Jul-2012 |
skrll |
Add a KASSERT
|
Revision tags: 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-RELEASE netbsd-6-0-RC2 netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base rmind-uvmplock-nbase cherry-xenmp-base jym-xensuspend-nbase rmind-uvmplock-base jym-xensuspend-base
|
#
1.8 |
|
11-Mar-2011 |
bsh |
branches: 1.8.4; 1.8.10; 1.8.12; split arch/arm/pic/pic.c so that we can implement more efficient version of splfoo() while using pic framework.
|
Revision tags: uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base
|
#
1.7 |
|
01-Feb-2011 |
jakllsch |
Increment ci->ci_intr_depth for the duration of pic_do_pending_ints(). Fixes locking catastrophy commonly noticed with mvsata(4) on evbarm.
|
Revision tags: jruoho-x86intr-base matt-mips64-premerge-20101231 uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11
|
#
1.6 |
|
31-Aug-2010 |
kiyohara |
branches: 1.6.2; 1.6.4; Fix lost interrupt. (2/2) + It is likely to lose sight of interrupt when the interrupt of irq_base that is smaller than the same at the level is generated if PIC_MAXSOURCES is 33 or more.
|
#
1.5 |
|
31-Aug-2010 |
kiyohara |
Fix lost interrupt. (1/2) + Change blocked_irqs that dispach if change pending_irqs in the loop.
|
Revision tags: uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211 yamt-nfs-mp-base8 yamt-nfs-mp-base7 jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 nick-hppapmap-base2 nick-hppapmap-base mjf-devfs2-base
|
#
1.4 |
|
30-Dec-2008 |
matt |
branches: 1.4.4; 1.4.6; Use atomic ops to manipulate the bitmasks.
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 haad-dm-base wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
#
1.3 |
|
28-Apr-2008 |
martin |
branches: 1.3.8; 1.3.16; Remove clause 3 and 4 from TNF licenses
|
#
1.2 |
|
27-Apr-2008 |
matt |
Merge kernel changes in matt-armv6 to HEAD.
|
Revision tags: yamt-pf42-baseX yamt-nfs-mp-base yamt-pf42-base ad-socklock-base1 yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase reinoud-bufcleanup-base vmlocking2-base1 matt-armv6-base matt-armv6-nbase jmcneill-base mjf-devfs-base hpcarm-cleanup-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base yamt-x86pmap-base3 vmlocking-base yamt-x86pmap-base2 yamt-x86pmap-base jmcneill-pm-base
|
#
1.1 |
|
29-Aug-2007 |
matt |
branches: 1.1.2; 1.1.20; 1.1.22; 1.1.24; file pic.c was initially added on branch matt-armv6.
|