Linux USB
 help / color / mirror / Atom feed
From: EricLin <ericlin050914@gmail.com>
To: michal.pecio@gmail.com
Cc: ericlin050914@gmail.com, gregkh@linuxfoundation.org,
	linux-usb@vger.kernel.org, mathias.nyman@intel.com,
	mathias.nyman@linux.intel.com
Subject: Re: [BUG] Usb fingerprint sensor constantly resetting on MSI Prestige 16 Flip AI+ C3MTG
Date: Thu, 17 Sep 2026 22:18:06 +0800	[thread overview]
Message-ID: <20260917141806.8785-1-ericlin050914@gmail.com> (raw)
In-Reply-To: <20260917154931.6ac69cfb.michal.pecio@gmail.com>

> The reset was requested by some "fprintd" process with PID 3544.

> At any rate, it's userspace doing this for whatever random reason.
> Your xhci-hcd dynamic dedug trace doesn't even hint at any USB layer
> problems like bad packets, device stalling endpoints, etc.

> If you want to konw why it happens, you need to dig in userspace.

Here are the outputs of tracing the fprintd daemon (Scanned twice)

# strace -eioctl /usr/lib/fprintd
ioctl(11, USBDEVFS_GET_CAPABILITIES, 0x599e9df8cbbc) = 0
ioctl(11, USBDEVFS_RESET, 0)            = 0
ioctl(11, USBDEVFS_CLAIMINTERFACE, 0x7ffcd0ddc2a4) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9dfa9db0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df99470) = 0
ioctl(11, USBDEVFS_GET_CAPABILITIES, 0x599e9df99b2c) = 0
ioctl(11, USBDEVFS_RESET, 0)            = 0
ioctl(11, USBDEVFS_CLAIMINTERFACE, 0x7ffcd0ddc334) = 0        # initialized
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df91c60) = 0        # First time
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df83560) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7860b8002d20) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df8bfd0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df782c0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df91c60) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df83560) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7860b8002d20) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df8bfd0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df782c0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df91c60) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df83560) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7860b8002d20) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df8bfd0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df782c0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df835e0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7860b8004c60) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df843b0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7860b8005bc0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7860b80054e0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df843f0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df835e0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7860b8004c60) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df84670) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df846b0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df8ef10) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df835e0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7860b8005bc0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7860b8004c60) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df84670) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df84cd0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df84d10) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7860b8005bc0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df843f0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df835a0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df84670) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df84d50) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7860b8005bc0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df84d10) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df843f0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df84d10) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df8f040) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df91c60) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df85700) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7860b8005bc0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df782c0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df835e0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9dfa9db0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7860b8006680) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df8e330) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df85700) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df782c0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9dfa9db0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df835e0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df818f0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df799c0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df8b710) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df782c0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7860b8006680) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df835e0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9dfa9db0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df85700) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df782c0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df835e0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df782c0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9dfa9db0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df85700) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x599e9df87850) = 0
ioctl(11, USBDEVFS_RELEASEINTERFACE, 0x7ffcd0ddc774) = 0
ioctl(11, USBDEVFS_GET_CAPABILITIES, 0x7944d80056ec) = 0        # Second time
ioctl(11, USBDEVFS_RESET, 0)            = 0
ioctl(11, USBDEVFS_CLAIMINTERFACE, 0x7ffd07cecc44) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7944d8005470) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7944d80069f0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x5fcf144b9350) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7944d8003240) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x5fcf1449c2e0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7944d8005470) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7944d80069f0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x5fcf144b9350) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7944d8003240) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x5fcf1449c2e0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7944d8005470) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7944d80069f0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x5fcf144b9350) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7944d8003240) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x5fcf1449c2e0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7944d80069f0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7944d8005470) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x5fcf144b9950) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x5fcf144a1c10) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x5fcf144aabc0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x5fcf144a1a10) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7944d80069f0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x5fcf144b9950) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7944d8005470) = 0
ioctl(11, USBDEVFS_DISCARDURB, 0x7944d8005470) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7944d8002970) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x5fcf1449c2e0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7944dc000f80) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7944d80069f0) = 0
ioctl(11, USBDEVFS_SUBMITURB, 0x7944d8005470) = 0
ioctl(11, USBDEVFS_RELEASEINTERFACE, 0x7ffd07ceccb4) = 0

So does it mean it's expected?

Best Regards,
Eric

      reply	other threads:[~2026-09-17 14:18 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-10 14:47 [BUG] Usb fingerprint sensor constantly resetting on MSI Prestige 16 Flip AI+ C3MTG Eric Lin
2026-09-11  9:53 ` Mathias Nyman
2026-09-11 12:11   ` EricLin
2026-09-11 13:39     ` Mathias Nyman
2026-09-11 14:48       ` EricLin
2026-09-11 20:21         ` Michal Pecio
2026-09-16 13:17           ` EricLin
2026-09-16 17:47             ` Michal Pecio
2026-09-17 12:29               ` EricLin
2026-09-17 13:49                 ` Michal Pecio
2026-09-17 14:18                   ` EricLin [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260917141806.8785-1-ericlin050914@gmail.com \
    --to=ericlin050914@gmail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=mathias.nyman@intel.com \
    --cc=mathias.nyman@linux.intel.com \
    --cc=michal.pecio@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox