Yuhao Zhou
|
e8071b5d50
|
Fix a minor bug.
|
6 years ago |
Yuhao Zhou
|
a10a7cafa1
|
Add interrupt dispatcher.
|
6 years ago |
Yuhao Zhou
|
53317e84c4
|
Add context.
|
6 years ago |
Jiajie Chen
|
ceff1ad609
|
Fix aarch64 backtrace
|
6 years ago |
WangRunji
|
847664fda1
|
move AHCI driver to isomorphic_drivers crate
|
6 years ago |
Jiajie Chen
|
a1ae2af269
|
Implement send for ixgbe
|
6 years ago |
Yuhao Zhou
|
1fba79d26a
|
Fix a syntax error.
|
6 years ago |
Yuhao Zhou
|
40e4d23c19
|
Merge branch 'mipsel' of github.com:oscourse-tsinghua/rcore_plus into mipsel
|
6 years ago |
Yuhao Zhou
|
05f9327272
|
Update mips paging.rs.
|
6 years ago |
Jiajie Chen
|
b0c9087f0f
|
Implement ioctl arp translation
|
6 years ago |
Harry Chen
|
78b7c7b893
|
Fix syscall handling for mipsel, update user programs repo
Signed-off-by: Harry Chen <i@harrychen.xyz>
|
6 years ago |
Jiajie Chen
|
55df9ca892
|
Initial support for ioctl SIOCGARP
|
6 years ago |
Jiajie Chen
|
c944d2269d
|
Enable user to send to iface directly via packet socket
|
6 years ago |
Jiajie Chen
|
77f8afa30c
|
Refactor network endpoint, and add basic support for sockaddr_ll
|
6 years ago |
Jiajie Chen
|
f028823e5a
|
Assign different IP addresses for different nics
|
6 years ago |
Jiajie Chen
|
d3a462e8a0
|
Implement hdrincl for raw socket
|
6 years ago |
Jiajie Chen
|
025007c8bf
|
Upgrade rcore-thread for riscv fixes
|
6 years ago |
Jiajie Chen
|
99bb25fa7d
|
Typo: bit_allocator => bitmap_allocator
|
6 years ago |
WangRunji
|
b77a52dccb
|
move bit-allocator and rcore-thread crate to remote
|
6 years ago |
WangRunji
|
c9a68634f5
|
simplify FdSet using bitvec crate
|
6 years ago |
Harry Chen
|
f8a62b5549
|
Merge remote-tracking branch 'origin/master' into mipsel
|
6 years ago |
Jiajie Chen
|
c99b7a1aed
|
Remove -machine ubuntu for newer version of QEMU
|
6 years ago |
Harry Chen
|
8bc00324c8
|
Extract common framebuffer driver from aarch64
Signed-off-by: Harry Chen <i@harrychen.xyz>
|
6 years ago |
Harry Chen
|
0acb65ff74
|
Add driver for thinpad
Signed-off-by: Harry Chen <i@harrychen.xyz>
|
6 years ago |
Harry Chen
|
f394f0fccb
|
Add DTS for thinpad
Signed-off-by: Harry Chen <i@harrychen.xyz>
|
6 years ago |
Harry Chen
|
6245d86a27
|
Move dts to board dir, fix some import error
Signed-off-by: Harry Chen <i@harrychen.xyz>
|
6 years ago |
Harry Chen
|
015cc72aa4
|
Fix malta drivers
Signed-off-by: Harry Chen <i@harrychen.xyz>
|
6 years ago |
Harry Chen
|
8dff9f1b14
|
Re-orgnize drivers for mipsel, extract FBConsole driver to common directory
Signed-off-by: Harry Chen <i@harrychen.xyz>
|
6 years ago |
Harry Chen
|
85245c4e21
|
Finish serial initialization
Signed-off-by: Harry Chen <i@harrychen.xyz>
|
6 years ago |
Harry Chen
|
4e3b2fb80f
|
Add support for 16550 serial controller
Signed-off-by: Harry Chen <i@harrychen.xyz>
|
6 years ago |
Jiajie Chen
|
b4bd960a74
|
Map ixgbe to kernel space as well
|
6 years ago |
Jiajie Chen
|
ee66451873
|
Map e1000 to kernel space addr as well and rename its iface
|
6 years ago |
Jiajie Chen
|
66af7473eb
|
Do not use alloc::prelude
|
6 years ago |
Jiajie Chen
|
ca45848028
|
Add extra_nic option
|
6 years ago |
Jiajie Chen
|
4c528be778
|
Fix comment in AHCI
|
6 years ago |
Harry Chen
|
2d5b6948b5
|
Pass dtb to driver, remove rv code in io
Signed-off-by: Harry Chen <i@harrychen.xyz>
|
6 years ago |
Harry Chen
|
0a02315990
|
Add kernel stack for exception handling
Signed-off-by: Harry Chen <i@harrychen.xyz>
|
6 years ago |
Harry Chen
|
4ddcdeb004
|
Complete DTS for qemu-malta
Signed-off-by: Harry Chen <i@harrychen.xyz>
|
6 years ago |
Harry Chen
|
b6f1b3c926
|
Merge remote-tracking branch 'origin/master' into mipsel
|
6 years ago |
Harry Chen
|
c496dd5778
|
Fix extra endif in Makefile
Signed-off-by: Harry Chen <i@harrychen.xyz>
|
6 years ago |
Harry Chen
|
34c3d139a1
|
Modify linker script to mipsel arch, add dts in kernel binary
Signed-off-by: Harry Chen <i@harrychen.xyz>
|
6 years ago |
Yuhao Zhou
|
d588a922ab
|
Fix some syntax errors.
|
6 years ago |
WangRunji
|
05d714ff27
|
improve AHCI mod stage 2
|
6 years ago |
Yuhao Zhou
|
bcff364b1a
|
Add exception handler for MIPS.
|
6 years ago |
Yuhao Zhou
|
9bdac887f0
|
Remove SBI.
|
6 years ago |
Yuhao Zhou
|
95b9fe5f5b
|
Add timer for mips.
|
6 years ago |
Yuhao Zhou
|
cbb59d853b
|
Fix arch error in mips.
|
6 years ago |
Yuhao Zhou
|
e53b3c16f6
|
Add interrupt for mips32 in crate::thread.
|
6 years ago |
Yuhao Zhou
|
a78916c57e
|
Add MIPS target.
|
6 years ago |
WangRunji
|
8d92b7b985
|
simplify AHCI mod stage 1
|
6 years ago |
WangRunji
|
11c5609171
|
refactor PCI mod using pci crate
|
6 years ago |
Jiajie Chen
|
d9bdaf9875
|
Fix AHCI not working on newer versions of QEMU
|
6 years ago |
Jiajie Chen
|
3dff84c686
|
Fix last commit for pci device probing
|
6 years ago |
Jiajie Chen
|
2da17d7fcd
|
Replace IDE with AHCI driver
|
6 years ago |
Jiajie Chen
|
cbba658e22
|
Implement ATA IDENTIFY DEVICE via AHCI interface
|
6 years ago |
Jiajie Chen
|
9831cae13c
|
Fix travis CI for riscv32
|
6 years ago |
Jiajie Chen
|
236ddd0827
|
Move chmod to x86 specific syscall
|
6 years ago |
Jiajie Chen
|
105ce6a794
|
Merge remote-tracking branch 'rcore/dev'
|
6 years ago |
WangRunji
|
1ffd44cde0
|
HUGE REFACTOR net module
|
6 years ago |
Jiajie Chen
|
311cf104f9
|
Many minor fixes to allow gcc to run inside rCore. Add some syscalls, fix SEEK_* and enlarge the heap
|
6 years ago |
Jiajie Chen
|
524865ebd8
|
Implement sys_prlimit64 for nginx
|
6 years ago |
WangRunji
|
c2a90e2ab1
|
update dependencies
|
6 years ago |
WangRunji
|
b836b11792
|
reformat code using `cargo fmt`
|
6 years ago |
Jiajie Chen
|
fe88f4f77f
|
Fix sys_readv not updating file offset
|
6 years ago |
equation314
|
e4df6d6788
|
Fix bootloader build failure on aarch64
|
6 years ago |
Jiajie Chen
|
10e883d56f
|
Fix mmap clashing with temporary map addr. Add riscv toolchains in travis CI
|
6 years ago |
Jiajie Chen
|
fcfe677bcc
|
Fix makefile and loader NULL character stripping
|
6 years ago |
Jiajie Chen
|
5c33191765
|
Implement automatic tests using kernel cmdline
|
6 years ago |
WangRunji
|
dc19d38dc7
|
convert all C-style comments to Rust-style docs
|
6 years ago |
WangRunji
|
01a0f961e9
|
remove remaining M-Mode & K210 code. improve docs in context.rs
|
6 years ago |
WangRunji
|
6923efd250
|
fix last commit. improve process code.
|
6 years ago |
Jiajie Chen
|
e3fb47a03e
|
Remove m-mode and k210 support.
|
6 years ago |
WangRunji
|
fc584753c1
|
update crate x86_64 to v0.5, bootloader to v0.4
|
6 years ago |
Jiajie Chen
|
adb66167f8
|
Fix a potential racing in Condvar
|
6 years ago |
Jiajie Chen
|
7ee69db575
|
Silence sys_access and sys_chdir because rust sh use these now
|
6 years ago |
Jiajie Chen
|
285ffc7618
|
Move absolute/relative path resolution to rcore-fs, implement dummy sys_fchown, sys_fchownat and sys_symlinkat
|
6 years ago |
Jiajie Chen
|
48ebf98f11
|
Fix pop_with_split, check file existence in sys_access
|
6 years ago |
Jiajie Chen
|
285df82b80
|
Fix qcow2, and add pci_passthru to MakeFile
Signed-off-by: Jiajie Chen <noc@jiegec.ac.cn>
|
6 years ago |
Jiajie Chen
|
715faca0df
|
Use qcow2 instead of img for sfsimg
|
6 years ago |
Jiajie Chen
|
556d263d8e
|
Implement sys_openat and sys_renameat
|
6 years ago |
Jiajie Chen
|
0edfc07939
|
Allow page fault handler to bypass process lock and fix thread pool wakeup for exited process
|
6 years ago |
Jiajie Chen
|
9f03bfc849
|
Add rand module for ip port randomization and use ethernet default mtu in ixgbe
|
6 years ago |
Jiajie Chen
|
2fac6e9941
|
Dummy implementation for sys_statfs, sys_flock and sys_mount
|
6 years ago |
Jiajie Chen
|
705505c543
|
Rearrange syscall order and implement dummy sys_fstatfs
|
6 years ago |
Jiajie Chen
|
547baa9ecd
|
Implement symlink following
|
6 years ago |
Jiajie Chen
|
0272aa1070
|
Implement sys_readlink and improve sys_mremap
|
6 years ago |
Jiajie Chen
|
1444fb4c42
|
Respect INTERP loader command in ELF and load the interpreter instead
|
6 years ago |
Jiajie Chen
|
08ba9261aa
|
Fix sys_mprotect with page alignment, dynamic loading seems working
|
6 years ago |
Jiajie Chen
|
d285adf277
|
Fix last commit for exit_in_qemu
|
6 years ago |
Jiajie Chen
|
b2585eb3bd
|
Fix last commit
|
6 years ago |
Jiajie Chen
|
4e0c18914f
|
Implement sys_sendfile
|
6 years ago |
WangRunji
|
638a2215b2
|
impl eager mmap file
|
6 years ago |
WangRunji
|
5ddd5ece8d
|
rename, simplify
|
6 years ago |
Jiajie Chen
|
abd93e49e3
|
Implement write_at for virtio_blk driver
|
6 years ago |
Jiajie Chen
|
c7b34a7f72
|
Use enable_irq explicitly in ixgbe driver
|
6 years ago |
WangRunji
|
cc6a069586
|
fix split absolute path
|
6 years ago |
Jiajie Chen
|
f09290442c
|
Add pkttop.sh, bump user and drivers version
|
6 years ago |
Jiajie Chen
|
6725ca10ab
|
Fix IXGBE driver with drop and update user with working userland networking
|
6 years ago |
WangRunji
|
b9a7888290
|
update fs. impl sys_sync, sys_rmdir. fix sys_unlink.
|
6 years ago |
Jiajie Chen
|
56f8f128ba
|
Fix ixgbe driver
|
6 years ago |
Jiajie Chen
|
e3b7efbc94
|
Move ixgbe to isomorphic_drivers, and format driver codes
|
6 years ago |
Jiajie Chen
|
c6be460228
|
Fix PCI driver detaching
|
6 years ago |
Jiajie Chen
|
a0d9a8b2de
|
Detach driver from the device in sys_map_pci_driver
|
6 years ago |
Jiajie Chen
|
960ef2e1f8
|
Implement PCI driver detach and merge NetDriver trait into Driver
|
6 years ago |
Jiajie Chen
|
cf3b183311
|
Use jumbo frame in ixgbe
|
6 years ago |
Jiajie Chen
|
fffc330f47
|
Fix u540 serial print and fix sys_accept
|
6 years ago |
Jiajie Chen
|
7fd9130024
|
Add missing changeset in last commit
|
6 years ago |
Jiajie Chen
|
5d601c3ea4
|
Move socket to global, move and merge functions to net/structs.rs
|
6 years ago |
WangRunji
|
f6352b2688
|
fix serial interrupt on HiFiveU
|
6 years ago |
Jiajie Chen
|
c4df7cd3af
|
Fix PCI MSI interrupt comment
|
6 years ago |
WangRunji
|
442e1f4d0f
|
merge bbl crate to kernel
|
6 years ago |
WangRunji
|
d9bb072cbd
|
update riscv crate
|
6 years ago |
Jiajie Chen
|
edbf07f914
|
Add #[deny(warnings)] to syscall dispatch. See 17e644e54e for discussion
|
6 years ago |
Jiajie Chen
|
92d40fae61
|
Fix missing change in last commit
|
6 years ago |
Jiajie Chen
|
0d2bc0a7d4
|
Implement irq allocation and use irq number to identify irq source
|
6 years ago |
Jiajie Chen
|
c423f10483
|
Name ixgbe interfaces after systemd's and show link status change event
|
6 years ago |
WangRunji
|
d0202c945e
|
test and fix something on HiFiveU
|
6 years ago |
Jiajie Chen
|
f2362d26df
|
Disable pci interrupt temporary before we are able to read pci routing table
|
6 years ago |
Jiajie Chen
|
b7f47235f8
|
Add support for PCI legacy interrupts
|
6 years ago |
equation314
|
28ce8ba81c
|
update URL to new organization
|
6 years ago |
Jiajie Chen
|
62d60d16e5
|
Fix sys_getcwd: return pointer to cwd
|
6 years ago |
Jiajie Chen
|
2ada090430
|
Use buddy_system_allocator for a drop inreplacement for linked_list_allocator
|
6 years ago |
WangRunji
|
6e7e9149ee
|
update URL to new organization
|
6 years ago |
WangRunji
|
17e644e54e
|
unimportant changes
|
6 years ago |
equation314
|
480bf0d14c
|
fix struct stat layout on non-x86 archs
|
6 years ago |
equation314
|
eca05a1685
|
add non-x86 syscall ids
|
6 years ago |
equation314
|
18626a2a19
|
Merge branch 'bootloader' into biscuit
|
6 years ago |
WangRunji
|
5a619825bc
|
fix VGA and support keyboard escape char for rust/sh
|
6 years ago |
Jiajie Chen
|
23b4c39ec7
|
Enlarge tcp send/recv buf for sys_accept() sockets
|
6 years ago |
Jiajie Chen
|
755f820c41
|
Enable interrupt throttling, use spin before wait in sys_read and fix sys_bind, sys_poll for udp
|
6 years ago |
WangRunji
|
c6c76147d6
|
impl custom syscall: sys_get_paddr
|
6 years ago |
WangRunji
|
1c5effae04
|
move hard link user asm to Rust
|
6 years ago |
Jiajie Chen
|
236c403f36
|
Enable ixgbe ip receive checksum
|
6 years ago |
WangRunji
|
a3edd38046
|
fix VGA color on x86_64
|
6 years ago |
WangRunji
|
e70cac58c8
|
refactor x86_64 VGA using console-traits crate
|
6 years ago |
WangRunji
|
0f339fcbf8
|
fix compile on riscv
|
6 years ago |
WangRunji
|
b304764fb5
|
fix VGA on x86_64
|
6 years ago |
Jiajie Chen
|
0977814d34
|
Fix ixgbe and e1000 drivers by adding IFCS bit
|
6 years ago |
Jiajie Chen
|
e7657356a2
|
Implement sys_map_pci_device call for mapping BAR into user space
|
6 years ago |
Jiajie Chen
|
8860f1e4a3
|
Implement mapping from riscv to x86_64 syscall numbering
|
6 years ago |
Jiajie Chen
|
cd23967f97
|
Fix riscv32 hartid saving
|
6 years ago |
WangRunji
|
b8460e20d8
|
fix riscv syscall ABI. fix store user tp and kernel hartid
|
6 years ago |
Jiajie Chen
|
a4c1d1231b
|
Use rust user shell instead of kernel shell and fix sys_exec
|
6 years ago |
Jiajie Chen
|
543fb971ed
|
Fix input blocked when keyboard input is fast
|
6 years ago |
Jiajie Chen
|
9dd576d6a1
|
Fix ixgbe transmitting
|
6 years ago |
Jiajie Chen
|
e1bcbe7eb2
|
Initial ixgbe driver with transitting
|
6 years ago |
Jiajie Chen
|
71808b49f5
|
Initial ixgbe driver capable of receiving frames
|
6 years ago |
Jiajie Chen
|
a6bb042bd9
|
Support zero timeout in sys_select. Improve e1000 driver speed
|
6 years ago |
Jiajie Chen
|
02a40b359b
|
Only remap device memory region lazily
|
6 years ago |
Jiajie Chen
|
af63d937d6
|
Add udp remote endpoint state
|
6 years ago |
Jiajie Chen
|
33ce72703b
|
Enlarge tcp send/recv buf, implement getsockopt for send/recv buf and add spin_and_wait
|
6 years ago |
WangRunji
|
40ac510ecd
|
fix compile on riscv & aarch64
|
6 years ago |
jiegec
|
09588d7a1f
|
Fix Sockaddr, implement sys_rusage and fix readv
|
6 years ago |
equation314
|
681c0be801
|
aarch64: fix the potential memory overlapping bug of bootloader
|
6 years ago |
Jiajie Chen
|
b7aee438db
|
Fix sys_kill and add killtest
|
6 years ago |
Jiajie Chen
|
17c08ce26c
|
Fix sys_exit/sys_exit_group deadlock
|
6 years ago |
Jiajie Chen
|
8dc7c7bd3c
|
Implement sys_reboot with isa-debug-exit and add test script using expect
|
6 years ago |
WangRunji
|
9269a9856d
|
support fast syscall
|
6 years ago |
WangRunji
|
98b3b12c96
|
continue refactoring process
|
6 years ago |
Jiajie Chen
|
8cb11b7aa8
|
Implement tid/pid/ppid separation
|
6 years ago |
Jiajie Chen
|
82457be2ec
|
Make time syscall more rustful
|
6 years ago |
Jiajie Chen
|
cb0a51d28d
|
Use union to implement sockaddr, and eliminate many warnings
|
6 years ago |
Jiajie Chen
|
d041884cc2
|
Fix sys_accept deadlock
|
6 years ago |
Jiajie Chen
|
6697861860
|
Add is_listening to TcpSocketState, support sys_poll for listen
|
6 years ago |
Jiajie Chen
|
6ed66d03d8
|
Fix sys_pipe
|
6 years ago |
Jiajie Chen
|
d0d05acfd0
|
Implement Clone for SocketWrapper
|
6 years ago |
equation314
|
f3d47f4b02
|
aarch64: move crate bcm2837 to remote
|
6 years ago |
equation314
|
68b967b48e
|
aarch64: move crate `atags` into crate `bcm2837`
|
6 years ago |
equation314
|
279f983786
|
aarch64: put the kernel in the top VA range
|
6 years ago |
WangRunji
|
84c12ae6e1
|
rename functions. ignore readonly in mmap to avoid page fault.
|
6 years ago |
WangRunji
|
ab63c933c2
|
fix sys_nanosleep
|
6 years ago |
WangRunji
|
491353acfd
|
impl sys_futex. fix clear_child_tid for thread exit
|
6 years ago |
WangRunji
|
84b2af3cdb
|
refactor sys_close_internal to SocketWrapper::drop
|
6 years ago |
Jiajie Chen
|
1645451749
|
Implement memory_set splitting for munmap, add sys_sysinfo
|
6 years ago |
WangRunji
|
dc55238989
|
fix sys_clone newtls
|
6 years ago |
WangRunji
|
d51c52902d
|
minimal impl sys_clone
|
6 years ago |
WangRunji
|
c3563192b5
|
fix SysResult::Ok(isize -> usize)
|
6 years ago |
Jiajie Chen
|
b590545375
|
Implement sys_pwrite, sys_accept4 and dummy sys_chown, sys_epoll_create1. Allow recvfrom for tcp
|
6 years ago |
WangRunji
|
fdc28724a3
|
fix sys_wait -1. update fs.
|
6 years ago |
Jiajie Chen
|
0666a5a7ee
|
Implement sys_clock_gettime
|
6 years ago |
Jiajie Chen
|
35dad6853f
|
Enable SSE and save FP registers in trapframe, implement sys_pread, sys_uname and sys_sched_getaffinity, support FIXED in mmap
|
6 years ago |
WangRunji
|
f7f740a021
|
remove TLS setup code. fix check writable memory
|
6 years ago |
Jiajie Chen
|
84e07a6d83
|
Implement sys_mprotect and move attr setting from page_fault_handler to map in Delay
|
6 years ago |
Jiajie Chen
|
8809c6ca7f
|
Improve sys_wait and replace CR with LF
|
6 years ago |
equation314
|
0e38439fb8
|
aarch64: enable MMU in bootloader
|
6 years ago |
Jiajie Chen
|
6e7dc9e349
|
Minor fixes around thread pool, writev, fs and implement gettid
|
6 years ago |
Jiajie Chen
|
2d77b89476
|
Infer phdr from elf loading address, skip the first page in sys_mmap and update user to musl-enabled biscuit programs
|
6 years ago |
Jiajie Chen
|
cca53536d1
|
Implement sys_pipe, fix sys_chdir, add dummy sys_setuid, and set an ephermal port when binding port 0
|
6 years ago |
Jiajie Chen
|
bf5e176176
|
Implement sys_shutdown
|
6 years ago |
Jiajie Chen
|
026ee459ec
|
Fix sys_poll, implement sys_getpeername and dummy sys_access
|
6 years ago |
WangRunji
|
bc6818e365
|
minor improvement of net syscalls
|
6 years ago |
Jiajie Chen
|
a1576b12ad
|
Fix dup2 socket ref count and sys_accept, close sockets on sys_exit
|
6 years ago |
Jiajie Chen
|
c5aa5922bd
|
Fix forking and sys_dup2, implement sys_getsockopt and update sys_exec
|
6 years ago |
Jiajie Chen
|
781630e06d
|
Implement sys_select and nc is working
|
6 years ago |
Jiajie Chen
|
8b9aecca1c
|
Fix a potential racing in park() and unpark(), fix sys_poll for a running telnet
|
6 years ago |
WangRunji
|
9e6483f488
|
refactor driver: make (Net)Driver Sync. may help avoid deadlock?
|
6 years ago |
WangRunji
|
1f2625e565
|
minor improvement of sys_poll
|
6 years ago |
Jiajie Chen
|
42b02453a0
|
Implement basic version of sys_poll supporting stdin and socket, fix some deadlocks and introduce some others
|
6 years ago |
Jiajie Chen
|
2683314c38
|
Allocate pages eagerly for Delay when forking. Implement sys_getsockname.
|
6 years ago |
Jiajie Chen
|
3e6860ae8a
|
Fix lookup_inode for absolute path, and implement sys_accept for tcp
|
6 years ago |