Inline start_thread into its callers.
This commit is contained in:
parent
64e5327b6e
commit
753bc7ddf8
@ -4,8 +4,8 @@ use crate::io;
|
||||
use crate::mem;
|
||||
use crate::ptr;
|
||||
use crate::sys::cloudabi::abi;
|
||||
use crate::sys::stack_overflow;
|
||||
use crate::sys::time::checked_dur2intervals;
|
||||
use crate::sys_common::thread::*;
|
||||
use crate::time::Duration;
|
||||
|
||||
pub const DEFAULT_MIN_STACK_SIZE: usize = 2 * 1024 * 1024;
|
||||
@ -49,7 +49,11 @@ impl Thread {
|
||||
|
||||
extern "C" fn thread_start(main: *mut libc::c_void) -> *mut libc::c_void {
|
||||
unsafe {
|
||||
start_thread(main as *mut u8);
|
||||
// Next, set up our stack overflow handler which may get triggered if we run
|
||||
// out of stack.
|
||||
let _handler = stack_overflow::Handler::new();
|
||||
// Finally, let's run some code.
|
||||
Box::from_raw(main as *mut Box<dyn FnOnce()>)();
|
||||
}
|
||||
ptr::null_mut()
|
||||
}
|
||||
|
@ -5,11 +5,10 @@ use crate::fmt;
|
||||
use crate::io;
|
||||
use crate::mem;
|
||||
use crate::sys::hermit::abi;
|
||||
use crate::sys::stack_overflow;
|
||||
use crate::time::Duration;
|
||||
use core::u32;
|
||||
|
||||
use crate::sys_common::thread::*;
|
||||
|
||||
pub type Tid = abi::Tid;
|
||||
|
||||
/// Priority of a task
|
||||
@ -70,7 +69,11 @@ impl Thread {
|
||||
|
||||
extern "C" fn thread_start(main: usize) {
|
||||
unsafe {
|
||||
start_thread(main as *mut u8);
|
||||
// Next, set up our stack overflow handler which may get triggered if we run
|
||||
// out of stack.
|
||||
let _handler = stack_overflow::Handler::new();
|
||||
// Finally, let's run some code.
|
||||
Box::from_raw(main as *mut Box<dyn FnOnce()>)();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -3,11 +3,9 @@ use crate::ffi::CStr;
|
||||
use crate::io;
|
||||
use crate::mem;
|
||||
use crate::ptr;
|
||||
use crate::sys::os;
|
||||
use crate::sys::{os, stack_overflow};
|
||||
use crate::time::Duration;
|
||||
|
||||
use crate::sys_common::thread::*;
|
||||
|
||||
#[cfg(not(target_os = "l4re"))]
|
||||
pub const DEFAULT_MIN_STACK_SIZE: usize = 2 * 1024 * 1024;
|
||||
#[cfg(target_os = "l4re")]
|
||||
@ -84,7 +82,11 @@ impl Thread {
|
||||
|
||||
extern "C" fn thread_start(main: *mut libc::c_void) -> *mut libc::c_void {
|
||||
unsafe {
|
||||
start_thread(main as *mut u8);
|
||||
// Next, set up our stack overflow handler which may get triggered if we run
|
||||
// out of stack.
|
||||
let _handler = stack_overflow::Handler::new();
|
||||
// Finally, let's run some code.
|
||||
Box::from_raw(main as *mut Box<dyn FnOnce()>)();
|
||||
}
|
||||
ptr::null_mut()
|
||||
}
|
||||
|
@ -3,11 +3,9 @@ use crate::ffi::CStr;
|
||||
use crate::io;
|
||||
use crate::mem;
|
||||
use crate::ptr;
|
||||
use crate::sys::os;
|
||||
use crate::sys::{os, stack_overflow};
|
||||
use crate::time::Duration;
|
||||
|
||||
use crate::sys_common::thread::*;
|
||||
|
||||
pub const DEFAULT_MIN_STACK_SIZE: usize = 0x40000; // 256K
|
||||
|
||||
pub struct Thread {
|
||||
@ -72,7 +70,11 @@ impl Thread {
|
||||
|
||||
extern "C" fn thread_start(main: *mut libc::c_void) -> *mut libc::c_void {
|
||||
unsafe {
|
||||
start_thread(main as *mut u8);
|
||||
// Next, set up our stack overflow handler which may get triggered if we run
|
||||
// out of stack.
|
||||
let _handler = stack_overflow::Handler::new();
|
||||
// Finally, let's run some code.
|
||||
Box::from_raw(main as *mut Box<dyn FnOnce()>)();
|
||||
}
|
||||
ptr::null_mut()
|
||||
}
|
||||
|
@ -4,7 +4,7 @@ use crate::mem;
|
||||
use crate::ptr;
|
||||
use crate::sys::c;
|
||||
use crate::sys::handle::Handle;
|
||||
use crate::sys_common::thread::*;
|
||||
use crate::sys::stack_overflow;
|
||||
use crate::time::Duration;
|
||||
|
||||
use libc::c_void;
|
||||
@ -50,7 +50,11 @@ impl Thread {
|
||||
|
||||
extern "system" fn thread_start(main: *mut c_void) -> c::DWORD {
|
||||
unsafe {
|
||||
start_thread(main as *mut u8);
|
||||
// Next, set up our stack overflow handler which may get triggered if we run
|
||||
// out of stack.
|
||||
let _handler = stack_overflow::Handler::new();
|
||||
// Finally, let's run some code.
|
||||
Box::from_raw(main as *mut Box<dyn FnOnce()>)();
|
||||
}
|
||||
0
|
||||
}
|
||||
|
@ -1,18 +1,7 @@
|
||||
use crate::env;
|
||||
use crate::sync::atomic::{self, Ordering};
|
||||
use crate::sys::stack_overflow;
|
||||
use crate::sys::thread as imp;
|
||||
|
||||
#[allow(dead_code)]
|
||||
pub unsafe fn start_thread(main: *mut u8) {
|
||||
// Next, set up our stack overflow handler which may get triggered if we run
|
||||
// out of stack.
|
||||
let _handler = stack_overflow::Handler::new();
|
||||
|
||||
// Finally, let's run some code.
|
||||
Box::from_raw(main as *mut Box<dyn FnOnce()>)()
|
||||
}
|
||||
|
||||
pub fn min_stack() -> usize {
|
||||
static MIN: atomic::AtomicUsize = atomic::AtomicUsize::new(0);
|
||||
match MIN.load(Ordering::SeqCst) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user