libefi: devicename.c cleanups
Remove duplicated free()+return statements, default unit to 0 and improve strtol error processing.