All of lore.kernel.org
 help / color / mirror / Atom feed
From: James Hansen <linux-kernel-list@f0rmula.com>
To: Arjan van de Ven <arjan@infradead.org>
Cc: linux-kernel@vger.kernel.org
Subject: Re: Trouble unloading a module..
Date: Wed, 02 Nov 2005 12:13:12 +0000	[thread overview]
Message-ID: <4368AD58.6050809@f0rmula.com> (raw)
In-Reply-To: <1130919119.2826.5.camel@laptopd505.fenrus.org>

Arjan van de Ven wrote:

>>Being relatively inexperienced at kernel programming, does this point to 
>>anything that might be obvious to any of you, yet not to me? :)   Or are 
>>there any common stumbling blocks in terms of unloading modules on 64bit 
>>linux.
>>    
>>
>
>you
>1) didn't give the oops here
>  
>
Sorry, it looks to be failing within chrdev_open.  Could this be caused 
by not correctly unloading the driver?  Here's the oops:

Nov  1 11:39:06 localhost -- MARK --
Nov  1 11:59:06 localhost -- MARK --
Nov  1 12:09:01 localhost kernel:  <1>Unable to handle kernel paging 
request at ffffffffa0261b80 RIP:
Nov  1 12:09:01 localhost kernel: PML4 103027 PGD 105027 PMD 3e765067 PTE 0
Nov  1 12:09:01 localhost kernel: CPU 0
Nov  1 12:09:01 localhost kernel: Modules linked in: ipv6 hw_random 
shpchp pciehp pci_hotplug c4 b1 kernelcapi psmouse ext3 jbd raid5 xor 
raid1 raid0 md e1000 ds yenta_socket pcmcia_core sd_mod ide_cd cdrom 
ide_disk ide_generic pdc202xx_new aec62xx alim15x3 amd74xx atiixp cmd64x 
cs5520 cs5530 cy82c693 generic hpt34x ns87415 opti621 pdc202xx_old 
rz1000 sc1200 serverworks siimage sis5513 slc90e66 triflex trm290 
via82cxxx floppy usb_storage piix ide_core fbcon vga16fb vgastate 
usbserial usbkbd ehci_hcd uhci_hcd thermal processor fan ata_piix libata 
scsi_mod unix font vesafb cfbcopyarea cfbimgblt cfbfillrect
Nov  1 12:09:01 localhost kernel: Pid: 5612, comm: hardserver Not 
tainted 2.6.8-11-amd64-generic
Nov  1 12:09:01 localhost kernel: RIP: 0010:[cdev_get+14/73] 
<ffffffff80163453>{cdev_get+14}
Nov  1 12:09:01 localhost kernel: RSP: 0018:000001003628de48  EFLAGS: 
00010246
Nov  1 12:09:01 localhost kernel: RAX: 0000000000000000 RBX: 
ffffffffa0261b80 RCX: 0000000000000000
Nov  1 12:09:01 localhost kernel: RDX: 000001003b5b9080 RSI: 
000001003b5b9080 RDI: 0000010002177680
Nov  1 12:09:01 localhost kernel: RBP: 000001003c45bd38 R08: 
000001003ea831a8 R09: 000001003ea831a8
Nov  1 12:09:01 localhost kernel: R10: 000001003b5b9080 R11: 
00000000000000f0 R12: 0000000000000000
Nov  1 12:09:01 localhost kernel: R13: 0000000000000000 R14: 
000001003b5b9080 R15: 0000000000000000
Nov  1 12:09:01 localhost kernel: FS:  0000002a959c2090(0000) 
GS:ffffffff80391580(0000) knlGS:0000000000000000
Nov  1 12:09:01 localhost kernel: CS:  0010 DS: 0000 ES: 0000 CR0: 
000000008005003b
Nov  1 12:09:01 localhost kernel: CR2: ffffffffa0261b80 CR3: 
0000000000101000 CR4: 00000000000006e0
Nov  1 12:09:01 localhost kernel: Process hardserver (pid: 5612, 
threadinfo 000001003628c000, task 0000010038bdc230)
Nov  1 12:09:01 localhost kernel: Stack: 0000000000000000 
0000010002177680 000001003c45bd38 ffffffff80163573
Nov  1 12:09:01 localhost kernel:        000001003ea831a8 
000001003ea831a8 000001003b5b9080 000001003c45bd38
Nov  1 12:09:01 localhost kernel:        000001003fbbeec0 0000000000000000
Nov  1 12:09:01 localhost kernel: Call 
Trace:<ffffffff80163573>{chrdev_open+180} 
<ffffffff8015bd2c>{dentry_open+205}
Nov  1 12:09:01 localhost kernel:        
<ffffffff8015be53>{filp_open+62} <ffffffff8023252e>{tcp_listen_start+325}
Nov  1 12:09:01 localhost kernel:        <ffffffff80166c0a>{getname+130} 
<ffffffff8015c04e>{sys_open+57}
Nov  1 12:09:01 localhost kernel:        
<ffffffff8010fc92>{system_call+126}
Nov  1 12:09:01 localhost kernel:
Nov  1 12:09:01 localhost kernel: Code: 83 3b 02 74 32 ff 83 00 01 00 00 
e8 41 38 04 00 48 85 c0 48
Nov  1 12:09:06 localhost kernel:  <6>ACPI: PCI interrupt 
0000:02:03.0[A] -> GSI 24 (level, low) -> IRQ 24
Nov  1 12:09:06 localhost kernel: ACPI: PCI interrupt 0000:07:06.0[A] -> 
GSI 18 (level, low) -> IRQ 18
Nov  1 12:19:06 localhost -- MARK --
Nov  1 12:39:06 localhost -- MARK --

>2) didn't post a URL to the driver source
>  
>
Sorry again.  Here is the source.  Right at the bottom, it appears to be 
calling pci_unregister_driver and unregister_chrdev as it should.

http://www.f0rmula.com/stuff/hostif.c

/var/log/messages says:

Nov  2 13:11:54 localhost kernel: nfdrv 2.9.25+: nfp_dev_destroy: entered
Nov  2 13:11:54 localhost kernel: nfdrv 2.9.25+: nfp_dev_destroy: 
freeing irq, 18
Nov  2 13:11:54 localhost kernel: nfdrv 2.9.25+: nfp_dev_destroy: 
freeing IO BAR, 1
Nov  2 13:11:54 localhost kernel: nfdrv 2.9.25+: nfp_dev_destroy: 
freeing MEM BAR, 2
Nov  2 13:11:54 localhost kernel: nfdrv 2.9.25+: nfp_dev_destroy: 
freeing pdev
Nov  2 13:11:54 localhost kernel: nfdrv 2.9.25+: nfp_pci_remove: entered
Nov  2 13:11:54 localhost kernel: nfdrv 2.9.25+: i21285_destroy: entered
Nov  2 13:11:54 localhost kernel: nfdrv 2.9.25+: nfp_outl: addr ec34, data c
Nov  2 13:11:54 localhost kernel: nfdrv 2.9.25+: nfp_dev_destroy: entered
Nov  2 13:11:54 localhost kernel: nfdrv 2.9.25+: nfp_dev_destroy: 
freeing irq, 12
Nov  2 13:11:54 localhost kernel: nfdrv 2.9.25+: nfp_dev_destroy: 
freeing IO BAR, 1
Nov  2 13:11:54 localhost kernel: nfdrv 2.9.25+: nfp_dev_destroy: 
freeing MEM BAR, 2
Nov  2 13:11:54 localhost kernel: nfdrv 2.9.25+: nfp_dev_destroy: 
freeing pdev
Nov  2 13:11:54 localhost kernel: nfdrv 2.9.25+: cleanup_module: Module 
unloaded

I thought that should prevent the driver from being able to kernel 
oops.  Is there anything else that I should be calling?  Or could it be 
the parameters I'm calling these functions with? (bearing in mind this 
works fine on a similar 32bit kernel).

>so.. how is anyone supposed to help?
>  
>
I was thinking that there may have been a common issue that would allow 
a driver oops the kernel if not unloaded properly.  Obviously not.

Thanks for any advice, it's much appreciated.

James

>
>
>
>  
>

  reply	other threads:[~2005-11-02 12:13 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-10-31 16:49 Trouble unloading a module James Hansen
2005-11-02  8:11 ` Arjan van de Ven
2005-11-02 12:13   ` James Hansen [this message]
2005-11-02 12:39     ` Arjan van de Ven
2005-11-03 11:58       ` James Hansen
     [not found] <53LbV-6pW-21@gated-at.bofh.it>
2005-11-01  3:56 ` Robert Hancock

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=4368AD58.6050809@f0rmula.com \
    --to=linux-kernel-list@f0rmula.com \
    --cc=arjan@infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.