Bug 6957

Summary: iput: device xx:yy inode zzzzzz still has aliases!
Product: [Retired] Red Hat Linux Reporter: Sam Pierson <linux>
Component: kernelAssignee: Michael K. Johnson <johnsonm>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: high Docs Contact:
Priority: medium    
Version: 6.0CC: twarburton
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2000-01-04 22:27:51 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Sam Pierson 1999-11-12 16:06:29 UTC
Every week or two, my Linux system spits out the following messages,
then usually locks up (although I was able to get in and reboot it
in a couple of cases):

Nov  4 04:04:54
kernel: iput: device 08:01 inode 192633 still has aliases!

Nov 12:
04:02:39 kernel: iput: device 08:01 inode 293164 still has aliases!
04:02:57 kernel: iput: device 08:01 inode 12815 still has aliases!
04:02:59 kernel: iput: device 08:01 inode 60685 still has aliases!
04:03:03 kernel: iput: device 08:01 inode 309566 still has aliases!
04:03:14 kernel: iput: device 08:01 inode 491538 still has aliases!
04:03:18 kernel: iput: device 08:01 inode 119191 still has aliases!

Device 08:01 is /:

/dev/sda1 on / type ext2 (rw)
brw-rw----   1 root     disk       8,   1 May  5  1998 /dev/sda1

Notice how these messages all appeared at around 04:02.  /etc/crontab
tells me that this is when /etc/cron.daily is run, so it is reasonable
to postulate that this problem is highlighted by the filesystem
activity caused by the cron.daily jobs.  /etc/cron.daily contains the
following files:

    inn-cron-expire  logrotate        slocate.cron     tetex.cron
    inn-cron-rnews   makewhatis.cron  slrnpull-expire  tmpwatch

Now for the interesting part.  About 50% of the time, the iput messages
are preceded some number of hours earlier by a more serious message.
In the case on Nov 12th, the following appeared in messages 5 hours
earlier:

Nov 11 23:03:31
kernel: kmem_free: Bad obj addr (objp=c3ac50c0, name=buffer_head)
kernel: Unable to handle kernel NULL pointer dereference at virtual
address 00000000
kernel: current->tss.cr3 = 0258c000, %cr3 = 0258c000
kernel: *pde = 00000000
kernel: Oops: 0002
kernel: CPU:    0
kernel: EIP:    0010:[kmem_cache_free+333/372]
kernel: EFLAGS: 00010286
kernel: eax: 0000003d   ebx: c3ac50c0   ecx: 00000002   edx: c16e6000
kernel: esi: c02f5740   edi: 00000286   ebp: 00000000   esp: c3123e6c
kernel: ds: 0018   es: 0018   ss: 0018
kernel: Process imapd (pid: 1811, process nr: 33, stackpage=c3123000)
kernel: Stack: c3ac51e0 c02e0760 c3ac511c 00000100 c012636d c02f5740
c3ac50c0 c3ac50c0
kernel:        c3ac51e0 c0126c8f c3ac50c0 c3ac50c0 c02e0760 000000fe
00000013 00272000
kernel:        c011c126 c02e0760 0000000d 00000006 c0120e02 00000006
00000013 00000001
kernel: Call Trace: [put_unused_buffer_head+33/76]
[try_to_free_buffers+75/132] [shrink_mmap+214/300]
[do_try_to_free_pages+38/120] [try_to_free_pages+35/48]
[__get_free_pages+108/440] [try_to_read_ahead+47/288]
kernel:        [do_generic_file_read+758/1508] [generic_file_read+99/124]
[file_read_actor+0/80] [sys_read+174/196] [system_call+52/56]
kernel: Code: c7 05 00 00 00 00 00 00 00 00 eb 12 8d 76 00 56 53 68 de 17

This system is a P166 PC running Redhat 6.0, 2.2.5-15.

Comment 1 Bill Nottingham 1999-11-15 16:55:59 UTC
Does this still persist if you upgrade to the 2.2.12 kernel from 6.1?

Comment 2 Cristian Gafton 2000-01-04 22:27:59 UTC
Assigned to dledford