Hey Sergio,

On Tue, 2011-02-15 at 16:38 +0100, sergio cerlesi wrote:
> Hi Daniel, Bastien,
> 
> i found the bug!
> 
> On function fp_get_next_timeout  of libfprint (file poll.c) if exist
> fprint timeout or libusb timeout the function return the smaller of
> the 2 timeout.
> 
> But if one of that not exist and have a smaller value the function
> return a timeout that not exist.
> 
> The attached patch fix the bug. It possible to apply the patch to the
> library ?

Good catch. Any chance you could create a git formatted patch so that
explanations about the bug it solves, and authorship are kept?

Cheers

> 2011/2/14 sergio cerlesi <[email protected]>
>         Hi Bastien,
>         
>         at first, sorry for my bad english e if i'm not clear.
>         
>         The problem is that the driver i wrote for device Validity
>         VFS101 work with fprint_demo and pam_fprint but NOT with
>         pam_fprintd.
>         
>         I debug the driver and i find that the cause of problem is a
>         call of function fpi_timeout_add on the driver. Below i report
>         the portion of code that have the problem:
>         
>         /* Callback of asynchronous sleep */
>         static void async_sleep_cb(void *data)
>         {
>             struct fpi_ssm *ssm = data;
>         
>             fpi_ssm_next_state(ssm);
>         }
>         
>         /* Submit asynchronous sleep */
>         static void async_sleep(unsigned int msec, struct fpi_ssm
>         *ssm)
>         {
>             if (fpi_timeout_add(msec, async_sleep_cb, ssm) == NULL)
>                 fpi_ssm_mark_aborted(ssm, -ETIME);
>         }
>         
>         If i use fprint_demo or pam_fprint for test the driver the
>         callback function are correctly called after timeout and the
>         driver work.
>         If i use pam_fprintd (fprintd-0.2.0) the callback are never
>         called and the driver are blocked.
>         
>         I can't understand if it's a bug of driver or of fprintd. Can
>         you help me ?
>         
>         Bye
>         Sergio
>         
>         2011/2/14 Bastien Nocera <[email protected]>
>         
>         
>                 
>                 On Mon, 2011-02-14 at 09:25 +0100, sergio cerlesi
>                 wrote:
>                 > Hi Daniel, Bastien,
>                 >
>                 > i'm working on fprint Validity VFS101 driver. The
>                 driver work with
>                 > fprint_demo and pam_fprint but not with fprintd.
>                 >
>                 > The cause of problem is that it call the function
>                 fpi_timeout_add that
>                 > take conflict with fprintd ( the callback is never
>                 call).
>                 >
>                 > I can't use this function or is a bug of fprintd ?
>                 >
>                 > I'm not sure but i think that other drivers like
>                 uru4000 can have the
>                 > same problem.
>                 
>                 
>                 Sorry Sergio, but I don't understand what the problem
>                 is here...
>                 
>                 Cheers
>                 
>         
> 


_______________________________________________
fprint mailing list
[email protected]
http://lists.reactivated.net/mailman/listinfo/fprint

Reply via email to