Help with Digi Neo driver on Suse 10 SP1

Hello all,

Without getting into a ton of details we are using a Digi Neo on a Suse 10 SP1 box.

The driver builds and installs fine. With an application running and using the serial port everything moves along smoothly for a while (8+hours).

Eventually the application finds itself in an infinite loop. GDB reveals this to be a loop of attempted ::write 's to the digi fd. The return from the write is less-than 0.

By adding debug to the driver I’ve tracked the problem down to the following section:
In dgnc_tty.c, around line 2500, dgnc_tty_write(),

There is a if-check for if (!un || un->magic != DGNC_UNIT_MAGIC). This is failing and further investigation shows that un->magic is not = to DGNC_UNIT_MAGIC.

When this breaks the values are (hex):
un->magic: 730103
DGNC_UNIT_MAGIC:7C6DF104

Looking through the driver I see only 2 places where un->magic gets set, and it appears to get set to DGNC_UNIT_MAGIC in both places. Am I missing something or am I going to have to run qemu on the box and valgrind the driver to find out where this un->magic is getting changed.

Any help would be GREATLY appreciated.

Thanks all! :slight_smile:

What driver version did you install? Is it 1.3-15?