Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
7db0707
feat(tty): add PosixTermio struct with kernel Termios conversions
Jul 17, 2026
a486f3e
feat(tty): add drain_output to TtyLineDiscipline trait and NTty
Jul 17, 2026
ed4f9cd
feat(tty): implement TERMIOS_TERMIO branch in core_set_termios
Jul 17, 2026
67953d4
feat(tty): wire TCGETA/TCSETA/TCSETAW/TCSETAF in tty_mode_ioctl
Jul 17, 2026
5bb4362
feat(tty): implement TERMIOS_WAIT drain in core_set_termios
Jul 17, 2026
1391f91
test(tty): add test_tty_termios for TCSAFLUSH/TCSADRAIN/termio ioctls
Jul 17, 2026
1a44519
fix(tty): replace from_line todo!() with NTty fallback
Jul 17, 2026
ce0ffaa
fix(test): relax non-TTY errno check to accept ENOSYS
Jul 17, 2026
2a0eb4d
test(tty): add tty_termios dunitest for TCSAFLUSH/TCSADRAIN/termio
Jul 17, 2026
4a2e31f
fix(tty): add explicit _pad field to PosixTermio to prevent kernel st…
Jul 17, 2026
0fcf2d1
fix(tty): retry drain_output + event-driven hardware FIFO wait
Jul 17, 2026
fc459fd
fix(tty): add job-control check to core_set_termios
Jul 17, 2026
b1cbd61
fix(tty): preserve c_line ABI byte across termios/termio round-trips
Jul 17, 2026
703783e
refactor(tty): deduplicate CIBAUD speed logic, unify signatures
Jul 17, 2026
2a69de6
fix(tty): improve TERMIOS_WAIT robustness and add debug logs
Jul 17, 2026
222a93e
test(tty): remove meaningless errno != ENOTTY checks after successful…
Jul 17, 2026
39f9060
test(tty): document test duplication rationale and drain coverage gap
Jul 17, 2026
310c2bd
fix(tty): restore B3500000/B4000000 to baud_rate() and tidy constants
Jul 17, 2026
1e4e539
fmt
Jul 18, 2026
c3eb3f4
fix(tty): squash — comprehensive termios/termio ioctl fixes
Jul 18, 2026
45f5f3c
fix(tty): address code review findings for termios ioctl PR
Jul 18, 2026
96e37fb
fix(tty): address 2nd-round review findings for termios ioctl PR
Jul 18, 2026
2bc4d8e
fix(tty): enforce termios drain and synchronization semantics
fslongjin Jul 22, 2026
bee7c92
fix(tty): flush PTY backlog after peer teardown
fslongjin Jul 22, 2026
5f4fbd6
fix(tty): apply serial8250 termios settings
fslongjin Jul 22, 2026
983a83d
fix(serial): bound tty close drain time
fslongjin Jul 22, 2026
2262cc7
fix(vfs): return ENOTTY for unsupported ioctls
fslongjin Jul 22, 2026
0f9754e
fix(pty): account queued bytes during drain
fslongjin Jul 23, 2026
9ffb187
fix(pty): preserve drain and poll semantics
fslongjin Jul 23, 2026
23dde82
fix(tty): align PTY drain and hangup semantics
fslongjin Jul 23, 2026
ce5d1ab
fix(tty): preserve per-file hangup semantics
fslongjin Jul 23, 2026
a887b32
fix(tty): close hangup and serial races
fslongjin Jul 23, 2026
9851f9a
fix(serial): bound emergency transmit wait
fslongjin Jul 23, 2026
2048b8d
fix(serial): close console concurrency gaps
fslongjin Jul 23, 2026
e81a60c
fix(vfs): make fasync updates transactional
fslongjin Jul 23, 2026
549c623
fix(tty): close fasync and serial IRQ lifecycle gaps
fslongjin Jul 23, 2026
be61c82
fix(serial): notify epoll after output flush
fslongjin Jul 23, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion kernel/src/driver/serial/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,10 @@ use crate::mm::VirtAddr;
use self::serial8250::serial8250_manager;

use super::tty::{
termios::{ControlMode, InputMode, LocalMode, OutputMode, Termios, INIT_CONTORL_CHARACTERS},
termios::{
ControlMode, InputMode, LocalMode, OutputMode, Termios, INIT_CONTORL_CHARACTERS,
INIT_C_LINE_ABI,
},
tty_ldisc::LineDisciplineType,
};

Expand Down Expand Up @@ -67,6 +70,7 @@ lazy_static! {
| LocalMode::IEXTEN,
control_characters: INIT_CONTORL_CHARACTERS,
line: LineDisciplineType::NTty,
c_line_abi: INIT_C_LINE_ABI,
input_speed: SERIAL_BAUDRATE.data(),
output_speed: SERIAL_BAUDRATE.data(),
}
Expand Down
Loading
Loading