Commit Graph

250938 Commits

Author SHA1 Message Date
jdolecek d54fac4a0b simplify vioif_start() - remove the delivery attempts on failure and retries,
leave that for the dedicated thread

if dma map load fails, retry after m_defrag(), but continue processing
other queue items regardless

set interface queue length according to the length of virtio queue, so that
higher layer won't queue more than interface can manage to keep in flight

use the mutexes always, not just with NET_MPSAFE, so they continue
being exercised and hence working; they also enforce proper IPL level

inspired by discussion around PR kern/52211, thanks to Masanobu SAITOH
for the m_defrag() idea and code
2017-05-17 20:04:50 +00:00
christos 48f1fe6650 Allow npf to be used "normally" from a rump kernel, not just from the
test harness (problem reported by Frank Kardel)
2017-05-17 18:56:12 +00:00
christos b4b0a6b177 set "testing mode" for ioctl I/O 2017-05-17 18:55:13 +00:00
jdolecek 55f3f83e9c do not set IFF_OACTIVE if dma map load or the virtio reserve fails;
this causes interface to ignore any further TX requests if this happens
when there are no other TX requests in progress

fixes kern/52211 by Juergen Hannken-Illjes
2017-05-17 18:21:40 +00:00
macallan 67e9f2e5ba fix tpyo 2017-05-17 14:15:29 +00:00
hannken 9fc3ca45b3 Suspend file system while revoking a vnode. This way no operations run
on the mounted file system during revoke and all operations see
the state before or after the revoke.
2017-05-17 12:46:14 +00:00
hannken 677cf1d8b4 Suspend file system while unmounting. This way no operations run
on the mounted file system during unmount and all operations see
the state before or after the (possibly failed) unmount.
2017-05-17 12:45:03 +00:00
knakahara e8378c51a8 decrease the priority of batch crp even if there are more than one batch crp. 2017-05-17 12:11:41 +00:00
knakahara b83761f2b5 refactor cryptointr(), no functional changes. 2017-05-17 11:04:38 +00:00
knakahara 4cc846107d fix cryptointr() can process unexpected request.
If migrate crp is linked after batch crp, "submit" is already set to
the batch crp. So, cryptointr() can process the batch crp instead of
the target migrate crp.
2017-05-17 11:03:42 +00:00
wiz 1c215f60f4 Sort SEE ALSO. 2017-05-17 09:03:12 +00:00
knakahara 3e6db4b451 refactor crypto_kdispatch() in a similar way as crypto_dispatch(). 2017-05-17 07:12:50 +00:00
knakahara e309e6bf6a refactor crypto_dispatch (3/3): do "blocked" operation previously 2017-05-17 06:53:02 +00:00
knakahara c42317cfcb refactor crypto_dispatch (2/3): divide migrate operation 2017-05-17 06:52:08 +00:00
knakahara 818d6afe60 refactor crypto_dispatch (1/3): divide batch operation
Processing batch operation at first, crypto_q_mtx's lock region is reduced
because crp does not require crypto_q_mtx.
2017-05-17 06:50:12 +00:00
knakahara c4e549c723 opencrypto: cleanup debug messages. 2017-05-17 06:33:04 +00:00
ozaki-r beade07f61 Add test cases of TCP communications with IPsec enabled
The test cases transfer data over TCP by using nc with IPsec just enabled
(no SA/SP is configured) and confirm the commit "Fix diagnostic assertion
failure in ipsec_init_policy" really fixes the issue.
2017-05-17 06:30:15 +00:00
ozaki-r 14fe74100b Replace malloc/free with kmem(9) and kill KMALLOC/KFREE macros 2017-05-17 02:19:09 +00:00
ozaki-r 86d681a1cc Fix memory leaks of allocated data to sav on key_update
key_setsaval NULL-clears member variables of sav at the beginning
of the function regardless of the states of the variables. When
key_setsaval is called by key_update, member variables sav->replay,
sav->key_* and sav->lft_* may have data allocated by malloc. In
that case they will leak. Free them before NULL-clear to avoid
memory leaks.
2017-05-17 02:04:55 +00:00
nat 81a19d06f0 Set sc_[trigger/rec]_started before the call to trigger_[input/output].
This prevents multiple calls to trigger_[input/output] for those drivers
that drop sc_intr_lock in there trigger_[input/output] functions.
2017-05-16 23:55:53 +00:00
nat 4d77645be1 Drop sc_lock whilst doing uaudio_chan_open uaudio[pr]transfer.
uaudio now works again.
2017-05-16 23:49:43 +00:00
jdolecek 188f75011d add vioscsi(4) manpage 2017-05-16 23:21:53 +00:00
jdolecek 21c32e49aa mention recent vioscsi/virtio changes 2017-05-16 23:00:42 +00:00
nat ab5bda2dd6 Revert the changes made with holding sc_lock in audiostartp/startr made in
rev 1.347.  The audio tests should run again.
2017-05-16 21:43:18 +00:00
snj 2377854aeb update core 2017-05-16 17:40:01 +00:00
roy 2e0a9a1da6 Improve the scope of some variables. 2017-05-16 12:03:41 +00:00
roy 8e374e1b75 Remove ticcmp and extend _ti_checkname so it can be used instead. 2017-05-16 11:16:37 +00:00
roy fc79bac804 Fix prior for multiple terminfo aliases. 2017-05-16 10:29:06 +00:00
roy 2b9f5c3f2c Instead of poking in the binary blob to work out if this is our terminal,
assume it is and load it.
Once loaded then check it's really for us.
This allows us to work out if the indexed alias entry is correct we
this was not checked previously.
2017-05-16 10:25:40 +00:00
ozaki-r 6618f5ed62 Replace kmem_alloc + memset with kmem_zalloc
Suggested by kamil@
2017-05-16 10:11:24 +00:00
roy 12d2934b32 _ti_database now includes the database extension so don't duplicate it. 2017-05-16 09:21:54 +00:00
roy 2678fcfdf5 Don't bother allocating space for the database name, just print
directly to the static buffer storage.
2017-05-16 09:19:48 +00:00
roy 3edb4adc61 Move pathbuf into the function where it's actually used. 2017-05-16 08:52:14 +00:00
ozaki-r db86b5ecbc Fix memory leaks of sah->idents and sah->identd
Originally fixed by the SEIL team of IIJ
2017-05-16 07:43:50 +00:00
ozaki-r b5d03f6429 Fix diagnostic assertion failure in ipsec_init_policy
panic: kernel diagnostic assertion "!cpu_softintr_p()" failed: file "../../../../netipsec/ipsec.c", line 1277
  cpu7: Begin traceback...
  vpanic() at netbsd:vpanic+0x140
  ch_voltag_convert_in() at netbsd:ch_voltag_convert_in
  ipsec_init_policy() at netbsd:ipsec_init_policy+0x149
  in_pcballoc() at netbsd:in_pcballoc+0x1c5
  tcp_attach_wrapper() at netbsd:tcp_attach_wrapper+0x1e1
  sonewconn() at netbsd:sonewconn+0x1ea
  syn_cache_get() at netbsd:syn_cache_get+0x15f
  tcp_input() at netbsd:tcp_input+0x1689
  ipintr() at netbsd:ipintr+0xa88
  softint_dispatch() at netbsd:softint_dispatch+0xd3
  DDB lost frame for netbsd:Xsoftintr+0x4f, trying 0xfffffe811d337ff0
  Xsoftintr() at netbsd:Xsoftintr+0x4f

Reported by msaitoh@
2017-05-16 07:25:57 +00:00
snj 3d7f0c90ba fix inverted logic.
spotted by "sc dying" on current-users.
2017-05-16 06:16:35 +00:00
ozaki-r 2044837295 Use kmem(9) instead of malloc/free
Some of non-sleepable allocations can be replaced with sleepable ones.
To make it clear that the replacements are possible, some assertions
are addded.
2017-05-16 03:05:28 +00:00
ozaki-r 07df88e0cd Run key_timehandler in thread context (workqueue)
The handler involves object deallocations so we want to not run
it in softint.
2017-05-16 02:59:22 +00:00
jdolecek 91791fcb95 free the virtio slot _before_ calling scsipi_done(), so that driver is able
to accept another request immediatelly and doesn't trigger spurious
XS_RESOURCE_SHORTAGE

part of fix for PR kern/52199
2017-05-15 21:30:37 +00:00
kre ab36694a85 DEBUG mode shell update (changes nothing for shells which are not
compiled for DEBUG.)

Add debug builtin command, and corresponding -D command line option.
As usual, for DEBUG related stuff, read the source for info, that's
all there is about this.

This completes the infrastructure changes for the updated DEBUG TRACE
mechanism, so now converting the rest of the shell's internal tracing
can happen as desired - piecemeal.
2017-05-15 20:00:36 +00:00
kre 455974806a (Perhaps temporarary) updated "hash" command. New options, and
more flexible behaviour.
2017-05-15 19:55:20 +00:00
kre 22a6d2dd08 More test sub-cases for the dollar_hash ( ${#...} ) test.
Upi really (really!) don't want to know!

Also, add a comment (in another section) and avoid giving messages
to atf_fail that include newlines - AFT really doesn't like that.
Instead, convert the \n's to ;'s so at least the content is retained.
2017-05-15 19:53:40 +00:00
kre d2f0ed5d12 Drop the lex library - hasn't been needed since the airthmetic
upgrade a while ago (this should make no difference to anything
other than a minor - very minor - build time speedup, ld is
smart enough to relaise that nothing from the lex library was
needed, and the executable contains no reference to it, even
befor ethis change.)
2017-05-15 18:34:56 +00:00
christos eeb345227e Don't make assert use stdio; saves >100K on an empty static binary. 2017-05-15 16:09:09 +00:00
manu 5b4eb43c12 Allow building with MKKERBEROS=no 2017-05-15 13:38:34 +00:00
martin 18dfdd8b75 Be carefull with play-only/record-only devices. Suggestion from Jared,
avoids a crash with hdmi audio.
2017-05-15 12:07:32 +00:00
skrll cd39838954 Fix off-by-one in tlb_record_asids 2017-05-15 10:59:24 +00:00
ozaki-r fe20eadb23 Add test cases for SA lifetime 2017-05-15 09:58:22 +00:00
ozaki-r 12efcd61a3 Fix typo 2017-05-15 09:56:47 +00:00
ozaki-r 53a9fb14fe Sort 2017-05-15 09:56:12 +00:00