Ticket #288 (defect)

Opened 3 months ago

Last modified 3 months ago

fusb_linux::_reap fails to distinguish between a non-recoverable error and "I didn't reap anything"

Status: assigned

Reported by: eb Assigned to: eb (accepted)
Priority: normal Milestone: to-be-decided
Component: usrp Version: 3.1svn
Keywords: Cc:
From: Eric Blossom <eb@comsec.com>
To: Tom Rondeau <trondeau@vt.edu>
Cc: 
Bcc: 
Subject: Re: usb disconnect issue
Reply-To: 
In-Reply-To: <48C05D0A.1050707@vt.edu>

On Thu, Sep 04, 2008 at 06:11:22PM -0400, Tom Rondeau wrote:
> Eric,
>
> In usrp_basic.cc, usrp_basic_rx::stop(), there's a problem when the USRP 
> has been disconnected (power off or USB cable gets unplugged) where the 
> d_ephandle->stop() function never returns and keeps spitting "fusb::_reap" 
> to the console. You can't ^C out of it, either.
>
> To fix it, after the set_rx_enable(false) is called, it returns an error 
> and sets ok to false. I just use this to assume the system's lost contact 
> with the USRP, so I test it and don't called the d_ephandle->stop() 
> function if ok==false.
>
> This works, but I'm not sure it's the best way to go. Do you have any 
> thoughts, or is there maybe a better function to test?
>
> Thanks,
> Tom

I think it ought to be fixed in fusb_linux.  It's failing to
distinguish between a non-recoverable error and "I didn't reap
anything".

I'll come up with a patch.

Eric

Change History

09/09/08 09:19:39: Modified by eb

  • status changed from new to assigned.

Trial fix in [9545].