暂停失败,我知道导致此问题的模块。我该怎么办?

暂停失败,我知道导致此问题的模块。我该怎么办?

由于我在 PC 上安装了 USB 3 扩展卡,因此我的挂起功能无法正常使用。计算机没有进入 S3 模式,而是立即唤醒。dmesg 给出提示“usb_dev_suspend+0x0/0x20 返回 -2”,因此我 rmmod 了“xhci_hcd”模块,成功了。

有没有什么好办法可以解决这个问题?遗憾的是,内核主线 PPA 的构建没有帮助,而且将模块列入黑名单不是我最喜欢的选项。我在哪里可以最好地报告此问题?

答案1

这是一个已知的错误:https://bugs.launchpad.net/ubuntu/+source/linux/+bug/522998

从那里:

如果SUSPEND_MODULES="xhci"添加到/etc/pm/config.d/unload_module则系统可以正常挂起。

那里的评论也指向该主题的第 7 号帖子:http://ubuntuforums.org/showthread.php?t=1444822

类似的东西,很多人都说它有效。希望它有效。

答案2

除了什么奥利在该帖子中说,如果您有内置媒体读卡器或者在暂停请求时安装了 USB(闪存或旋转)存储,则会出现已知问题。

添加脚本 /etc/pm/sleep.d/00_fixMounted.sh,并使其由 root 拥有并可执行。此脚本应执行卸载在任何已安装的媒体卡和 USB 存储上。在 Ubuntu 上,它们默认安装在 /mnt/media/*。

卸载后,我在删除模块“usb_storage”方面取得了相当大的进展。

USB 连接设备(如相机等)还存在其他已知问题。上述方法可以处理这些设备的任何存储组件,但您需要以某种方式单独停用其他部分。

祝你好运,~~~0;-丹

答案3

Maco 对此问题的回答,其中概述了如何在暂停时将模块列入黑名单(实际上是删除),然后在恢复时重新加载它。

作为后续,您可以看到我对 /etc/default/acpi-support 文件的具体编辑在这个答案中

不过,这些内容并不能保证万无一失。您可能需要进行一些实验才能使其全部正常工作。在某些情况下(Sony Viao WLAN 卡),无论我如何编辑此文件,我都无法使硬件在挂起后恢复。

祝你好运。

答案4

如今,你会把脚本放进去,/lib/systemd/system-sleep/而不是/etc/pm/sleep.d。我使用这个脚本

#!/bin/sh
case $1/$2 in
  pre/*)
    echo "Removing 'xhci' for $2..."
    modprobe -r xhci
    ;;
  post/* )
    echo "Waking up from $2 , adding 'xhci' ..."
    modprobe xhci
    ;;
esac

进而

chmod +x

你的脚本

相关内容