Jason Gauthier <jgauthier@xxxxxxxxxx> wrote: >All, > > >>Okay, so I emailed a little too quickly. The messages above got me >thinking. One of them is successful the other is not. >>I verified with irsend. So, this may be an issue with multiple >hdpvrs. > >I believe I've tracked this down. > >In lirc_zilog.c: > > At 1307: > ret = add_ir_device(ir); > if (ret) > goto out_free_ir; > >Looking at add_ir_device: > It returns: > > return i == MAX_IRCTL_DEVICES ? -ENOMEM : i; > >Meaning, that with a single device, it will generally return 0. >However, if there are multiple devices it will return a positive. This >causes the return check to succeeed, and the goto out_free_ir, and >basically doesn't continue. > >So, simply changing the check to if (ret<0) seems to resolve this. >Then if -ENOMEM is returned it will fail, and otherwise succeed. > >Sorry, this is not an official patch. The maintainer (Jarod?) should >be able to see what I am talking about and correct this. > >Thanks! > >Jasoin >-- >To unsubscribe from this list: send the line "unsubscribe linux-media" >in >the body of a message to majordomo@xxxxxxxxxxxxxxx >More majordomo info at http://vger.kernel.org/majordomo-info.html I think you're using a borken version. Are you using this one with all the ref counting fixes? http://git.linuxtv.org/media_tree.git?a=blob;f=drivers/staging/lirc/lirc_zilog.c;h=dd6a57c3c3a3149bac53eb36fd4ddeabed804050;hb=HEAD Regards, Andy -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html