Bug 9690

Summary: physmap does not have a release() function
Product: Drivers Reporter: Roland Kletzing (devzero)
Component: Flash/Memory Technology DevicesAssignee: Vitaliy Ivanov (vitalivanov)
Status: RESOLVED CODE_FIX    
Severity: low CC: dwmw2, protasnb, vitalivanov
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 2.6.27-rc6 Subsystem:
Regression: No Bisected commit-id:
Attachments: requested kernel configuration
proposed patch

Description Roland Kletzing 2008-01-05 03:54:58 UTC
Distribution: OpenSuSE 10.3 with vanilla 2.6.24rc6
Hardware Environment: vmware workstation 6.x on fujitsu-siemens lifebook e-series

Problem Description: 
when unloading physmap module, this gives an error message in dmesg.

i`m forwarding some feedback from the author:

> > From: "Jun Sun" <jsun@junsun.net>
> > Sent: 30.12.07 16:31:46
> > To: devzero@web.de
> > Subject: Re: FW: broken modules - hgafb and physmap !?
> >
> > I don't maintain this file anymore. However, it appears the warning
> > is too aggressive. A platform dirver (as physmap is) is not a full-blown
> > device driver and does not need to have release function defined.
> > On the other hand, if it is really compelling to have release() function
> > defined for some unknown common good to me, then we just need to add
> > a dummy release() function to the driver port of physmap_flash_driver.
> > Cheers.
> > Jun

Steps to reproduce:
modprobe physmap;modprobe -r physmap

Device 'physmap-flash.0' does not have a release() function, it is broken and must be fixed.
WARNING: at drivers/base/core.c:107 device_release()
Pid: 19893, comm: modprobe Tainted: G       N 2.6.24-rc6-git7-20080102160500-default #1
 [<c01db1ff>] kobject_cleanup+0x24/0x41
 [<c01db21c>] kobject_release+0x0/0x8
 [<c01dbe1c>] kref_put+0x60/0x6d
 [<c0251c57>] platform_device_del+0x2d/0x3d
 [<e0ab52de>] physmap_exit+0xa/0x14 [physmap]
 [<c0144757>] sys_delete_module+0x1ab/0x1d7
 [<c0166d42>] remove_vma+0x36/0x3b
 [<c0167ab0>] do_munmap+0x1ce/0x1e7
 [<c0104fd2>] sysenter_past_esp+0x6b/0xa9
 =======================
Comment 1 Roland Kletzing 2008-04-12 09:22:46 UTC
still exists in 2.6.25-rc8
Comment 2 Vitaliy Ivanov 2008-04-14 09:58:36 UTC
Roland, can you pls attach your .config here that you used with rc8?
Comment 3 Roland Kletzing 2008-04-14 11:39:05 UTC
Created attachment 15752 [details]
requested kernel configuration

also happens with suse factory`s kernel defconfig - this config is from an older suse system where i did "make oldconfig" for the 2.6.25 kernel compile
Comment 4 Roland Kletzing 2008-04-14 11:40:40 UTC
i`m on 2.6.25-rc9-bigsmp here - maybe you won`t even need that .config or recompile - i have seen the bug on any system with recent kernel
Comment 5 Vitaliy Ivanov 2008-04-18 05:00:49 UTC
Created attachment 15799 [details]
proposed patch

Here is patch I mailed to lkml:

http://lkml.org/lkml/2008/4/15/419

Added trivial release functions to avoid warnings for physmap and hgafb drivers.

Please check and resolve if needed.
Comment 6 Natalie Protasevich 2008-06-05 00:13:51 UTC
Doesn't look like the patch was picked up..
Comment 7 Roland Kletzing 2008-09-25 12:18:22 UTC
yes - 2.6.27-rc6 still seems to have that issue.
Comment 8 Roland Kletzing 2010-12-30 00:27:17 UTC
apparently this has been fixed.
cannot reproduce anymore.

looking at http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=history;f=drivers/mtd/maps/physmap.c;h=4c18b98a3110872f8648fcf8526f46fd19c162f3;hb=387c31c7e5c9805b0aef8833d1731a5fe7bdea14 it looks, there has been some work on physmap recently, so i assume it`s really fixed