|
|
163af73554
|
HFI1: properly iterate iovecs according to underlying page sizes
|
2018-06-13 00:31:34 +09:00 |
|
|
|
fd316f3ca3
|
HFI1: pass per-CPU txreq_cache to user_sdma_send_pkts()
|
2018-06-13 00:31:34 +09:00 |
|
|
|
122588bc4d
|
mcexec: --enable-hfi1 to runtime enable/disable HFI1 driver
Conflicts:
executer/user/mcexec.c
|
2018-06-13 00:31:34 +09:00 |
|
|
|
70238982c2
|
HFI1: use embedded kmalloc cache for req->tids (fixes AllReduce hang)
|
2018-06-13 00:31:34 +09:00 |
|
|
|
5b5191ef64
|
HFI1: move txreq kmalloc cache header into CPU local variable
|
2018-06-13 00:31:34 +09:00 |
|
|
|
a65faeaed4
|
kmalloc cache: embed cache pointer into kmalloc_header
Conflicts:
kernel/mem.c
|
2018-06-13 00:31:34 +09:00 |
|
|
|
4dea1842e0
|
kmalloc cache: embed cache pointer into kmalloc_header
Conflicts:
kernel/mem.c
|
2018-06-13 00:31:34 +09:00 |
|
|
|
5353b11f90
|
HFI1: disable kmalloc cache for req->tids (AllReduce fails otherwise)
|
2018-06-13 00:31:34 +09:00 |
|
|
|
abdbf96254
|
HFI1: use process rank for SDMA engine selection
|
2018-06-13 00:31:33 +09:00 |
|
|
|
bd170e63ba
|
kmalloc cache refactor and pre-alloc in HFI1 open()
|
2018-06-13 00:31:33 +09:00 |
|
|
|
d35fa16417
|
HFI1: more detailed profiling (disabled by default)
|
2018-06-13 00:31:33 +09:00 |
|
|
|
6406a0df6b
|
HFI1: compute SDMA pkt length taking large pages into account
|
2018-06-13 00:31:33 +09:00 |
|
|
|
52e8f03b4b
|
HFI1: store base physical address in iovec if physically contiguous
|
2018-06-13 00:31:33 +09:00 |
|
|
|
b071a3f32c
|
HFI1: use fast_memcpy() in header fillings
Conflicts:
kernel/user_sdma.c
|
2018-06-13 00:31:33 +09:00 |
|
|
|
90258f00bd
|
HFI1: use generic kmalloc cache for user_sdma_txreqs and req tids
|
2018-06-13 00:31:33 +09:00 |
|
|
|
28eb649056
|
Generic lock-free kmalloc cache implementation
Conflicts:
kernel/mem.c
|
2018-06-13 00:31:33 +09:00 |
|
|
|
744ebacf65
|
HFI1: more pre-allocation in txreq cache
|
2018-06-13 00:31:33 +09:00 |
|
|
|
62e438a0aa
|
HFI1: do device ioremap() mappings in per-process fashion
|
2018-06-13 00:31:32 +09:00 |
|
|
|
5ac582a678
|
user_sdma_send_pkts(): unlikely() around slow path condition
|
2018-06-13 00:31:32 +09:00 |
|
|
|
51bc28acca
|
sdma_select_user_engine(): hash on CPU number
|
2018-06-13 00:31:32 +09:00 |
|
|
|
c43654d69b
|
user_sdma_send_pkts(): handle page sizes correctly
|
2018-06-13 00:31:32 +09:00 |
|
|
|
c1d2db6a73
|
fixed sdma_vl_map, just in case it will be used in the future
|
2018-06-13 00:31:32 +09:00 |
|
|
|
aeef55d1b0
|
kmalloc(): try to get from remote_free list when regular is empty
|
2018-06-13 00:31:32 +09:00 |
|
|
|
6e289e8d9f
|
HFI1: txreq cache and profiling
|
2018-06-13 00:31:32 +09:00 |
|
|
|
3b5363c533
|
HFI1: use original length calculation in sdma_send_pkts()
Conflicts:
kernel/include/hfi1/sdma.h
|
2018-06-13 00:31:32 +09:00 |
|
|
|
60f6862db2
|
HFI1: use local write if private data is present; fix lenght alignment
|
2018-06-13 00:31:31 +09:00 |
|
|
|
39deff4e10
|
HFI1: working but a bit slow
|
2018-06-13 00:31:31 +09:00 |
|
|
|
7f03c18d4d
|
Real run test version (update_tail, kregbase+offset crash)
|
2018-06-13 00:31:31 +09:00 |
|
|
|
640dba627f
|
Added debugging output. Bugfixes in user_sdma_send_pkts() and sdma_send_txreq().
|
2018-06-13 00:31:31 +09:00 |
|
|
|
ae368d97d4
|
Implemented a replacement for sdma_txadd_page()
Conflicts:
kernel/user_sdma.c
|
2018-06-13 00:31:31 +09:00 |
|
|
|
99c216d91e
|
HFI1: fix kregbase/piobase types to avoid warnings
|
2018-06-13 00:31:31 +09:00 |
|
|
|
3c357dc30a
|
HFI1: fix completion mapping
|
2018-06-13 00:31:31 +09:00 |
|
|
|
37866e61ab
|
HFI1: map completion queues
|
2018-06-13 00:31:31 +09:00 |
|
|
|
076e6b9b12
|
Enabled _sdma_txadd_daddr()
|
2018-06-13 00:31:30 +09:00 |
|
|
|
fa6db686b4
|
Corrected spin_lock_irqsave() spin_unlock_irqrestore() definitions
Conflicts:
kernel/include/hfi1/ihk_hfi1_common.h
|
2018-06-13 00:31:30 +09:00 |
|
|
|
74a636a612
|
Updated structs to use completion{} and wait_queue_head_t{} and added struct size checkes in hfi1_aio_write()
|
2018-06-13 00:31:30 +09:00 |
|
|
|
1c4a6568e6
|
Updated sdma.h (fixed struct sdma_engine size)
|
2018-06-13 00:31:30 +09:00 |
|
|
|
7d2e2f93b0
|
HFI1: map piobase and rcvarray_wc
|
2018-06-13 00:31:30 +09:00 |
|
|
|
7005110697
|
Updated and confirmed struct iowait{} and struct hfi1_user_sdma_pkt_q {}
Conflicts:
kernel/include/hfi1/ihk_hfi1_common.h
|
2018-06-13 00:31:30 +09:00 |
|
|
|
c4ca4ae3ab
|
Updated struct hfi1_devdata and confirmed its size
|
2018-06-13 00:31:30 +09:00 |
|
|
|
b024a486b9
|
Updated hfi1_filedata {} and confirmed its size against the original on Linux
Conflicts:
kernel/include/hfi1/hfi.h
|
2018-06-13 00:31:30 +09:00 |
|
|
|
fe4c461f2f
|
Updated kcalloc/kmalloc calls and enabled sdma_select_user_engine dependencies
Conflicts:
kernel/include/hfi1/ihk_hfi1_common.h
|
2018-06-13 00:31:29 +09:00 |
|
|
|
b60a980088
|
hfi1_user_sdma_process_request(): map HFI1 kregbase
|
2018-06-13 00:31:29 +09:00 |
|
|
|
ec66229063
|
HFI1: adjust sdma_select_user_engine()
Conflicts:
kernel/user_sdma.c
|
2018-06-13 00:31:29 +09:00 |
|
|
|
b875b5186f
|
spinlock: make increment compatible with XPPSL Linux (v3.10)
|
2018-06-13 00:31:29 +09:00 |
|
|
|
5cf884ef41
|
Updated TODO tags and struct hfi1_user_sdma_pkt_q
|
2018-06-13 00:31:29 +09:00 |
|
|
|
64e2639adc
|
* The relevant files have been modified in order to compile with McKernel.
Conflicts:
kernel/Makefile.build.in
|
2018-06-13 00:31:29 +09:00 |
|
|
|
14b360e867
|
* Added the original files of the driver as a basis for comparison
Conflicts:
kernel/include/hfi1/sdma.h
kernel/sdma.c
kernel/user_sdma.c
|
2018-06-13 00:31:29 +09:00 |
|
|
|
4a0e389953
|
HFI1: comments to keep in mind
Conflicts:
kernel/include/hfi1/sdma.h
kernel/sdma.c
kernel/user_sdma.c
|
2018-06-13 00:31:28 +09:00 |
|
|
|
34363c2b68
|
close(): clear fd_priv_table
|
2018-06-13 00:31:28 +09:00 |
|