forked from M-Labs/artiq-zynq
runtime: disable TCP delayed ack
This commit is contained in:
parent
bfd8343876
commit
fcb38fae6c
|
@ -313,7 +313,9 @@ async fn load_kernel(buffer: &Vec<u8>, control: &Rc<RefCell<kernel::Control>>, s
|
|||
}
|
||||
}
|
||||
|
||||
async fn handle_connection(stream: &TcpStream, control: Rc<RefCell<kernel::Control>>) -> Result<()> {
|
||||
async fn handle_connection(stream: &mut TcpStream, control: Rc<RefCell<kernel::Control>>) -> Result<()> {
|
||||
stream.set_ack_delay(None);
|
||||
|
||||
if !expect(stream, b"ARTIQ coredev\n").await? {
|
||||
return Err(Error::UnexpectedPattern);
|
||||
}
|
||||
|
@ -407,7 +409,7 @@ pub fn main(timer: GlobalTimer, cfg: Config) {
|
|||
let connection = Rc::new(Semaphore::new(1, 1));
|
||||
let terminate = Rc::new(Semaphore::new(0, 1));
|
||||
loop {
|
||||
let stream = TcpStream::accept(1381, 0x10_000, 0x10_000).await.unwrap();
|
||||
let mut stream = TcpStream::accept(1381, 0x10_000, 0x10_000).await.unwrap();
|
||||
|
||||
if connection.try_wait().is_none() {
|
||||
// there is an existing connection
|
||||
|
@ -425,7 +427,7 @@ pub fn main(timer: GlobalTimer, cfg: Config) {
|
|||
task::spawn(async move {
|
||||
select_biased! {
|
||||
_ = (async {
|
||||
let _ = handle_connection(&stream, control.clone())
|
||||
let _ = handle_connection(&mut stream, control.clone())
|
||||
.await
|
||||
.map_err(|e| warn!("connection terminated: {}", e));
|
||||
if let Some(buffer) = &*idle_kernel {
|
||||
|
|
Loading…
Reference in New Issue