To support goodix fp device [27C6:639C]

Bug #1945296 reported by Andy Chi
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OEM Priority Project
Fix Released
Critical
Andy Chi
libfprint (Ubuntu)
Fix Released
Medium
Unassigned
Focal
Fix Released
Medium
Unassigned
Impish
Fix Released
Medium
Unassigned

Bug Description

https://gitlab.freedesktop.org/libfprint/libfprint/-/blob/master/libfprint/drivers/goodixmoc/goodix.c#L1505

This ID is included in upstream.

[Impact]

 * Devices have goodix [27c6:639c] fingerprint component will get
   supported.

 * This sru contains lots of fingerprint id which is not supported before, below is the comparison with impish -updates.

 * Elan:
   #impish: 0x0c4d

   Synaptics:
   #impish and focal does not have difference.

   Goodix:
   #0x609C, 0x639C, 0x63AC, 0x63BC and 0x6A94 are include in focal but not
   in impish

 * Add Synaptics fingerprint device to test in this SRU.
   VID: 06CB
   PID: 00DF

 * If user name is too short, fingerprint cannot enroll successfully
   https://gitlab.freedesktop.org/libfprint/libfprint/-/issues/428

[Test Plan]

 * Find a machine with this fingerprint device

 * set a very short user name such as "u".

 * Launch `settings` and enable `Fingerprint Login`

 * Enroll finger and then logout

 * Login system with enrolled finger

[Where problems could occur]

 * A lot of fingerprint ids is supported in this version, we didn't test
   all combination.

Andy Chi (andch)
tags: added: oem-priority originate-from-1943098 somerville
Changed in oem-priority:
assignee: nobody → Andy Chi (andch)
importance: Undecided → Critical
Revision history for this message
Steve Langasek (vorlon) wrote :

This package was uploaded to impish-proposed prior to release, but was not accepted into the release. If you intend for this to be included as an SRU in 21.10, please provide an SRU template for this update. Otherwise, this should be removed from the queue and reuploaded to jammy.

Changed in libfprint (Ubuntu):
status: New → Incomplete
Revision history for this message
Robie Basak (racb) wrote :

There's also an upload for Focal in the queue, but this bug is missing SRU information. If you intend to complete that then please let us know. Otherwise we'll reject the upload from the queue.

Revision history for this message
Andy Chi (andch) wrote :

Hello @racb,
sorry for wrong context, please help to continue SRU process. Thanks.

description: updated
Revision history for this message
Steve Langasek (vorlon) wrote :

Two SRU bugs are listed in the changelog for this upload, with test cases referencing goodix devices. That accounts for two of the patches added in this upload. A total of 15 patches have been added in this upload, including a number of patches for devices from other vendors. How do you intend to verify these other changes?

Changed in libfprint (Ubuntu Focal):
status: New → Incomplete
Changed in libfprint (Ubuntu Impish):
status: New → Incomplete
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package libfprint - 1:1.90.7+git20210222+tod1-0ubuntu4

---------------
libfprint (1:1.90.7+git20210222+tod1-0ubuntu4) jammy; urgency=medium

  * debian/patches: Add support for new elan, goodix and synaptics drivers.
    Most of the drivers only need to list new product IDs to work with new
    devices, and including other changes that new devices may require.
    (LP: #1945296, #1945298)
  * debian/patches: Fix template struct in goodix drivers (LP: #1945296)

 -- Marco Trevisan (Treviño) <email address hidden> Tue, 26 Oct 2021 21:24:40 +0200

Changed in libfprint (Ubuntu):
status: Incomplete → Fix Released
Revision history for this message
Andy Chi (andch) wrote :

Hi @vorlon,
It's hard to verify all ids in the support list, however, check from https://gitlab.freedesktop.org/libfprint/libfprint/-/issues, I think it's ok.

Hello @3v1n0,
How do you think?

Revision history for this message
Łukasz Zemczak (sil2100) wrote :

Hey Andy! So I'm less concerned about the additional devices included as part of the SRU, but more about the additional changes that are pulled in. Since there's also a lot of patches that are unrelated to the actual ID additions. My worry is that we don't have a good test case and regression analysis for those. All those additional patches (like for instance goodixmoc-Remove-internal-cancellable.patch, goodixmoc-Fix-template-struct-for-required-length-calcula.patch etc.) affect a lot of the libfprint code, and we need to know *at least* if these changes don't break any existing devices.

Could we maybe modify the test cases for the both bugs to include a requirement to test the change against at least a few other devices? Like some existing Synaptics, goodix, elan ones?

I would like to get this update into stable series as supporting new devices is important. But for so many patches I'd like us to have decent test coverage. Thanks.

Revision history for this message
Andy Chi (andch) wrote :

Hi @sil2100,
For patch goodixmoc-Fix-template-struct-for-required-length-calcula.patch, it's a bug I found when I'm verifying libfprint. Upstream bug here: https://gitlab.freedesktop.org/libfprint/libfprint/-/issues/428. So we include this patch in order to fix some user name length which may too short. Indeed, I'll find more devices to verify this SRU and update the bug description.

Revision history for this message
Andy Chi (andch) wrote (last edit ):

Compare with the version in impish, below is the difference id from both version.
Impish: 1.90.7+git20210222+tod1-0ubuntu3
Focal in queue: 1.90.2+tod1-0ubuntu1~20.04.5

Elan:
 #impish: 0x0c4d

Synaptics:
 #impish and focal does not have difference.

Goodix:
 #0x609C, 0x639C, 0x63AC, 0x63BC and 0x6A94 are include in focal but not in impish.

0x639c and 0x63bc are tested in this bug and bug #1945298. Add 1 more synaptic device to test.

VID: 06CB
PID: DF

Andy Chi (andch)
description: updated
description: updated
Andy Chi (andch)
description: updated
Revision history for this message
Łukasz Zemczak (sil2100) wrote :

Thank you for modifying the description! I think this should be now good for -proposed. Let me look at it again.

Revision history for this message
Łukasz Zemczak (sil2100) wrote : Please test proposed package

Hello Andy, or anyone else affected,

Accepted libfprint into impish-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/libfprint/1:1.90.7+git20210222+tod1-0ubuntu4~21.10.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-impish to verification-done-impish. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-impish. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in libfprint (Ubuntu Impish):
status: Incomplete → Fix Committed
tags: added: verification-needed verification-needed-impish
Revision history for this message
Łukasz Zemczak (sil2100) wrote :

Hello Andy, or anyone else affected,

Accepted libfprint into focal-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/libfprint/1:1.90.2+tod1-0ubuntu1~20.04.5 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-focal to verification-done-focal. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-focal. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in libfprint (Ubuntu Focal):
status: Incomplete → Fix Committed
tags: added: verification-needed-focal
Revision history for this message
Łukasz Zemczak (sil2100) wrote :

Be sure to test on various different fingerprint readers!

Revision history for this message
Andy Chi (andch) wrote (last edit ):

Test on machine with goodix ID [27c6:63bc]
[lsb_release]
Focal

[libfprint]
1:1.90.2+tod1-0ubuntu1~20.04.5

[steps]
* Find a machine with this fingerprint device

 * set a very short user name such as "u".

 * Launch `settings` and enable `Fingerprint Login`

 * Enroll finger and then logout

 * Login system with enrolled finger

Test passed.

Revision history for this message
Andy Chi (andch) wrote :

Test on machine with goodix ID [27c6:639c]
[lsb_release]
Focal

[libfprint]
1:1.90.2+tod1-0ubuntu1~20.04.5

[steps]
* Find a machine with this fingerprint device

* set a very short user name such as "u".

* Launch `settings` and enable `Fingerprint Login`

* Enroll finger and then logout

* Login system with enrolled finger

Test passed.

Revision history for this message
Andy Chi (andch) wrote :

Test on machine with goodix ID [27c6:63ac]
[lsb_release]
Focal

[libfprint]
1:1.90.2+tod1-0ubuntu1~20.04.5

[steps]
* Find a machine with this fingerprint device

* set a very short user name such as "u".

* Launch `settings` and enable `Fingerprint Login`

* Enroll finger and then logout

* Login system with enrolled finger

Test passed.

Revision history for this message
Andy Chi (andch) wrote :

Test on machine with goodix ID [27c6:63bc]
[lsb_release]
Impish

[libfprint]
1:1.90.7+git20210222+tod1-0ubuntu4~21.10.1

[steps]
* Find a machine with this fingerprint device

* set a very short user name such as "u".

* Launch `settings` and enable `Fingerprint Login`

* Enroll finger and then logout

* Login system with enrolled finger

Test passed.

Revision history for this message
Andy Chi (andch) wrote :

Test on machine with goodix ID [27c6:639c]
[lsb_release]
Impish

[libfprint]
1:1.90.7+git20210222+tod1-0ubuntu4~21.10.1

[steps]
* Find a machine with this fingerprint device

* set a very short user name such as "u".

* Launch `settings` and enable `Fingerprint Login`

* Enroll finger and then logout

* Login system with enrolled finger

Test passed.

Revision history for this message
Andy Chi (andch) wrote :

Test on machine with goodix ID [27c6:63ac]
[lsb_release]
Impish

[libfprint]
1:1.90.7+git20210222+tod1-0ubuntu4~21.10.1

[steps]
* Find a machine with this fingerprint device

* set a very short user name such as "u".

* Launch `settings` and enable `Fingerprint Login`

* Enroll finger and then logout

* Login system with enrolled finger

Test passed.

Revision history for this message
Andy Chi (andch) wrote :

Test on machine with Synaptics ID [06cb:00df]
[lsb_release]
Impish

[libfprint]
1:1.90.7+git20210222+tod1-0ubuntu4~21.10.1

[steps]
* Find a machine with this fingerprint device

* set a very short user name such as "u".

* Launch `settings` and enable `Fingerprint Login`

* Enroll finger and then logout

* Login system with enrolled finger

Test passed.

Revision history for this message
Andy Chi (andch) wrote :

Test on machine with Synaptics ID [06cb:00df]
[lsb_release]
Focal

[libfprint]
1:1.90.2+tod1-0ubuntu1~20.04.5

[steps]
* Find a machine with this fingerprint device

* set a very short user name such as "u".

* Launch `settings` and enable `Fingerprint Login`

* Enroll finger and then logout

* Login system with enrolled finger

Test passed.

tags: added: verification-done verification-done-focal verification-done-impish
removed: verification-needed verification-needed-focal verification-needed-impish
Revision history for this message
Łukasz Zemczak (sil2100) wrote :

Thank you! This is really good testing, I appreciate you trying this out on so many different fingerprint devices. The ageing of SRUs is important because it exposes the update to additional testing by the community, but in certain cases - and for packages that are not as widely tested (or not part of a critical bugfix), ageing is not as useful as it normally would. So after discussing the testing performed for this SRU and discussing the importance of landing this sooner than later (from the HWE POV), I will accept the updates earlier as an exception.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package libfprint - 1:1.90.7+git20210222+tod1-0ubuntu4~21.10.1

---------------
libfprint (1:1.90.7+git20210222+tod1-0ubuntu4~21.10.1) impish; urgency=medium

  * debian/patches: Add support for new elan, goodix and synaptics drivers.
    Most of the drivers only need to list new product IDs to work with new
    devices, and including other changes that new devices may require.
    (LP: #1945296, #1945298)
  * debian/patches: Fix template struct in goodix drivers (LP: #1945296)

 -- Marco Trevisan (Treviño) <email address hidden> Tue, 26 Oct 2021 21:40:36 +0200

Changed in libfprint (Ubuntu Impish):
status: Fix Committed → Fix Released
Revision history for this message
Łukasz Zemczak (sil2100) wrote : Update Released

The verification of the Stable Release Update for libfprint has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package libfprint - 1:1.90.2+tod1-0ubuntu1~20.04.5

---------------
libfprint (1:1.90.2+tod1-0ubuntu1~20.04.5) focal; urgency=medium

  * debian/patches: Add support for goodix and new elan and synaptics devices.
    Elan and synaptics drivers only need to list new product IDs to work with
    new devices, and including other changes that new devices may require.
    While adding the new goodix moc driver, that is already part of many
    stable releases now, coming with full unit test and latest supported
    devices. (LP: #1945296, #1945298)
  * debian/patches: Fix template struct in goodix drivers (LP: #1945296)

 -- Marco Trevisan (Treviño) <email address hidden> Wed, 27 Oct 2021 00:07:47 +0200

Changed in libfprint (Ubuntu Focal):
status: Fix Committed → Fix Released
Mathew Hodson (mhodson)
Changed in libfprint (Ubuntu):
importance: Undecided → Medium
Changed in libfprint (Ubuntu Focal):
importance: Undecided → Medium
Changed in libfprint (Ubuntu Impish):
importance: Undecided → Medium
Andy Chi (andch)
Changed in oem-priority:
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.