Commit Graph

274309 Commits

Author SHA1 Message Date
yamaguchi
283d3de4a9 Change the number of retry to be the same as FreeBSD and Linux
pointed out and reviewed by knakahara@n.o., thanks.
2020-02-25 07:53:55 +00:00
yamaguchi
6e254227cf Disable all queues before waiting for the completion
on each queue to reduce the number of delays

pointed out and reviewed by knakahara@n.o., thanks
2020-02-25 07:50:25 +00:00
yamaguchi
48bdbc0885 Use callout_halt() instead of callout_stop for safety
pointed out and reviewed by knakahara@n.o., thanks
2020-02-25 07:45:28 +00:00
yamaguchi
aca1dd3bc4 Stop callout for statistics while the interface is not running 2020-02-25 07:41:32 +00:00
yamaguchi
a2576ffa9b Change position of the cpuid::ixl_hmc_txq
to be same with ixl_hmc_pack_txq[]

This has no functionality impact because the position on memory
is defined in ixl_hmc_pack_txq[].

pointed out and reviewed by knakahara@n.o., thanks
2020-02-25 07:35:54 +00:00
yamaguchi
1ac38ddfd7 Hold per-queue locks when clearing config of queues for safety 2020-02-25 07:31:19 +00:00
yamaguchi
ab5a0b3d6d Add defines for the max number of queue
pointed out and reviewed by knakahara@n.o., thanks
2020-02-25 07:22:18 +00:00
yamaguchi
57a241816f Set 0 to txr_{prod,cons} and rxr_{prod,cons} when HMC objects
are cleared

Those values should be the same as head and tail in an HMC object
2020-02-25 07:17:19 +00:00
yamaguchi
d6355b8dcf Use workqueue API directly, without the wrapper in ixl(4)
to improve performace by removing atomic_ops(3)

pointed out and reviewed by knakahara@n.o., thanks
2020-02-25 07:10:10 +00:00
yamaguchi
12a5bb547f Remove WQ_PERCPU flag for the workqueue that does configurations
such as link up and down

And added kpreempt_disable and kpreempt_enable around
workqueue_enqueue to call it in non-WQ_PERCPU thread context.

pointed out and reviewed by knakahara@n.o., thanks.
2020-02-25 07:05:57 +00:00
yamaguchi
e99dedd666 Added __KERNEL_RCSID 2020-02-25 07:00:26 +00:00
ozaki-r
82bf8980a0 shmif: reduce the number of calls of cprng(9) 2020-02-25 03:26:18 +00:00
ozaki-r
056381ce4e shmif: s/sc_uuid/sc_uid/
It's not UUID :-/
2020-02-25 03:25:36 +00:00
ozaki-r
01d5ee543c shmif: use cprng_strong64 instead of cprng_fast64 to generate a unique ID
shmif uses random bytes generated by cprng(9) as a unique device ID
between rump kernels to identify packets fed by itself and not receive
them.  So if generated bytes are identical between shmif interfaces on
different rump kernels, shmif may drop incoming packets unintentionally.
This is one cause of recent ATF test failures of IPsec.

Fix it by using cprng_strong64 instead of cprng_fast64.  This is a
workaround and we should also investigate why cprng_fast64 starts
failing on rump kernels, although using cprng_strong64 in initialization
itself is feasible.

Fix PR kern/54897
2020-02-25 03:24:48 +00:00
rin
7b0078382b Comment out do_ucas_32(), only user of which, _ucas_32(), is commented out
since powerpc/trap.c rev 1.156:

    http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/arch/powerpc/powerpc/trap.c#rev1.156
2020-02-25 00:42:12 +00:00
kamil
dcbba1fbc7 Add new test in t_ptrace_wait*
New test: syscall_killed_on_sce

Test passes correctly.
2020-02-24 23:46:45 +00:00
ad
f788f8574a uvm_unloanpage(): fix a screwup in previous. slock must be set NULL if
it can't be acquired.
2020-02-24 21:06:11 +00:00
ad
9449130074 v_interlock -> vmobjloc 2020-02-24 20:53:11 +00:00
ad
1316228274 v_interlock -> vmobjlock 2020-02-24 20:49:51 +00:00
jdolecek
60c698dce1 move config_init_mi() call before vfsinit(), which can trigger loading
of VFS modules

fixes crash with LOCKDEBUG due to uninitialized mutex when zfs
module is loaded in boot, because zfs's spa_init() calls config_mountroot()
which now requires the config init having been done
2020-02-24 20:47:47 +00:00
ad
bada6a544d v_interlock -> vmobjlock 2020-02-24 20:44:25 +00:00
ad
62676245ac Adjust for UVM locking changes. 2020-02-24 20:42:18 +00:00
ad
1319e8efbf Adjust for UVM locking changes 2020-02-24 20:31:56 +00:00
ad
bfc37e9217 v_interlock -> vmobjlock 2020-02-24 20:11:45 +00:00
kamil
a8e08e9489 Use UNALIGNED_OK to disable unaligned pointer arithmetic checks in UBSan
Upstream fixed it differently by refactoring the code and the problem will
go away on upgrade to 5.0.
2020-02-24 18:39:47 +00:00
kamil
d8be380674 Rearrange the code to make UNALIGNED_OK available for __NetBSD__ 2020-02-24 16:19:35 +00:00
rin
4c1762c6a4 0x%#x --> %#x for non-external codes.
Also, stop mixing up 0x%x and %#x in single files as far as possible.
2020-02-24 12:38:57 +00:00
rin
4ecd76e535 0x%p --> %p for non-external codes. 2020-02-24 12:20:29 +00:00
rin
223f5f7746 Fix previous; we need <uvm/uvm_extern.h> for machines with
!ARM_HAS_VBAR && !__ARM_FIQ_INDIRECT.
2020-02-24 12:08:08 +00:00
wiz
14df4e9b76 New sentence, new line. Bump date for previous. 2020-02-24 11:59:33 +00:00
rin
fc092edb5e Oops, revert previous; fix build for PPC_OEA64 || PPC_OEA64_BRIDGE.
oea and booke seem to work without direct-mapped and physically
contiguous u-area.
2020-02-24 11:49:17 +00:00
mlelstv
c445faa062 Add one-shot mode. 2020-02-24 11:45:30 +00:00
rin
7edbe5fb42 Remove debug printf I put into bridge_calc_csum_flags().
Sorry for noise.
2020-02-24 00:47:38 +00:00
sevan
dcde438ba5 Add K&R publish date
https://twitter.com/MIT_CSAIL/status/1231263883303645184
2020-02-24 00:02:55 +00:00
sevan
ee58edef94 Add The KLF's Chill Out 2020-02-23 23:56:15 +00:00
ad
3b5c9f3eb7 Fix a comment. 2020-02-23 23:54:52 +00:00
sevan
4ad7b96cbd bsd-family-tree 2020-02-23 23:32:57 +00:00
sevan
6c3061a7d9 Sync with r358264 which fixes NetBSD 9.0 release 2020-02-23 23:31:55 +00:00
ad
e3b9ca63b1 Mistake in previous - lwp_t *l was not meant to be static. 2020-02-23 22:56:41 +00:00
ad
abdb581126 The PV locking changes are expensive and not needed yet, so back them
out for the moment.  I want to find a cheaper approach.
2020-02-23 22:28:53 +00:00
ad
48276a61e1 Regen. 2020-02-23 22:15:18 +00:00
ad
926b25e154 Merge from ad-namecache:
- Have a stab at clustering the members of vnode_t and vnode_impl_t in a
  more cache-conscious way.  With that done, go back to adjusting v_usecount
  with atomics and keep vi_lock directly in vnode_impl_t (saves KVA).

- Allow VOP_LOCK(LK_NONE) for the benefit of VFS_VGET() and VFS_ROOT().
  Make sure LK_UPGRADE always comes with LK_NOWAIT.

- Make cwdinfo use mostly lockless.
2020-02-23 22:14:03 +00:00
jdolecek
97e9007d62 disable the DEBUG bridge_calc_csum_flags() printf 2020-02-23 21:50:21 +00:00
ad
bcbc27bb2d Use rw_lock_op(). 2020-02-23 21:36:29 +00:00
ad
f340434d23 +EINVAL 2020-02-23 20:41:41 +00:00
plunky
43690d4aea fix reversed logic for Remote Port Negotiation, pointed out by maxv@ 2020-02-23 20:16:10 +00:00
ad
5d7e3f8793 shutdown_all: take kernel_lock now that kern_reboot() doesn't. 2020-02-23 20:08:35 +00:00
ad
566d645518 - If concurrent calls to kern_reboot(), only let the first do the deed.
- Don't need kernel_lock for this (either OK, or suspendsched() called).
2020-02-23 20:06:30 +00:00
ad
6f6fffb616 Adjustment to previous: TP_SET_DONE() was wiping out the VA to shoot,
instead of ORing the flag into the array element.  This caused the CPU
initiating the shootdown to occasionally miss an INVLPG.
2020-02-23 18:57:28 +00:00
ad
9c4853d61e kpause(): is only awoken via timeout or signal, so use SOBJ_SLEEPQ_NULL like
_lwp_park() does, and dispense with the hashed sleepq & lock.
2020-02-23 16:27:09 +00:00