On Mon, 2005-09-12 at 20:14 +0200, Michal Semler wrote: > > > --- /usr/src/linux/drivers/media/dvb/pluto2/pluto2.c 2005-09-11 > > > 14:09:19.000000000 +0200 > > > +++ /usr/src/linux/drivers/media/dvb/pluto2/pluto2.c 2005-09-11 > > > 14:10:17.000000000 +0200 > > > @@ -291,8 +291,8 @@ > > > i += 188; > > > valid = i / 188; > > > if (nbpackets != valid) { > > > - dev_err(&pluto->pdev->dev, "nbpackets=%u > > > valid=%u\n", - nbpackets, valid); > > > + /* dev_err(&pluto->pdev->dev, "nbpackets=%u > > > valid=%u\n", + nbpackets, valid); > > > */ > > > nbpackets = valid; > > > } > > > } > > > > > > Thanks for applying! > > > > Maybe Andreas can comment on this, but commenting out error messages > > doesn't make the error go away. > > Can you post some of these messages so we can see the nbpackets and > > valid numbers? > > yup, but before this code, there is a FIXME...so there is no clue There is no "FIXME" in this part of the code. > and this > problem causes laptop constantly writing to hdd (about 30 MB/evening) > At this time I prefer remove it or just make it available only in DEBUG mode. Actually I don't care that much, so I will remove it to save your disk space. ;) > I don't have card here now, but error I getts is something like > nbpackets=-1 valid=0 nbpackets is an unsigned variable. I think it was always nbpackets=0 valid=1, because the FPGA doesn't recognize that it transfered a single packet. > > > There is another bug when card is removed, driver says card hung many > > > times. This part of code is responsible for it: > > > > > > if (tscr == 0xffffffff) { > > > // FIXME: maybe recover somehow > > > dev_err(&pluto->pdev->dev, "card hung up :(\n"); > > > return IRQ_HANDLED; > > > > > > There should be probably > > > if (tscr == 0xffffffff) && !pcmcia_card_removed > > > to fix this. > > > > > > Do anybody know exact name of this funtion in pcmcia code? > > > > You mean you get this message once everytime you remove the card > > while it is still active? > > Yes, when removing card from slot doesn't metter if I watch TV or not (card is > only present in system). In that case I think there needs to be this check if > card is removed from slot or not, because this error makes sense only when > card is used and is in the pcmcia slot present. Removing the card causes pluto2_remove to be called. Maybe you can avoid the bogus irqs by calling free_irq earlier in this function. Regards, Andreas