Added a sanity check and more clean-ups.

This commit is contained in:
OBattler
2022-02-20 14:19:38 +01:00
parent 01e0609ab6
commit c19b06d404
4 changed files with 2 additions and 52 deletions

View File

@@ -105,8 +105,6 @@ extern netdev_t network_devs[32];
/* Function prototypes. */
extern void network_wait(uint8_t wait);
extern void network_busy(uint8_t set);
extern void network_end(void);
extern void network_init(void);
extern void network_attach(void *, uint8_t *, NETRXCB, NETWAITCB, NETSETLINKSTATE);

View File

@@ -338,8 +338,6 @@ net_pcap_close(void)
/* Tell the thread to terminate. */
if (poll_tid != NULL) {
network_busy(0);
/* Wait for the thread to finish. */
pcap_log("PCAP: waiting for thread to end...\n");
thread_wait_event(poll_state, -1);

View File

@@ -446,8 +446,6 @@ net_slirp_close(void)
/* Tell the thread to terminate. */
if (slirp->poll_tid) {
network_busy(0);
/* Wait for the thread to finish. */
slirp_log("SLiRP: waiting for thread to end...\n");
thread_wait_event(slirp->poll_state, -1);

View File

@@ -124,16 +124,6 @@ static netpkt_t *first_pkt[3] = { NULL, NULL, NULL },
*last_pkt[3] = { NULL, NULL, NULL };
static struct {
volatile int busy,
queue_in_use;
event_t *wake_poll_thread,
*poll_complete,
*queue_not_in_use;
} poll_data;
#ifdef ENABLE_NETWORK_LOG
int network_do_log = ENABLE_NETWORK_LOG;
static FILE *network_dump = NULL;
@@ -201,23 +191,6 @@ network_wait(uint8_t wait)
}
void
network_busy(uint8_t set)
{
poll_data.busy = !!set;
if (! set)
thread_set_event(poll_data.wake_poll_thread);
}
void
network_end(void)
{
thread_set_event(poll_data.poll_complete);
}
/*
* Initialize the configured network cards.
*
@@ -362,7 +335,8 @@ network_rx_queue(void *priv)
/* Transmission. */
network_queue_get(2, &pkt);
network_queue_put(1, pkt->priv, pkt->data, pkt->len);
if (pkt != NULL)
network_queue_put(1, pkt->priv, pkt->data, pkt->len);
// network_busy(0);
@@ -391,10 +365,6 @@ network_attach(void *dev, uint8_t *mac, NETRXCB rx, NETWAITCB wait, NETSETLINKST
network_set_wait(0);
/* Create the network events. */
poll_data.poll_complete = thread_create_event();
poll_data.wake_poll_thread = thread_create_event();
/* Activate the platform module. */
switch(network_type) {
case NET_TYPE_PCAP:
@@ -443,16 +413,6 @@ network_close(void)
/* Force-close the SLIRP module. */
net_slirp_close();
/* Close the network events. */
if (poll_data.wake_poll_thread != NULL) {
thread_destroy_event(poll_data.wake_poll_thread);
poll_data.wake_poll_thread = NULL;
}
if (poll_data.poll_complete != NULL) {
thread_destroy_event(poll_data.poll_complete);
poll_data.poll_complete = NULL;
}
/* Close the network thread mutex. */
thread_close_mutex(network_mutex);
network_mutex = NULL;
@@ -541,15 +501,11 @@ network_reset(void)
void
network_tx(uint8_t *bufp, int len)
{
network_busy(1);
ui_sb_update_icon(SB_NETWORK, 1);
network_queue_put(2, NULL, bufp, len);
ui_sb_update_icon(SB_NETWORK, 0);
network_busy(0);
}