谁来帮帮Linus?(一)

有时候觉得Linus其实蛮搞笑的,不仅仅是他那句名言read the fucking source code.

下面是今天早上Linus同志提出来的一个问题,他的usb设备玩着玩着系统就崩溃了...谁来帮他找出原因吧.应该是用的2.6.22的代码.可能是driver的问题,也可能是设备本身有问题.其中的设备就是我们说过的那个多合一的读卡器.

I have a flaky(?) USB multi-card reader, and I just got an oops with it on
x86-64. It was preceded by some of the IO errors:

       end_request: I/O error, dev sdc, sector 0
       sd 11:0:0:1: [sdc] Result: hostbyte=0x07 driverbyte=0x00
       end_request: I/O error, dev sdc, sector 0
       Buffer I/O error on device sdc, logical block 0
       usb 2-5: reset high speed USB device using ehci_hcd and address 10
       usb 2-5: reset high speed USB device using ehci_hcd and address 10
       usb 2-5: reset high speed USB device using ehci_hcd and address 10
       usb 2-5: reset high speed USB device using ehci_hcd and address 10
       usb 2-5: reset high speed USB device using ehci_hcd and address 10
       usb 2-5: reset high speed USB device using ehci_hcd and address 10
       usb 2-5: device descriptor read/all, error 0

but the oops itself happened when I then removed the USB device due to
the errors, causing this:

       usb 2-5: USB disconnect, address 10
       sd 11:0:0:1: [sdc] Result: hostbyte=0x07 driverbyte=0x00
       end_request: I/O error, dev sdc, sector 0
       Buffer I/O error on device sdc, logical block 0
       sd 11:0:0:1: [sdc] Result: hostbyte=0x07 driverbyte=0x00
       end_request: I/O error, dev sdc, sector 0
       Buffer I/O error on device sdc, logical block 0
       sd 11:0:0:1: [sdc] Result: hostbyte=0x01 driverbyte=0x00
       end_request: I/O error, dev sdc, sector 0
       Buffer I/O error on device sdc, logical block 0
<script type="text/javascript"> </script>        sd 11:0:0:1: [sdc] Result: hostbyte=0x01 driverbyte=0x00
       end_request: I/O error, dev sdc, sector 0
       Buffer I/O error on device sdc, logical block 0
       sd 11:0:0:1: [sdc] Result: hostbyte=0x01 driverbyte=0x00
       end_request: I/O error, dev sdc, sector 0
       Buffer I/O error on device sdc, logical block 0
       Dev sdc: unable to read RDB block 0
       sd 11:0:0:1: [sdc] Result: hostbyte=0x01 driverbyte=0x00
       end_request: I/O error, dev sdc, sector 0
       Buffer I/O error on device sdc, logical block 0
        unable to read partition table
       sd 11:0:0:1: [sdc] Attached SCSI removable disk
       sd 11:0:0:1: Attached scsi generic sg3 type 0
       usb-storage: device scan complete

and finally the oops itself:


       general protection fault: 0000 [1] SMP
       CPU 0
       Modules linked in:
       Pid: 214, comm: khubd Not tainted 2.6.22-g20082208 #56
       RIP: 0010:[<ffffffff80274670>]  [<ffffffff80274670>] kfree+0x27/0x81
       RSP: 0018:ffff81012bd0dd90  EFLAGS: 00010212
       RAX: 037d001b2d7d01b8 RBX: ffff810001000000 RCX: ffffffff80314f0f
       RDX: ffff81012337b738 RSI: 037c811b2e7d01b8 RDI: ff241b0cff251c0b
       RBP: ff241b0cff251c0b R08: ffffffff8062eed0 R09: ffff81012bc0f430
       R10: 0000000000000287 R11: ffffffff803ed953 R12: ffff81008642f140
       R13: 0000000000000000 R14: 0000000000001540 R15: 0000000000000008
<script type="text/javascript"> </script>        FS:  0000000000000000(0000) GS:ffffffff806a0000(0000) knlGS:0000000000000000
       CS:  0010 DS: 0018 ES: 0018 CR0: 000000008005003b
       CR2: 00002b02340410a0 CR3: 000000010bd4b000 CR4: 00000000000006e0
       Process khubd (pid: 214, threadinfo ffff81012bd0c000, task ffff81012bed36b0)
       Stack:  ffff81012337b738 ffff81011e9fa800 ffff81008642f140 ffffffff803f50c4
        ffff81012337b738 ffff81011e9fa800 ffffffff8064ae70 ffff81011e9fa888
        ffff81012ad60978 ffff81012ad60800 ffff81012ad60800 ffffffff803ed96c
       Call Trace:
        [<ffffffff803f50c4>] usb_destroy_configuration+0x85/0xee
        [<ffffffff803ed96c>] usb_release_dev+0x19/0x55
        [<ffffffff803140c9>] kobject_cleanup+0x52/0x70
        [<ffffffff803140e7>] kobject_release+0x0/0x9
        [<ffffffff80314f0f>] kref_put+0x5d/0x68
        [<ffffffff803ef78f>] hub_thread+0x390/0xb27
        [<ffffffff8023dcb1>] autoremove_wake_function+0x0/0x2e
        [<ffffffff803ef3ff>] hub_thread+0x0/0xb27
        [<ffffffff8023db95>] kthread+0x47/0x76
        [<ffffffff8020c0f8>] child_rip+0xa/0x12
        [<ffffffff8023db4e>] kthread+0x0/0x76
        [<ffffffff8020c0ee>] child_rip+0x0/0x12

       Code: 48 8b 06 25 00 40 02 00 48 3d 00 40 02 00 75 04 48 8b 76 10
       RIP  [<ffffffff80274670>] kfree+0x27/0x81
        RSP <ffff81012bd0dd90>
<script type="text/javascript"> </script>
Looks like another reference counting bug...

               Linus

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 您可以使用PBIS(PowerBroker Identity Services)来管理Linux账户。首先,您需要安装PBIS并将其配置为与您的LDAP或Active Directory域进行集成。然后,您可以使用PBIS提供的命令行工具来管理Linux账户,例如pbis命令可以用于添加、删除和修改用户账户。您还可以使用PBIS提供的Web界面来管理账户。 ### 回答2: PBIS(Positive Behavioral Interventions and Supports)是一种学校管理和行为支持系统,它可以帮助学校提供全员参与、积极的行为管理和支持。要使用PBIS管理LINUS账户,可以按照以下步骤进行操作: 1. 设定预期行为:首先,学校需要明确和设定好LINUS账户的使用规范和预期行为。这包括使用账户的目的、注意事项、安全保障措施等方面的规定。同时,还可以与学生、家长和教职员工进行有效的沟通,让大家了解并接受这些预期行为。 2. 提供培训和教育:为了确保学生和教职员工掌握LINUS账户的使用方法和技能,学校可以提供相关的培训和教育。这包括针对学生的基本操作培训,以及教职员工的教学资源和技术支持培训。培训可以通过线上或线下的方式进行,以确保每个人都能够正确地使用LINUS账户。 3. 设立激励机制:PBIS强调通过激励鼓励积极的行为。学校可以根据LINUS账户的使用情况设立激励机制,如奖励系统。例如,学生可以通过积累使用时间或完成特定任务获得奖励,以激发他们对LINUS账户的兴趣和积极性。 4. 提供支持和反馈:学校应该充分支持学生和教职员工在LINUS账户的使用过程中遇到的问题。可以建立一个专门的支持渠道,例如提供专人指导、设置帮助中心或在线论坛等。同时,及时收集和反馈账户使用情况和问题,以便不断改进和调整管理策略。 5. 定期评估和更新:PBIS是一个持续改进的过程,学校应该定期评估和更新LINUS账户的管理策略。可以进行用户满意度调查、数据分析和实地观察等方式,以了解账户使用的效果和存在的改进空间,并根据评估结果进行相应的更新和调整。 通过以上步骤,学校可以有效地使用PBIS管理LINUS账户,提升学生和教职员工对账户的积极参与和有效利用程度。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值