use the driver field from parent node is wrong for certain usb node

Bug #1891005 reported by Yuan-Chen Cheng
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Checkbox Support Library
Invalid
High
Unassigned
OEM Priority Project
Confirmed
High
Yuan-Chen Cheng

Bug Description

Per investigation, in

https://git.launchpad.net/checkbox-support/tree/checkbox_support/parsers/udevadm.py#n583

it use the driver value from parent.

For node like

/devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0

if driver is missing, then it does not have driver loaded. However, above code still use the value from parent, which is wrong.

For node like

/devices/pci0000:00/0000:00:14.0/usb1/1-13/1-13:1.0/0003:046D:C534.0011

check the driver of parent is correct.

Tags: oem-priority
Revision history for this message
Yuan-Chen Cheng (ycheng-twn) wrote :

the output of udev_resource.py.

Note
1. I change the output of vid/pid into hex, check https://code.launchpad.net/~ycheng-twn/plainbox-provider-resource/+git/plainbox-provider-resource/+merge/388983
2. usb vid 27c6, pid: 533c driver is not loaded.

Revision history for this message
Yuan-Chen Cheng (ycheng-twn) wrote :

raw output of udevadm-info--export-db

Revision history for this message
Yuan-Chen Cheng (ycheng-twn) wrote :

raw output of lsblk for above test.

description: updated
description: updated
tags: added: oem-priority
Changed in oem-priority:
assignee: nobody → Yuan-Chen Cheng (ycheng-twn)
importance: Undecided → High
status: New → Confirmed
Revision history for this message
Yuan-Chen Cheng (ycheng-twn) wrote :

the usb device in above example is a finger print usb device.

Per what I know, even it works, it's drives by user space driver.

The reason I dig into this, is to have a test case to list device node
without kernel module loaded.

Revision history for this message
Sylvain Pineau (sylvain-pineau) wrote :

Then definitely using the checkbox support udev parser for that type of check is a bad idea.
I'd try to develop a test that specifically checks for a missing driver if that's the goal.
For fingerprint readers, if the driver is not loaded then the corresponding certification test should fail.

Changed in checkbox-support:
status: New → Invalid
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.