All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Vladimir V. Saveliev" <vs@namesys.com>
To: "Jørgen Hermanrud Fjeld" <jhf@hex.no>
Cc: reiserfs-list@namesys.com
Subject: Re: Bug with reiser3 and quota in 2.6.12?
Date: Mon, 03 Oct 2005 18:53:34 +0400	[thread overview]
Message-ID: <434145EE.5010502@namesys.com> (raw)
In-Reply-To: <20051003141006.GA4295@hex.no>

[-- Attachment #1: Type: text/plain, Size: 6421 bytes --]

Hello

Jørgen Hermanrud Fjeld wrote:
> Hi! 
> I'm posting this BUG on the reiserfs list, as I presume it is a
> reiser3/quota bug. If this is not the proper manner of reporting this 
> bug, please advice me.
> 
> I have a production server that suddenly experience problems with 
> reiser3 and quota enabled.
> The server is running the latest 2.6.12 kernel offered by Debian.
> I 
> I have not been able to locate the conditions of the error, but the
> server has been running stable for many months, so it seems likely the
> error is related to quota handling when limits are reached.
> The error is repeatable, and processes using files on the mountpoint hang.
> reiserfsck does not report any errors on the partition.
> When the filesystem is mounted without user and group quota, no crash
> occurs. 
> In the error log, dm-3 is the problematic (/home) partition that
> procmail is accessing.
> 
> The crash log reported from the kernel is:
> ##########################################
> Oct  1 16:19:36 ramaya kernel: ReiserFS: dm-3: warning: PAP-5660: reiserfs_do_truncate: wrong result -1 of search for [8 135167768 0xfffffffffffffff DIRECT]
> Oct  1 16:19:36 ramaya kernel: ReiserFS: dm-2: warning: clm-2100: nesting info a different FS

The attached patch should eliminate clm-2100 warning and probably will make
reiserfs to not crash after PAP-5660.
However, PAP-5660 indicates that file with inode number 135167768 in directory
with inode number 8 is corrupted.
Try to remove it or rename it so that it does not get accessed.

> Oct  1 16:19:36 ramaya kernel: ------------[ cut here ]------------
> Oct  1 16:19:36 ramaya kernel: SMP 
> Oct  1 16:19:36 ramaya kernel: Modules linked in: nfsd exportfs lockd sunrpc lp af_packet ipv6 sch_ingress cls_u32 sch_sfq sch_htb ipt_TOS ipt_MASQUERADE ipt_REJECT ipt_LOG ipt_state ipt_pkttype ipt_recent ipt_iprange ipt_physdev ipt_multiport ipt_conntrack iptable_mangle ip_nat_irc ip_nat_ftp iptable_nat ip_conntrack_irc ip_conntrack_ftp ip_conntrack iptable_filter ip_tables evdev pcspkr rtc floppy parport_pc parport pci_hotplug serverworks ide_core i2c_piix4 i2c_core sworks_agp agpgart st sym53c8xx ohci_hcd usbcore e100 mii quota_v2 reiserfs isofs vfat fat ext2 ext3 jbd mbcache dm_mod DAC960 unix fbcon tileblit font bitblit vesafb cfbcopyarea cfbimgblt cfbfillrect softcursor capability commoncap aic7xxx scsi_transport_spi scsi_mod
> Oct  1 16:19:36 ramaya kernel: CPU:    0
> Oct  1 16:19:36 ramaya kernel: EIP:    0060:[pg0+945613644/1069663232]    Not tainted VLI
> Oct  1 16:19:36 ramaya kernel: EFLAGS: 00010246   (2.6.12-1-686-smp) 
> Oct  1 16:19:36 ramaya kernel: EIP is at reiserfs_get_block+0x118c/0x14d0 [reiserfs]
> Oct  1 16:19:36 ramaya kernel: eax: 00000000   ebx: 00000000   ecx: 00000001   edx: 00000001
> Oct  1 16:19:36 ramaya kernel: esi: 00000000   edi: f724ca00   ebp: 00000003   esp: ed369bcc
> Oct  1 16:19:36 ramaya kernel: ds: 007b   es: 007b   ss: 0068
> Oct  1 16:19:36 ramaya kernel: Process procmail (pid: 5915, threadinfo=ed368000 task=ef514ac0)
> Oct  1 16:19:36 ramaya kernel: Stack: ee7c20fc 00000000 00000044 efdbd0b0 00270008 00000000 00001000 00000000 
> Oct  1 16:19:36 ramaya kernel:        c016532f 00270008 000002b8 0000001e 00000001 0000002c 00000061 00000001 
> Oct  1 16:19:36 ramaya kernel:        c15cb060 00000001 00000000 ee7c20ac c15cb060 00000000 c02fec80 c02ff484 
> Oct  1 16:19:36 ramaya kernel: Call Trace:
> Oct  1 16:19:36 ramaya kernel:  [__find_get_block+207/288] __find_get_block+0xcf/0x120
> Oct  1 16:19:36 ramaya kernel:  [cache_init_objs+116/160] cache_init_objs+0x74/0xa0
> Oct  1 16:19:36 ramaya kernel:  [cache_grow+307/464] cache_grow+0x133/0x1d0
> Oct  1 16:19:36 ramaya kernel:  [alloc_buffer_head+62/80] alloc_buffer_head+0x3e/0x50
> Oct  1 16:19:36 ramaya kernel:  [alloc_page_buffers+128/208] alloc_page_buffers+0x80/0xd0
> Oct  1 16:19:36 ramaya kernel:  [create_empty_buffers+73/160] create_empty_buffers+0x49/0xa0
> Oct  1 16:19:36 ramaya kernel:  [__block_prepare_write+714/1232] __block_prepare_write+0x2ca/0x4d0
> Oct  1 16:19:36 ramaya kernel:  [radix_tree_insert+267/320] radix_tree_insert+0x10b/0x140
> Oct  1 16:19:36 ramaya kernel:  [add_to_page_cache+185/224] add_to_page_cache+0xb9/0xe0
> Oct  1 16:19:36 ramaya kernel:  [block_prepare_write+49/64] block_prepare_write+0x31/0x40
> Oct  1 16:19:36 ramaya kernel:  [pg0+945609152/1069663232] reiserfs_get_block+0x0/0x14d0 [reiserfs]
> Oct  1 16:19:36 ramaya kernel:  [pg0+945609152/1069663232] reiserfs_get_block+0x0/0x14d0 [reiserfs]
> Oct  1 16:19:36 ramaya kernel:  [pg0+945626492/1069663232] reiserfs_prepare_write+0x7c/0x190 [reiserfs]
> Oct  1 16:19:36 ramaya kernel:  [pg0+945609152/1069663232] reiserfs_get_block+0x0/0x14d0 [reiserfs]
> Oct  1 16:19:36 ramaya kernel:  [generic_cont_expand+206/448] generic_cont_expand+0xce/0x1c0
> Oct  1 16:19:36 ramaya kernel:  [pg0+945638699/1069663232] reiserfs_check_for_tail_and_convert+0x16b/0x240 [reiserfs]
> Oct  1 16:19:36 ramaya kernel:  [pg0+945642160/1069663232] reiserfs_file_write+0x340/0x750 [reiserfs]
> Oct  1 16:19:36 ramaya kernel:  [dput+232/480] dput+0xe8/0x1e0
> Oct  1 16:19:36 ramaya kernel:  [__d_lookup+269/288] __d_lookup+0x10d/0x120
> Oct  1 16:19:36 ramaya kernel:  [in_group_p+67/144] in_group_p+0x43/0x90
> Oct  1 16:19:36 ramaya kernel:  [permission+210/288] permission+0xd2/0x120
> Oct  1 16:19:36 ramaya kernel:  [may_open+116/704] may_open+0x74/0x2c0
> Oct  1 16:19:36 ramaya kernel:  [__posix_lock_file+399/1504] __posix_lock_file+0x18f/0x5e0
> Oct  1 16:19:36 ramaya kernel:  [open_namei+148/1744] open_namei+0x94/0x6d0
> Oct  1 16:19:36 ramaya kernel:  [get_empty_filp+145/288] get_empty_filp+0x91/0x120
> Oct  1 16:19:36 ramaya kernel:  [file_move+32/96] file_move+0x20/0x60
> Oct  1 16:19:36 ramaya kernel:  [fcntl_setlk64+174/656] fcntl_setlk64+0xae/0x290
> Oct  1 16:19:36 ramaya kernel:  [vfs_write+210/352] vfs_write+0xd2/0x160
> Oct  1 16:19:36 ramaya kernel:  [sys_write+75/128] sys_write+0x4b/0x80
> Oct  1 16:19:36 ramaya kernel:  [syscall_call+7/11] syscall_call+0x7/0xb
> Oct  1 16:19:36 ramaya kernel: Code: 7c 24 0c 89 54 24 04 89 0c 24 e8 f0 ec ff ff 85 c0 89 c3 0f 85 c4 fa ff ff 8b 8c 24 34 01 00 00 8b b9 a0 00 00 00 e9 14 f0 ff ff <0f> 0b d3 06 52 59 9d f8 b8 01 00 00 00 89 44 24 40 e9 48 ef ff 
> ##########################################
> 


[-- Attachment #2: reiserfs-add-missing-journal_end.patch --]
[-- Type: text/plain, Size: 1181 bytes --]


This patch adds missing calls to journal_end on error handling code paths.


 fs/reiserfs/inode.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletion(-)

diff -puN fs/reiserfs/inode.c~reiserfs-add-missing-journal_end fs/reiserfs/inode.c
--- linux-2.6.11.10/fs/reiserfs/inode.c~reiserfs-add-missing-journal_end	2005-07-27 18:03:06.197544430 +0400
+++ linux-2.6.11.10-vs/fs/reiserfs/inode.c	2005-07-27 18:04:07.363047159 +0400
@@ -46,6 +46,7 @@ void reiserfs_delete_inode (struct inode
 	reiserfs_update_inode_transaction(inode) ;
 
 	if (reiserfs_delete_object (&th, inode)) {
+	    journal_end(&th, inode->i_sb, jbegin_count);
 	    up (&inode->i_sem);
 	    goto out;
 	}
@@ -2015,8 +2016,10 @@ int reiserfs_truncate_file(struct inode 
 	       either appears truncated properly or not truncated at all */
 	add_save_link (&th, p_s_inode, 1);
     error = reiserfs_do_truncate (&th, p_s_inode, page, update_timestamps) ;
-    if (error)
+    if (error) {
+	journal_end (&th, p_s_inode->i_sb, JOURNAL_PER_BALANCE_CNT * 2 + 1);
         goto out;
+    }
     error = journal_end (&th, p_s_inode->i_sb, JOURNAL_PER_BALANCE_CNT * 2 + 1);
     if (error)
         goto out;

_

      reply	other threads:[~2005-10-03 14:53 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-10-03 14:10 Bug with reiser3 and quota in 2.6.12? Jørgen Hermanrud Fjeld
2005-10-03 14:53 ` Vladimir V. Saveliev [this message]

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=434145EE.5010502@namesys.com \
    --to=vs@namesys.com \
    --cc=jhf@hex.no \
    --cc=reiserfs-list@namesys.com \
    /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.