Project

General

Profile

Actions

Bug #721

closed

Missing resolv.conf causes MT_NET SET_IPV4 to hang

Added by Hammel over 4 years ago. Updated over 4 years ago.

Status:
Closed
Priority:
Immediate
Assignee:
Start date:
20 Oct 2019
Due date:
% Done:

100%

Estimated time:
Severity:
01 - Critical

Description

If /etc/resolv.conf then a valid MT_NET/SET_IPV4 can hang piboxd preventing any further requests to come in. libpnc needs to test for /etc/resolv.conf and create it if it doesn't exist.


Related issues

Blocks PiBox - Bug #712: Fix thread management in all appsClosedHammel26 Jun 2019

Actions
Actions #1

Updated by Hammel over 4 years ago

  • Status changed from New to In Progress
  • % Done changed from 0 to 30

This problem is not related to procesisng resolv.conf via libpnc. The error message that raised this issue was appropriate and correct. The real problem is that piboxd's updates for thread management in queueProcessor.c are wrong. I should be using a semaphore instead of mutex so I can have the queueProcessor handle each message that the msgProcessor queues without possibly missing any.

Actions #2

Updated by Hammel over 4 years ago

  • Status changed from In Progress to Closed
  • % Done changed from 30 to 100

Switched both piboxd and appmgr to use semaphores instead of pthread condition variables for inbound network messages. That way each message that comes in can be accounted for and none will be lost due to race conditions seen while using pthread condition variables.

Verified working on hardware (both Ironman and Media System). Committed and pushed.

Closing issue.

Actions

Also available in: Atom PDF