kernel BUG at fs/buffer.c:1234!
I've run into the following oops several times with the 3.10-rc3 through -rc6, and they have not occurred under 3.9. Originally they only occurred when running Google Chrome, but this is the first time it has happened in another application.
After this occurs I can not access any local files, but still able to use remote systems and executables which are already cached.
[36386.297932] ------------[ cut here ]------------ [36386.297961] kernel BUG at fs/buffer.c:1234! [36386.297982] invalid opcode: 0000 [#1] SMP [36386.298004] Modules linked in: hidp ecb ip6table_filter ip6_tables ebtable_nat ebtables ipt_MASQUERADE iptable_nat nf_nat_ipv4 nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack ipt_REJECT xt_CHECKSUM iptable_mangle xt_tcpudp iptable_filter ip_tables x_tables bridge stp llc parport_pc ppdev lp parport cpufreq_conservative cpufreq_powersave cpufreq_stats cpufreq_userspace rfcomm bnep binfmt_misc uinput loop ecryptfs hid_generic usbhid hid snd_hda_codec_hdmi snd_hda_codec_realtek uvcvideo videobuf2_vmalloc videobuf2_memops videobuf2_core videodev btusb bluetooth joydev coretemp kvm_intel kvm crc32c_intel ghash_clmulni_intel aesni_intel aes_x86_64 lrw gf128mul glue_helper ablk_helper cryptd iTCO_wdt iTCO_vendor_support arc4 snd_hda_intel snd_hda_codec thinkpad_acpi iwldvm snd_hwdep snd_pcm snd_page_alloc mac80211 nvram snd_seq snd_timer snd_seq_device psmouse serio_raw i915 snd evdev iwlwifi drm_kms_helper microcode battery i2c_i801 drm ac lpc_ich mfd_core pcspkr i2c_algo_bit cfg80211 i2c_core video wmi ehci_pci rfkill soundcore ehci_hcd acpi_cpufreq mperf button processor ext4 crc16 jbd2 mbcache dm_mod sg sd_mod crc_t10dif ahci libahci thermal thermal_sys xhci_hcd libata usbcore usb_common e1000e ptp sdhci_pci pps_core sdhci scsi_mod mmc_core [36386.298747] CPU: 1 PID: 28664 Comm: debconf-communi Not tainted 3.10.0-rc6 #1 [36386.298836] Hardware name: LENOVO 2306CTO/2306CTO, BIOS G2ET94WW (2.54 ) 04/30/2013 [36386.298930] task: ffff88039f3d8040 ti: ffff8803653bc000 task.ti: ffff8803653bc000 [36386.299021] RIP: 0010:[<ffffffff8112396e>] [<ffffffff8112396e>] check_irqs_on+0x7/0xa [36386.299130] RSP: 0018:ffff8803653bd540 EFLAGS: 00010046 [36386.299196] RAX: 0000000000000096 RBX: 0000000000001000 RCX: 0000000000000000 [36386.299283] RDX: 0000000000001000 RSI: 0000000000a8207b RDI: ffff88041d788a80 [36386.299370] RBP: ffff88041d788a80 R08: 0000000001400000 R09: 0000000000000010 [36386.299457] R10: 0000000000000000 R11: 000000000000000e R12: 0000000000a8207b [36386.299543] R13: 0000000000000001 R14: 0000000000a8207b R15: 0000000000000000 [36386.299638] FS: 00007f09ccc6d700(0000) GS:ffff88041e240000(0000) knlGS:0000000000000000 [36386.299756] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [36386.299845] CR2: 0000000001852c38 CR3: 0000000352268000 CR4: 00000000001407e0 [36386.299952] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [36386.300061] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 [36386.300166] Stack: [36386.300200] ffffffff81123bb5 0000000000000001 ffff8803fae99fb0 ffff8803653bd5b0 [36386.300329] ffffffffa015010d ffff8803653bd6b4 ffff8803653bd630 ffff8803653bd630 [36386.300458] ffff8803fae9a870 0000000000000000 ffff8803653bd6b4 0000000000001000 [36386.300591] Call Trace: [36386.300641] [<ffffffff81123bb5>] ? __find_get_block+0x17/0x162 [36386.300770] [<ffffffffa015010d>] ? __check_block_validity.constprop.53+0x27/0x65 [ext4] [36386.300898] [<ffffffff811248f1>] ? __getblk+0x1b/0x275 [36386.301004] [<ffffffffa0151c55>] ? ext4_getblk+0x9b/0x15d [ext4] [36386.301118] [<ffffffffa0151d24>] ? ext4_bread+0xd/0x61 [ext4] [36386.301234] [<ffffffffa0157f2f>] ? __ext4_read_dirblock+0x35/0x251 [ext4] [36386.301361] [<ffffffffa015836c>] ? dx_probe+0x38/0x308 [ext4] [36386.301469] [<ffffffffa0157fae>] ? __ext4_read_dirblock+0xb4/0x251 [ext4] [36386.301593] [<ffffffffa01590cc>] ? ext4_dx_find_entry+0x3d/0x152 [ext4] [36386.301698] [<ffffffff810eef43>] ? ____cache_alloc+0x41/0x251 [36386.301792] [<ffffffff810eef43>] ? ____cache_alloc+0x41/0x251 [36386.301890] [<ffffffff81194244>] ? blkcipher_walk_done+0xb2/0x16f [36386.302008] [<ffffffffa01592ee>] ? ext4_find_entry+0x10d/0x3be [ext4] [36386.302111] [<ffffffff810efd03>] ? __kmalloc+0x13a/0x14c [36386.302196] [<ffffffff81110e8c>] ? __d_alloc+0x3f/0x141 [36386.302300] [<ffffffffa01595d5>] ? ext4_lookup+0x36/0x10b [ext4] [36386.302398] [<ffffffff8110f347>] ? spin_unlock+0x5/0x6 [36386.306492] [<ffffffff81107d05>] ? lookup_real+0x24/0x3f [36386.310214] [<ffffffff8110814c>] ? __lookup_hash+0x2a/0x31 [36386.313899] [<ffffffff8110bda6>] ? lookup_one_len+0xd3/0xe5 [36386.317355] [<ffffffffa05e61e1>] ? ecryptfs_lookup+0xff/0x2d3 [ecryptfs] [36386.320621] [<ffffffff81107d05>] ? lookup_real+0x24/0x3f [36386.323711] [<ffffffff8110b491>] ? do_last+0x509/0xa16 [36386.326638] [<ffffffff8110923a>] ? __inode_permission+0x2f/0x95 [36386.329532] [<ffffffff8110ba62>] ? path_openat+0xc4/0x335 [36386.332207] [<ffffffff8110bf7e>] ? do_filp_open+0x2a/0x6e [36386.334746] [<ffffffff8105b816>] ? load_balance+0xc7/0x5e0 [36386.337225] [<ffffffff811419e2>] ? cn_printf+0xda/0xea [36386.339602] [<ffffffff810ffa1b>] ? file_open_name+0x27/0x2d [36386.341943] [<ffffffff810ffa43>] ? filp_open+0x22/0x27 [36386.344216] [<ffffffff81142250>] ? do_coredump+0x85e/0xbe6 [36386.346503] [<ffffffff81053e11>] ? finish_task_switch+0x78/0x9a [36386.348717] [<ffffffff8103f87a>] ? get_signal_to_deliver+0x46a/0x4a5 [36386.351041] [<ffffffff8100214a>] ? do_signal+0x3c/0x504 [36386.352025] [<ffffffff811007aa>] ? vfs_write+0xdc/0x103 [36386.353904] [<ffffffff81100864>] ? vfs_read+0x93/0xf5 [36386.356074] [<ffffffff81002637>] ? do_notify_resume+0x25/0x68 [36386.358250] [<ffffffff81370862>] ? int_signal+0x12/0x17 [36386.360377] Code: db b6 6d 48 c1 fe 03 48 0f af f0 48 b8 00 00 00 00 00 88 ff ff 48 c1 e6 0c 48 01 c6 48 01 f2 48 89 57 28 c3 9c 58 f6 c4 02 75 02 <0f> 0b c3 55 48 c7 c5 60 f3 00 00 83 c8 ff 53 31 db 41 52 65 c7 [36386.365120] RIP [<ffffffff8112396e>] check_irqs_on+0x7/0xa [36386.367479] RSP <ffff8803653bd540> [36386.381228] ---[ end trace 3ddcbffc09c97c49 ]---
Full dmesg output and .config are here: https://gist.github.com/dlundquist/1d94dd938f03c5d06a2b
Quoted 4 lines · Dustin Lundquist
I've run into the following oops several times with the 3.10-rc3 through -rc6, and they have not occurred under 3.9. Originally they only occurred when running Google Chrome, but this is the first time it has happened in another application.
So this is very strange. fs/buffer.c:1234 for 3.10-rc6 is this BUG_ON:
static inline void check_irqs_on(void)
{
#ifdef irqs_disabled BUG_ON(irqs_disabled());
#endif
}
The only place where ext4 turns off irq's is very briefly in fs/ext4/page-io.c, and it's pretty easy to visually inspect all of the calls to spin_lock_irqsave() and spin_lock_irqrestore() and lock_irq_save() and local_irq_restore() are properly bracketed --- and the stack trace does not have any of the functions that are defined in fs/ext4/page_io.c.
I notice from the dmesg file that one of the ext4 file systems is mounted on a device mapper volume. What kind of dm device is it?
- Ted
Quoted 118 lines
After this occurs I can not access any local files, but still able to use remote systems and executables which are already cached.
[36386.297932] ------------[ cut here ]------------ [36386.297961] kernel BUG at fs/buffer.c:1234! [36386.297982] invalid opcode: 0000 [#1] SMP [36386.298004] Modules linked in: hidp ecb ip6table_filter
ip6_tablesebtable_natebtablesipt_MASQUERADEiptable_natnf_nat_ipv4nf_natnf_conntrack_ipv4nf_defrag_ipv4xt_statenf_conntrackipt_REJECTxt_CHECKSUMiptable_manglext_tcpudpiptable_filterip_tablesx_tablesbridge stp llcparport_pcppdev lp parportcpufreq_conservativecpufreq_powersavecpufreq_statscpufreq_userspacerfcomm bnepbinfmt_miscuinput loop ecryptfshid_genericusbhid hidsnd_hda_codec_hdmisnd_hda_codec_realtekuvcvideovideobuf2_vmallocvideobuf2_memopsvideobuf2_corevideodev btusb bluetooth joydev coretempkvm_intelkvmcrc32c_intelghash_clmulni_intelaesni_intelaes_x86_64lrw gf128mulglue_helperablk_helpercryptdiTCO_wdtiTCO_vendor_supportarc4snd_hda_intelsnd_hda_codecthinkpad_acpiiwldvmsnd_hwdepsnd_pcmsnd_page_allocmac80211 nvramsnd_seqsnd_timersnd_seq_devicepsmouseserio_rawi915 snd evdev iwlwifidrm_kms_helpermicrocode batteryi2c_i801drm aclpc_ichmfd_corepcspkri2c_algo_bitcfg80211i2c_corevideo wmiehci_pcirfkill soundcoreehci_hcdacpi_cpufreqmperf button processor ext4 crc16 jbd2 mbcachedm_modsgsd_modcrc_t10difahci libahci thermalthermal_sysxhci_hcdlibata usbcoreusb_commone1000e ptpsdhci_pcipps_coresdhciscsi_modmmc_core[36386.298747] CPU: 1 PID: 28664 Comm: debconf-communi Not tainted 3.10.0-rc6 #1 [36386.298836] Hardware name: LENOVO 2306CTO/2306CTO, BIOS G2ET94WW (2.54 ) 04/30/2013 [36386.298930] task: ffff88039f3d8040 ti: ffff8803653bc000 task.ti: ffff8803653bc000 [36386.299021] RIP: 0010:[<ffffffff8112396e>] [<ffffffff8112396e>] check_irqs_on+0x7/0xa [36386.299130] RSP: 0018:ffff8803653bd540 EFLAGS: 00010046 [36386.299196] RAX: 0000000000000096 RBX: 0000000000001000 RCX: 0000000000000000 [36386.299283] RDX: 0000000000001000 RSI: 0000000000a8207b RDI: ffff88041d788a80 [36386.299370] RBP: ffff88041d788a80 R08: 0000000001400000 R09: 0000000000000010 [36386.299457] R10: 0000000000000000 R11: 000000000000000e R12: 0000000000a8207b [36386.299543] R13: 0000000000000001 R14: 0000000000a8207b R15: 0000000000000000 [36386.299638] FS: 00007f09ccc6d700(0000) GS:ffff88041e240000(0000) knlGS:0000000000000000 [36386.299756] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [36386.299845] CR2: 0000000001852c38 CR3: 0000000352268000 CR4: 00000000001407e0 [36386.299952] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [36386.300061] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 [36386.300166] Stack: [36386.300200] ffffffff81123bb5 0000000000000001 ffff8803fae99fb0 ffff8803653bd5b0 [36386.300329] ffffffffa015010d ffff8803653bd6b4 ffff8803653bd630 ffff8803653bd630 [36386.300458] ffff8803fae9a870 0000000000000000 ffff8803653bd6b4 0000000000001000 [36386.300591] Call Trace: [36386.300641] [<ffffffff81123bb5>] ? __find_get_block+0x17/0x162 [36386.300770] [<ffffffffa015010d>] ? __check_block_validity.constprop.53+0x27/0x65 [ext4] [36386.300898] [<ffffffff811248f1>] ? __getblk+0x1b/0x275 [36386.301004] [<ffffffffa0151c55>] ? ext4_getblk+0x9b/0x15d [ext4] [36386.301118] [<ffffffffa0151d24>] ? ext4_bread+0xd/0x61 [ext4] [36386.301234] [<ffffffffa0157f2f>] ? __ext4_read_dirblock+0x35/0x251 [ext4] [36386.301361] [<ffffffffa015836c>] ? dx_probe+0x38/0x308 [ext4] [36386.301469] [<ffffffffa0157fae>] ? __ext4_read_dirblock+0xb4/0x251 [ext4] [36386.301593] [<ffffffffa01590cc>] ? ext4_dx_find_entry+0x3d/0x152 [ext4] [36386.301698] [<ffffffff810eef43>] ? ____cache_alloc+0x41/0x251 [36386.301792] [<ffffffff810eef43>] ? ____cache_alloc+0x41/0x251 [36386.301890] [<ffffffff81194244>] ? blkcipher_walk_done+0xb2/0x16f [36386.302008] [<ffffffffa01592ee>] ? ext4_find_entry+0x10d/0x3be [ext4] [36386.302111] [<ffffffff810efd03>] ? __kmalloc+0x13a/0x14c [36386.302196] [<ffffffff81110e8c>] ? __d_alloc+0x3f/0x141 [36386.302300] [<ffffffffa01595d5>] ? ext4_lookup+0x36/0x10b [ext4] [36386.302398] [<ffffffff8110f347>] ? spin_unlock+0x5/0x6 [36386.306492] [<ffffffff81107d05>] ? lookup_real+0x24/0x3f [36386.310214] [<ffffffff8110814c>] ? __lookup_hash+0x2a/0x31 [36386.313899] [<ffffffff8110bda6>] ? lookup_one_len+0xd3/0xe5 [36386.317355] [<ffffffffa05e61e1>] ? ecryptfs_lookup+0xff/0x2d3 [ecryptfs] [36386.320621] [<ffffffff81107d05>] ? lookup_real+0x24/0x3f [36386.323711] [<ffffffff8110b491>] ? do_last+0x509/0xa16 [36386.326638] [<ffffffff8110923a>] ? __inode_permission+0x2f/0x95 [36386.329532] [<ffffffff8110ba62>] ? path_openat+0xc4/0x335 [36386.332207] [<ffffffff8110bf7e>] ? do_filp_open+0x2a/0x6e [36386.334746] [<ffffffff8105b816>] ? load_balance+0xc7/0x5e0 [36386.337225] [<ffffffff811419e2>] ? cn_printf+0xda/0xea [36386.339602] [<ffffffff810ffa1b>] ? file_open_name+0x27/0x2d [36386.341943] [<ffffffff810ffa43>] ? filp_open+0x22/0x27 [36386.344216] [<ffffffff81142250>] ? do_coredump+0x85e/0xbe6 [36386.346503] [<ffffffff81053e11>] ? finish_task_switch+0x78/0x9a [36386.348717] [<ffffffff8103f87a>] ? get_signal_to_deliver+0x46a/0x4a5 [36386.351041] [<ffffffff8100214a>] ? do_signal+0x3c/0x504 [36386.352025] [<ffffffff811007aa>] ? vfs_write+0xdc/0x103 [36386.353904] [<ffffffff81100864>] ? vfs_read+0x93/0xf5 [36386.356074] [<ffffffff81002637>] ? do_notify_resume+0x25/0x68 [36386.358250] [<ffffffff81370862>] ? int_signal+0x12/0x17 [36386.360377] Code: db b6 6d 48 c1 fe 03 48 0f af f0 48 b8 00 00 00 00 00 88 ff ff 48 c1 e6 0c 48 01 c6 48 01 f2 48 89 57 28 c3 9c 58 f6 c4 02 75 02 <0f> 0b c3 55 48 c7 c5 60 f3 00 00 83 c8 ff 53 31 db 41 52 65 c7 [36386.365120] RIP [<ffffffff8112396e>] check_irqs_on+0x7/0xa [36386.367479] RSP <ffff8803653bd540> [36386.381228] ---[ end trace 3ddcbffc09c97c49 ]---Full dmesg output and .config are here:
https://gist.github.com/dlundquist/1d94dd938f03c5d06a2b
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Quoted 23 lines · Theodore Ts'o
Quoted 4 lines · Dustin Lundquist
I've run into the following oops several times with the 3.10-rc3 through -rc6, and they have not occurred under 3.9. Originally they only occurred when running Google Chrome, but this is the first time it has happened in another application.
So this is very strange.
fs/buffer.c:1234for 3.10-rc6 is thisBUG_ON:static inline void
check_irqs_on(void)
{#ifdef irqs_disabled BUG_ON(irqs_disabled());#endif
}The only place where ext4 turns off irq's is very briefly in
fs/ext4/page-io.c, and it's pretty easy to visually inspect all of the calls tospin_lock_irqsave()andspin_lock_irqrestore()andlock_irq_save()andlocal_irq_restore()are properly bracketed --- and the stack trace does not have any of the functions that are defined infs/ext4/page_io.c.
Quoted 2 lines
I notice from the dmesg file that one of the ext4 file systems is mounted on a device mapper volume. What kind of dm device is it?
This is an LVM volume on a single SSD. I've include fdisk, mount and lvm output at https://gist.github.com/dlundquist/1d94dd938f03c5d06a2b. Another clue might be that I'm using ecryptfs to encrypt my home directory.
Since the system is still half way responsive after this occurs, is there any other information I can gather after if occurs to aid in diagnosing this?
Thanks,
Dustin Lundquist
Quoted 4 lines · Dustin Lundquist
Since the system is still half way responsive after this occurs, is there any other information I can gather after if occurs to aid in diagnosing this?
Hmm.... the only thing I can think of is to sprinkle in some
WARN_ON(irqs_disabled());
calls in various top-half routines in ext4 code, especially in ext4_lookup() and ext4_find_entry(), and perhaps in the vfs layer to see if we can figure out where the interrupts are getting disabled. The fact that blkcipher_walk_done() was showing up in the stack trace is certainly suspicious.
- Ted
I've narrowed this down a bit more: this seems to only occur when a program attempts to core dump when run within ecryptfs mount. I've been able to reliably reproduce it with: int main() { assert(0); };
Additionally my earlier report that I'm not able to access any local files was incorrect: it seems to be limited to the directory which the program attempted to core dump in.
I've update my kernel with WARN_ON(irqs_disabled()); in ext4_lookup(), ext4_find_entry() and ecryptfs_lookup() and then only received the following:
Quoted 3 lines
[ 71.368060] ------------[ cut here ]------------ [ 71.368107] WARNING: at fs/ext4/namei.c:1420 ext4_lookup+0x2a/0x126 [ext4]() [ 71.368110] Modules linked in: hidp hid fuse ecb ip6table_filter ip6_tables ebtable_nat ebtables ipt_MASQUERADE iptable_nat nf_nat_ipv4 nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack ipt_REJECT xt_CHECKSUM iptable_mangle xt_tcpudp iptable_filter ip_tables x_tables bridge stp llc parport_pc ppdev lp parport cpufreq_conservative cpufreq_powersave cpufreq_stats cpufreq_userspace rfcomm bnep binfmt_misc uinput loop ecryptfs uvcvideo videobuf2_vmalloc videobuf2_memops videobuf2_core videodev btusb bluetooth snd_hda_codec_hdmi snd_hda_codec_realtek joydev coretemp kvm_intel kvm crc32c_intel ghash_clmulni_intel aesni_intel aes_x86_64 lrw gf128mul glue_helper ablk_helper cryptd iTCO_wdt iTCO_vendor_support arc4 iwldvm snd_hda_intel snd_hda_codec mac80211 snd_hwdep thinkpad_acpi
snd_pcm pcspkr snd_page_alloc nvram snd_seq snd_timer snd_seq_device iwlwifi microcode i915 ehci_pci psmouse snd serio_raw evdev i2c_i801 drm_kms_helper ehci_hcd cfg80211 lpc_ich mfd_core s
oundcore drm rfkill battery i2c_algo_bit ac i2c_core wmi video acpi_cpufreq mperf processor button ext4 crc16 jbd2 mbcache dm_mod sg sd_mod crc_t10dif sdhci_pci ahci sdhci libahci mmc_core libata e1000e ptp pps_core scsi_mod xhci_hcd usbcore usb_common thermal thermal_sys
Quoted 28 lines
[ 71.368216] CPU: 3 PID: 4560 Comm: test_assert Not tainted 3.10.0 #3 [ 71.368219] Hardware name: LENOVO 2306CTO/2306CTO, BIOS G2ET94WW (2.54 ) 04/30/2013 [ 71.368222] ffffffff8136cf25 0000000000000000 ffffffff8102fbad 0000000000000000 [ 71.368228] 0000000000000000 ffff8803d4cbf988 ffff8803f48fbc70 ffff8803d9903900 [ 71.368232] ffff8803d4decac0 ffff8803f30468c0 ffffffffa01575ee ffff8803f30468c0 [ 71.368237] Call Trace: [ 71.368247] [<ffffffff8136cf25>] ? dump_stack+0xd/0x17 [ 71.368255] [<ffffffff8102fbad>] ? warn_slowpath_common+0x5f/0x77 [ 71.368271] [<ffffffffa01575ee>] ? ext4_lookup+0x2a/0x126 [ext4] [ 71.368277] [<ffffffff8110f59f>] ? spin_unlock+0x5/0x6 [ 71.368282] [<ffffffff8111141e>] ? d_alloc+0x61/0x69 [ 71.368288] [<ffffffff81107f5d>] ? lookup_real+0x24/0x3f [ 71.368293] [<ffffffff811083a4>] ? __lookup_hash+0x2a/0x31 [ 71.368298] [<ffffffff8110bffe>] ? lookup_one_len+0xd3/0xe5 [ 71.368306] [<ffffffffa05c81f9>] ? ecryptfs_lookup+0x117/0x2eb [ecryptfs] [ 71.368311] [<ffffffff81107f5d>] ? lookup_real+0x24/0x3f [ 71.368316] [<ffffffff8110b6e9>] ? do_last+0x509/0xa16 [ 71.368321] [<ffffffff81109492>] ? __inode_permission+0x2f/0x95 [ 71.368327] [<ffffffff8110bcba>] ? path_openat+0xc4/0x335 [ 71.368333] [<ffffffff810cb77c>] ? __inc_zone_state+0x3f/0x47 [ 71.368338] [<ffffffff8110c1d6>] ? do_filp_open+0x2a/0x6e [ 71.368345] [<ffffffff81141c6e>] ? cn_printf+0xda/0xea [ 71.368350] [<ffffffff810ffc2b>] ? file_open_name+0x27/0x2d [ 71.368354] [<ffffffff810ffc53>] ? filp_open+0x22/0x27 [ 71.368359] [<ffffffff811424dc>] ? do_coredump+0x85e/0xbe6 [ 71.368366] [<ffffffff810b61cc>] ? find_get_page+0x3e/0x5f [ 71.368373] [<ffffffff8136f4c9>] ? _cond_resched+0x6/0x1a [ 71.368380] [<ffffffff8103f892>] ? get_signal_to_deliver+0x46a/0x4a5
Quoted 8 lines
[ 71.368385] [<ffffffff8103db63>] ? signal_wake_up_state+0x1e/0x31 [ 71.368390] [<ffffffff8100214a>] ? do_signal+0x3c/0x504 [ 71.368395] [<ffffffff81002637>] ? do_notify_resume+0x25/0x68 [ 71.368400] [<ffffffff81370ca2>] ? int_signal+0x12/0x17 [ 71.368403] ---[ end trace c3af132f2e9b580b ]--- [ 71.368405] ------------[ cut here ]------------ [ 71.368417] WARNING: at fs/ext4/namei.c:1235 ext4_find_entry+0x3d/0x3e3 [ext4]() [ 71.368419] Modules linked in: hidp hid fuse ecb ip6table_filter ip6_tables ebtable_nat ebtables ipt_MASQUERADE iptable_nat nf_nat_ipv4 nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack ipt_REJECT xt_CHECKSUM iptable_mangle xt_tcpudp iptable_filter ip_tables x_tables bridge stp llc parport_pc ppdev lp parport cpufreq_conservative cpufreq_powersave cpufreq_stats cpufreq_userspace rfcomm bnep binfmt_misc uinput loop ecryptfs uvcvideo videobuf2_vmalloc videobuf2_memops videobuf2_core videodev btusb bluetooth snd_hda_codec_hdmi snd_hda_codec_realtek joydev coretemp kvm_intel kvm crc32c_intel ghash_clmulni_intel aesni_intel aes_x86_64 lrw gf128mul glue_helper ablk_helper cryptd iTCO_wdt iTCO_vendor_support arc4 iwldvm snd_hda_intel snd_hda_codec mac80211 snd_hwdep thinkpad_acpi
snd_pcm pcspkr snd_page_alloc nvram snd_seq snd_timer snd_seq_device iwlwifi microcode i915 ehci_pci psmouse snd serio_raw evdev i2c_i801 drm_kms_helper ehci_hcd cfg80211 lpc_ich mfd_core s
oundcore drm rfkill battery i2c_algo_bit ac i2c_core wmi video acpi_cpufreq mperf processor button ext4 crc16 jbd2 mbcache dm_mod sg sd_mod crc_t10dif sdhci_pci ahci sdhci libahci mmc_core libata e1000e ptp pps_core scsi_mod xhci_hcd usbcore usb_common thermal thermal_sys
Quoted 33 lines
[ 71.368517] CPU: 3 PID: 4560 Comm: test_assert Tainted: G W 3.10.0 #3 [ 71.368519] Hardware name: LENOVO 2306CTO/2306CTO, BIOS G2ET94WW (2.54 ) 04/30/2013 [ 71.368521] ffffffff8136cf25 0000000000000000 ffffffff8102fbad ffffffff818b8682 [ 71.368526] 0000000000000000 00000000d4cbf828 ffff8803f48fbc70 ffff8803d4decb40 [ 71.368530] ffff8803d4decac0 0000000000000000 ffffffffa015721e ffff8803d4cbf8f0 [ 71.368535] Call Trace: [ 71.368539] [<ffffffff8136cf25>] ? dump_stack+0xd/0x17 [ 71.368544] [<ffffffff8102fbad>] ? warn_slowpath_common+0x5f/0x77 [ 71.368560] [<ffffffffa015721e>] ? ext4_find_entry+0x3d/0x3e3 [ext4] [ 71.368577] [<ffffffffa01575ee>] ? ext4_lookup+0x2a/0x126 [ext4] [ 71.368592] [<ffffffffa01575ee>] ? ext4_lookup+0x2a/0x126 [ext4] [ 71.368597] [<ffffffff8102fbb2>] ? warn_slowpath_common+0x64/0x77 [ 71.368612] [<ffffffffa0157615>] ? ext4_lookup+0x51/0x126 [ext4] [ 71.368616] [<ffffffff8110f59f>] ? spin_unlock+0x5/0x6 [ 71.368620] [<ffffffff8111141e>] ? d_alloc+0x61/0x69 [ 71.368625] [<ffffffff81107f5d>] ? lookup_real+0x24/0x3f [ 71.368629] [<ffffffff811083a4>] ? __lookup_hash+0x2a/0x31 [ 71.368635] [<ffffffff8110bffe>] ? lookup_one_len+0xd3/0xe5 [ 71.368642] [<ffffffffa05c81f9>] ? ecryptfs_lookup+0x117/0x2eb [ecryptfs] [ 71.368647] [<ffffffff81107f5d>] ? lookup_real+0x24/0x3f [ 71.368652] [<ffffffff8110b6e9>] ? do_last+0x509/0xa16 [ 71.368657] [<ffffffff81109492>] ? __inode_permission+0x2f/0x95 [ 71.368662] [<ffffffff8110bcba>] ? path_openat+0xc4/0x335 [ 71.368667] [<ffffffff810cb77c>] ? __inc_zone_state+0x3f/0x47 [ 71.368672] [<ffffffff8110c1d6>] ? do_filp_open+0x2a/0x6e [ 71.368678] [<ffffffff81141c6e>] ? cn_printf+0xda/0xea [ 71.368682] [<ffffffff810ffc2b>] ? file_open_name+0x27/0x2d [ 71.368686] [<ffffffff810ffc53>] ? filp_open+0x22/0x27 [ 71.368691] [<ffffffff811424dc>] ? do_coredump+0x85e/0xbe6 [ 71.368696] [<ffffffff810b61cc>] ? find_get_page+0x3e/0x5f [ 71.368701] [<ffffffff8136f4c9>] ? _cond_resched+0x6/0x1a [ 71.368707] [<ffffffff8103f892>] ? get_signal_to_deliver+0x46a/0x4a5 [ 71.368711] [<ffffffff8103db63>] ? signal_wake_up_state+0x1e/0x31
Quoted 8 lines
[ 71.368716] [<ffffffff8100214a>] ? do_signal+0x3c/0x504 [ 71.368721] [<ffffffff81002637>] ? do_notify_resume+0x25/0x68 [ 71.368724] [<ffffffff81370ca2>] ? int_signal+0x12/0x17 [ 71.368727] ---[ end trace c3af132f2e9b580c ]--- [ 71.368741] ------------[ cut here ]------------ [ 71.368806] kernel BUG at fs/buffer.c:1234! [ 71.368859] invalid opcode: 0000 [#1] SMP [ 71.368916] Modules linked in: hidp hid fuse ecb ip6table_filter ip6_tables ebtable_nat ebtables ipt_MASQUERADE iptable_nat nf_nat_ipv4 nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack ipt_REJECT xt_CHECKSUM iptable_mangle xt_tcpudp iptable_filter ip_tables x_tables bridge stp llc parport_pc ppdev lp parport cpufreq_conservative cpufreq_powersave cpufreq_stats cpufreq_userspace rfcomm bnep binfmt_misc uinput loop ecryptfs uvcvideo videobuf2_vmalloc videobuf2_memops videobuf2_core videodev btusb bluetooth snd_hda_codec_hdmi snd_hda_codec_realtek joydev coretemp kvm_intel kvm crc32c_intel ghash_clmulni_intel aesni_intel aes_x86_64 lrw gf128mul glue_helper ablk_helper cryptd iTCO_wdt iTCO_vendor_support arc4 iwldvm snd_hda_intel snd_hda_codec mac80211 snd_hwdep thinkpad_acpi
snd_pcm pcspkr snd_page_alloc nvram snd_seq snd_timer snd_seq_device iwlwifi microcode i915 ehci_pci psmouse snd serio_raw evdev i2c_i801 drm_kms_helper ehci_hcd cfg80211 lpc_ich mfd_core s
oundcore drm rfkill battery i2c_algo_bit ac i2c_core wmi video acpi_cpufreq mperf processor button ext4 crc16 jbd2 mbcache dm_mod sg sd_mod crc_t10dif sdhci_pci ahci sdhci libahci mmc_core libata e1000e ptp pps_core scsi_mod xhci_hcd usbcore usb_common thermal thermal_sys
Quoted 65 lines
[ 71.370597] CPU: 3 PID: 4560 Comm: test_assert Tainted: G W 3.10.0 #3 [ 71.370685] Hardware name: LENOVO 2306CTO/2306CTO, BIOS G2ET94WW (2.54 ) 04/30/2013 [ 71.370777] task: ffff8804097055e0 ti: ffff8803d4cbe000 task.ti: ffff8803d4cbe000 [ 71.370868] RIP: 0010:[<ffffffff81123bfa>] [<ffffffff81123bfa>] check_irqs_on+0x7/0xa [ 71.370971] RSP: 0018:ffff8803d4cbf540 EFLAGS: 00010046 [ 71.371037] RAX: 0000000000000096 RBX: 0000000000001000 RCX: 0000000000000000 [ 71.371122] RDX: 0000000000001000 RSI: 0000000000a8207b RDI: ffff88041d7c7740 [ 71.371208] RBP: ffff88041d7c7740 R08: 0000000001400000 R09: 0000000000000000 [ 71.371294] R10: 0000000000000000 R11: ffffffff814dae00 R12: 0000000000a8207b [ 71.371380] R13: 0000000000000001 R14: 0000000000a8207b R15: 0000000000000000 [ 71.371467] FS: 00007f3a5c944700(0000) GS:ffff88041e2c0000(0000) knlGS:0000000000000000 [ 71.371565] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 71.371634] CR2: 00007f3a5c425070 CR3: 00000003f346f000 CR4: 00000000001407e0 [ 71.371720] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 71.371806] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 [ 71.371891] Stack: [ 71.371917] ffffffff81123e41 0000000000000001 ffff8803f3fe8358 ffff8803d4cbf5b0 [ 71.372017] ffffffffa014e10d ffff8803d4cbf6b4 ffff8803d4cbf630 ffff8803d4cbf630 [ 71.372117] ffff8803f48fbc70 0000000000000000 ffff8803d4cbf6b4 0000000000001000 [ 71.372217] Call Trace: [ 71.372253] [<ffffffff81123e41>] ? __find_get_block+0x17/0x162 [ 71.372341] [<ffffffffa014e10d>] ? __check_block_validity.constprop.53+0x27/0x65 [ext4] [ 71.372441] [<ffffffff81124b7d>] ? __getblk+0x1b/0x275 [ 71.372519] [<ffffffffa014fc55>] ? ext4_getblk+0x9b/0x15d [ext4] [ 71.372596] [<ffffffff8136ff4d>] ? _raw_spin_trylock+0x5/0x13 [ 71.372681] [<ffffffffa014fd24>] ? ext4_bread+0xd/0x61 [ext4] [ 71.372755] [<ffffffff81031549>] ? console_unlock+0x2c6/0x303 [ 71.372839] [<ffffffffa0155f2f>] ? __ext4_read_dirblock+0x35/0x251 [ext4] [ 71.372935] [<ffffffffa015636c>] ? dx_probe+0x38/0x308 [ext4] [ 71.373008] [<ffffffff81005039>] ? show_trace_log_lvl+0x2c/0x56 [ 71.373094] [<ffffffffa01570cc>] ? ext4_dx_find_entry+0x3d/0x152 [ext4] [ 71.373179] [<ffffffff8136a902>] ? printk+0x4f/0x54 [ 71.373252] [<ffffffffa015721e>] ? ext4_find_entry+0x3d/0x3e3 [ext4] [ 71.373333] [<ffffffff8102fbb2>] ? warn_slowpath_common+0x64/0x77 [ 71.373421] [<ffffffffa0157313>] ? ext4_find_entry+0x132/0x3e3 [ext4] [ 71.373515] [<ffffffffa01575ee>] ? ext4_lookup+0x2a/0x126 [ext4] [ 71.373601] [<ffffffffa01575ee>] ? ext4_lookup+0x2a/0x126 [ext4] [ 71.376994] [<ffffffff8102fbb2>] ? warn_slowpath_common+0x64/0x77 [ 71.380410] [<ffffffffa0157615>] ? ext4_lookup+0x51/0x126 [ext4] [ 71.383809] [<ffffffff8110f59f>] ? spin_unlock+0x5/0x6 [ 71.387089] [<ffffffff81107f5d>] ? lookup_real+0x24/0x3f [ 71.390236] [<ffffffff811083a4>] ? __lookup_hash+0x2a/0x31 [ 71.393253] [<ffffffff8110bffe>] ? lookup_one_len+0xd3/0xe5 [ 71.396152] [<ffffffffa05c81f9>] ? ecryptfs_lookup+0x117/0x2eb [ecryptfs] [ 71.398948] [<ffffffff81107f5d>] ? lookup_real+0x24/0x3f [ 71.401614] [<ffffffff8110b6e9>] ? do_last+0x509/0xa16 [ 71.404152] [<ffffffff81109492>] ? __inode_permission+0x2f/0x95 [ 71.406579] [<ffffffff8110bcba>] ? path_openat+0xc4/0x335 [ 71.408960] [<ffffffff810cb77c>] ? __inc_zone_state+0x3f/0x47 [ 71.411307] [<ffffffff8110c1d6>] ? do_filp_open+0x2a/0x6e [ 71.413623] [<ffffffff81141c6e>] ? cn_printf+0xda/0xea [ 71.415889] [<ffffffff810ffc2b>] ? file_open_name+0x27/0x2d [ 71.418123] [<ffffffff810ffc53>] ? filp_open+0x22/0x27 [ 71.420317] [<ffffffff811424dc>] ? do_coredump+0x85e/0xbe6 [ 71.422516] [<ffffffff810b61cc>] ? find_get_page+0x3e/0x5f [ 71.424701] [<ffffffff8136f4c9>] ? _cond_resched+0x6/0x1a [ 71.426876] [<ffffffff8103f892>] ? get_signal_to_deliver+0x46a/0x4a5 [ 71.429073] [<ffffffff8103db63>] ? signal_wake_up_state+0x1e/0x31 [ 71.431238] [<ffffffff8100214a>] ? do_signal+0x3c/0x504 [ 71.433364] [<ffffffff81002637>] ? do_notify_resume+0x25/0x68 [ 71.435483] [<ffffffff81370ca2>] ? int_signal+0x12/0x17 [ 71.437588] Code: db b6 6d 48 c1 fe 03 48 0f af f0 48 b8 00 00 00 00 00 88 ff ff 48 c1 e6 0c 48 01 c6 48 01 f2 48 89 57 28 c3 9c 58 f6 c4 02 75 02 <0f> 0b c3 55 48 c7 c5 60 f3 00 00 83 c8 ff 53 31 db 41 52 65 c7 [ 71.442432] RIP [<ffffffff81123bfa>] check_irqs_on+0x7/0xa [ 71.444766] RSP <ffff8803d4cbf540> [ 71.463545] ---[ end trace c3af132f2e9b580d ]---
Quoted 11 lines · Dustin Lundquist
I've narrowed this down a bit more: this seems to only occur when a program attempts to core dump when run within ecryptfs mount. I've been able to reliably reproduce it with: int
main(){ assert(0); };Additionally my earlier report that I'm not able to access any local files was incorrect: it seems to be limited to the directory which the program attempted to core dump in.
I've update my kernel with WARN_ON(irqs_disabled()); in
ext4_lookup(),ext4_find_entry()andecryptfs_lookup()and then only received the following:
Hum, so it's interesting that ecryptfs_lookup() WARN_ON() didn't trigger
but ext4 one did. Strangely enough I don't see a place in the call chain where irqs could get disabled. Can you maybe trace using irq tracing at which point exactly do we disable interrupts?
Honza
Quoted 4 lines
Quoted 4 lines
[ 71.368060] ------------[ cut here ]------------ [ 71.368107] WARNING: at fs/ext4/namei.c:1420 ext4_lookup+0x2a/0x126 [ext4]() [ 71.368110] Modules linked in: hidp hid fuse ecb ip6table_filter ip6_tables ebtable_nat ebtables ipt_MASQUERADE iptable_nat nf_nat_ipv4 nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack ipt_REJECT xt_CHECKSUM iptable_mangle xt_tcpudp iptable_filter ip_tables x_tables bridge stp llc parport_pc ppdev lp parport cpufreq_conservative cpufreq_powersave cpufreq_stats cpufreq_userspace rfcomm bnep binfmt_misc uinput loop ecryptfs uvcvideo videobuf2_vmalloc videobuf2_memops videobuf2_core videodev btusb bluetooth snd_hda_codec_hdmi snd_hda_codec_realtek joydev coretemp kvm_intel kvm crc32c_intel ghash_clmulni_intel aesni_intel aes_x86_64 lrw gf128mul glue_helper ablk_helper cryptd iTCO_wdt iTCO_vendor_support arc4 iwldvm snd_hda_intel snd_hda_codec mac80211 snd_hwdep thinkpad_acp
i snd_pcm pcspkr snd_page_alloc nvram snd_seq snd_timer snd_seq_device iwlwifi microcode i915 ehci_pci psmouse snd serio_raw evdev i2c_i801 drm_kms_helper ehci_hcd cfg80211 lpc_ich mfd_core s
Quoted 41 lines
oundcore drm rfkill battery
i2c_algo_bitaci2c_corewmi videoacpi_cpufreqmperf processor button ext4 crc16 jbd2 mbcachedm_modsgsd_modcrc_t10difsdhci_pciahci sdhci libahcimmc_corelibata e1000e ptppps_corescsi_modxhci_hcdusbcoreusb_commonthermalthermal_sysQuoted 36 lines
[ 71.368216] CPU: 3 PID: 4560 Comm: test_assert Not tainted 3.10.0 #3 [ 71.368219] Hardware name: LENOVO 2306CTO/2306CTO, BIOS G2ET94WW (2.54 ) 04/30/2013 [ 71.368222] ffffffff8136cf25 0000000000000000 ffffffff8102fbad 0000000000000000 [ 71.368228] 0000000000000000 ffff8803d4cbf988 ffff8803f48fbc70 ffff8803d9903900 [ 71.368232] ffff8803d4decac0 ffff8803f30468c0 ffffffffa01575ee ffff8803f30468c0 [ 71.368237] Call Trace: [ 71.368247] [<ffffffff8136cf25>] ? dump_stack+0xd/0x17 [ 71.368255] [<ffffffff8102fbad>] ? warn_slowpath_common+0x5f/0x77 [ 71.368271] [<ffffffffa01575ee>] ? ext4_lookup+0x2a/0x126 [ext4] [ 71.368277] [<ffffffff8110f59f>] ? spin_unlock+0x5/0x6 [ 71.368282] [<ffffffff8111141e>] ? d_alloc+0x61/0x69 [ 71.368288] [<ffffffff81107f5d>] ? lookup_real+0x24/0x3f [ 71.368293] [<ffffffff811083a4>] ? __lookup_hash+0x2a/0x31 [ 71.368298] [<ffffffff8110bffe>] ? lookup_one_len+0xd3/0xe5 [ 71.368306] [<ffffffffa05c81f9>] ? ecryptfs_lookup+0x117/0x2eb [ecryptfs] [ 71.368311] [<ffffffff81107f5d>] ? lookup_real+0x24/0x3f [ 71.368316] [<ffffffff8110b6e9>] ? do_last+0x509/0xa16 [ 71.368321] [<ffffffff81109492>] ? __inode_permission+0x2f/0x95 [ 71.368327] [<ffffffff8110bcba>] ? path_openat+0xc4/0x335 [ 71.368333] [<ffffffff810cb77c>] ? __inc_zone_state+0x3f/0x47 [ 71.368338] [<ffffffff8110c1d6>] ? do_filp_open+0x2a/0x6e [ 71.368345] [<ffffffff81141c6e>] ? cn_printf+0xda/0xea [ 71.368350] [<ffffffff810ffc2b>] ? file_open_name+0x27/0x2d [ 71.368354] [<ffffffff810ffc53>] ? filp_open+0x22/0x27 [ 71.368359] [<ffffffff811424dc>] ? do_coredump+0x85e/0xbe6 [ 71.368366] [<ffffffff810b61cc>] ? find_get_page+0x3e/0x5f [ 71.368373] [<ffffffff8136f4c9>] ? _cond_resched+0x6/0x1a [ 71.368380] [<ffffffff8103f892>] ? get_signal_to_deliver+0x46a/0x4a5 [ 71.368385] [<ffffffff8103db63>] ? signal_wake_up_state+0x1e/0x31 [ 71.368390] [<ffffffff8100214a>] ? do_signal+0x3c/0x504 [ 71.368395] [<ffffffff81002637>] ? do_notify_resume+0x25/0x68 [ 71.368400] [<ffffffff81370ca2>] ? int_signal+0x12/0x17 [ 71.368403] ---[ end trace c3af132f2e9b580b ]--- [ 71.368405] ------------[ cut here ]------------ [ 71.368417] WARNING: at fs/ext4/namei.c:1235 ext4_find_entry+0x3d/0x3e3 [ext4]() [ 71.368419] Modules linked in: hidp hid fuse ecb ip6table_filter ip6_tables ebtable_nat ebtables ipt_MASQUERADE iptable_nat nf_nat_ipv4 nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack ipt_REJECT xt_CHECKSUM iptable_mangle xt_tcpudp iptable_filter ip_tables x_tables bridge stp llc parport_pc ppdev lp parport cpufreq_conservative cpufreq_powersave cpufreq_stats cpufreq_userspace rfcomm bnep binfmt_misc uinput loop ecryptfs uvcvideo videobuf2_vmalloc videobuf2_memops videobuf2_core videodev btusb bluetooth snd_hda_codec_hdmi snd_hda_codec_realtek joydev coretemp kvm_intel kvm crc32c_intel ghash_clmulni_intel aesni_intel aes_x86_64 lrw gf128mul glue_helper ablk_helper cryptd iTCO_wdt iTCO_vendor_support arc4 iwldvm snd_hda_intel snd_hda_codec mac80211 snd_hwdep thinkpad_acp
i snd_pcm pcspkr snd_page_alloc nvram snd_seq snd_timer snd_seq_device iwlwifi microcode i915 ehci_pci psmouse snd serio_raw evdev i2c_i801 drm_kms_helper ehci_hcd cfg80211 lpc_ich mfd_core s
Quoted 46 lines
oundcore drm rfkill battery
i2c_algo_bitaci2c_corewmi videoacpi_cpufreqmperf processor button ext4 crc16 jbd2 mbcachedm_modsgsd_modcrc_t10difsdhci_pciahci sdhci libahcimmc_corelibata e1000e ptppps_corescsi_modxhci_hcdusbcoreusb_commonthermalthermal_sysQuoted 41 lines
[ 71.368517] CPU: 3 PID: 4560 Comm: test_assert Tainted: G W 3.10.0 #3 [ 71.368519] Hardware name: LENOVO 2306CTO/2306CTO, BIOS G2ET94WW (2.54 ) 04/30/2013 [ 71.368521] ffffffff8136cf25 0000000000000000 ffffffff8102fbad ffffffff818b8682 [ 71.368526] 0000000000000000 00000000d4cbf828 ffff8803f48fbc70 ffff8803d4decb40 [ 71.368530] ffff8803d4decac0 0000000000000000 ffffffffa015721e ffff8803d4cbf8f0 [ 71.368535] Call Trace: [ 71.368539] [<ffffffff8136cf25>] ? dump_stack+0xd/0x17 [ 71.368544] [<ffffffff8102fbad>] ? warn_slowpath_common+0x5f/0x77 [ 71.368560] [<ffffffffa015721e>] ? ext4_find_entry+0x3d/0x3e3 [ext4] [ 71.368577] [<ffffffffa01575ee>] ? ext4_lookup+0x2a/0x126 [ext4] [ 71.368592] [<ffffffffa01575ee>] ? ext4_lookup+0x2a/0x126 [ext4] [ 71.368597] [<ffffffff8102fbb2>] ? warn_slowpath_common+0x64/0x77 [ 71.368612] [<ffffffffa0157615>] ? ext4_lookup+0x51/0x126 [ext4] [ 71.368616] [<ffffffff8110f59f>] ? spin_unlock+0x5/0x6 [ 71.368620] [<ffffffff8111141e>] ? d_alloc+0x61/0x69 [ 71.368625] [<ffffffff81107f5d>] ? lookup_real+0x24/0x3f [ 71.368629] [<ffffffff811083a4>] ? __lookup_hash+0x2a/0x31 [ 71.368635] [<ffffffff8110bffe>] ? lookup_one_len+0xd3/0xe5 [ 71.368642] [<ffffffffa05c81f9>] ? ecryptfs_lookup+0x117/0x2eb [ecryptfs] [ 71.368647] [<ffffffff81107f5d>] ? lookup_real+0x24/0x3f [ 71.368652] [<ffffffff8110b6e9>] ? do_last+0x509/0xa16 [ 71.368657] [<ffffffff81109492>] ? __inode_permission+0x2f/0x95 [ 71.368662] [<ffffffff8110bcba>] ? path_openat+0xc4/0x335 [ 71.368667] [<ffffffff810cb77c>] ? __inc_zone_state+0x3f/0x47 [ 71.368672] [<ffffffff8110c1d6>] ? do_filp_open+0x2a/0x6e [ 71.368678] [<ffffffff81141c6e>] ? cn_printf+0xda/0xea [ 71.368682] [<ffffffff810ffc2b>] ? file_open_name+0x27/0x2d [ 71.368686] [<ffffffff810ffc53>] ? filp_open+0x22/0x27 [ 71.368691] [<ffffffff811424dc>] ? do_coredump+0x85e/0xbe6 [ 71.368696] [<ffffffff810b61cc>] ? find_get_page+0x3e/0x5f [ 71.368701] [<ffffffff8136f4c9>] ? _cond_resched+0x6/0x1a [ 71.368707] [<ffffffff8103f892>] ? get_signal_to_deliver+0x46a/0x4a5 [ 71.368711] [<ffffffff8103db63>] ? signal_wake_up_state+0x1e/0x31 [ 71.368716] [<ffffffff8100214a>] ? do_signal+0x3c/0x504 [ 71.368721] [<ffffffff81002637>] ? do_notify_resume+0x25/0x68 [ 71.368724] [<ffffffff81370ca2>] ? int_signal+0x12/0x17 [ 71.368727] ---[ end trace c3af132f2e9b580c ]--- [ 71.368741] ------------[ cut here ]------------ [ 71.368806] kernel BUG at fs/buffer.c:1234! [ 71.368859] invalid opcode: 0000 [#1] SMP [ 71.368916] Modules linked in: hidp hid fuse ecb ip6table_filter ip6_tables ebtable_nat ebtables ipt_MASQUERADE iptable_nat nf_nat_ipv4 nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack ipt_REJECT xt_CHECKSUM iptable_mangle xt_tcpudp iptable_filter ip_tables x_tables bridge stp llc parport_pc ppdev lp parport cpufreq_conservative cpufreq_powersave cpufreq_stats cpufreq_userspace rfcomm bnep binfmt_misc uinput loop ecryptfs uvcvideo videobuf2_vmalloc videobuf2_memops videobuf2_core videodev btusb bluetooth snd_hda_codec_hdmi snd_hda_codec_realtek joydev coretemp kvm_intel kvm crc32c_intel ghash_clmulni_intel aesni_intel aes_x86_64 lrw gf128mul glue_helper ablk_helper cryptd iTCO_wdt iTCO_vendor_support arc4 iwldvm snd_hda_intel snd_hda_codec mac80211 snd_hwdep thinkpad_acp
i snd_pcm pcspkr snd_page_alloc nvram snd_seq snd_timer snd_seq_device iwlwifi microcode i915 ehci_pci psmouse snd serio_raw evdev i2c_i801 drm_kms_helper ehci_hcd cfg80211 lpc_ich mfd_core s
Quoted 75 lines
oundcore drm rfkill battery
i2c_algo_bitaci2c_corewmi videoacpi_cpufreqmperf processor button ext4 crc16 jbd2 mbcachedm_modsgsd_modcrc_t10difsdhci_pciahci sdhci libahcimmc_corelibata e1000e ptppps_corescsi_modxhci_hcdusbcoreusb_commonthermalthermal_sysQuoted 57 lines
[ 71.370597] CPU: 3 PID: 4560 Comm: test_assert Tainted: G W 3.10.0 #3 [ 71.370685] Hardware name: LENOVO 2306CTO/2306CTO, BIOS G2ET94WW (2.54 ) 04/30/2013 [ 71.370777] task: ffff8804097055e0 ti: ffff8803d4cbe000 task.ti: ffff8803d4cbe000 [ 71.370868] RIP: 0010:[<ffffffff81123bfa>] [<ffffffff81123bfa>] check_irqs_on+0x7/0xa [ 71.370971] RSP: 0018:ffff8803d4cbf540 EFLAGS: 00010046 [ 71.371037] RAX: 0000000000000096 RBX: 0000000000001000 RCX: 0000000000000000 [ 71.371122] RDX: 0000000000001000 RSI: 0000000000a8207b RDI: ffff88041d7c7740 [ 71.371208] RBP: ffff88041d7c7740 R08: 0000000001400000 R09: 0000000000000000 [ 71.371294] R10: 0000000000000000 R11: ffffffff814dae00 R12: 0000000000a8207b [ 71.371380] R13: 0000000000000001 R14: 0000000000a8207b R15: 0000000000000000 [ 71.371467] FS: 00007f3a5c944700(0000) GS:ffff88041e2c0000(0000) knlGS:0000000000000000 [ 71.371565] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 71.371634] CR2: 00007f3a5c425070 CR3: 00000003f346f000 CR4: 00000000001407e0 [ 71.371720] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 71.371806] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 [ 71.371891] Stack: [ 71.371917] ffffffff81123e41 0000000000000001 ffff8803f3fe8358 ffff8803d4cbf5b0 [ 71.372017] ffffffffa014e10d ffff8803d4cbf6b4 ffff8803d4cbf630 ffff8803d4cbf630 [ 71.372117] ffff8803f48fbc70 0000000000000000 ffff8803d4cbf6b4 0000000000001000 [ 71.372217] Call Trace: [ 71.372253] [<ffffffff81123e41>] ? __find_get_block+0x17/0x162 [ 71.372341] [<ffffffffa014e10d>] ? __check_block_validity.constprop.53+0x27/0x65 [ext4] [ 71.372441] [<ffffffff81124b7d>] ? __getblk+0x1b/0x275 [ 71.372519] [<ffffffffa014fc55>] ? ext4_getblk+0x9b/0x15d [ext4] [ 71.372596] [<ffffffff8136ff4d>] ? _raw_spin_trylock+0x5/0x13 [ 71.372681] [<ffffffffa014fd24>] ? ext4_bread+0xd/0x61 [ext4] [ 71.372755] [<ffffffff81031549>] ? console_unlock+0x2c6/0x303 [ 71.372839] [<ffffffffa0155f2f>] ? __ext4_read_dirblock+0x35/0x251 [ext4] [ 71.372935] [<ffffffffa015636c>] ? dx_probe+0x38/0x308 [ext4] [ 71.373008] [<ffffffff81005039>] ? show_trace_log_lvl+0x2c/0x56 [ 71.373094] [<ffffffffa01570cc>] ? ext4_dx_find_entry+0x3d/0x152 [ext4] [ 71.373179] [<ffffffff8136a902>] ? printk+0x4f/0x54 [ 71.373252] [<ffffffffa015721e>] ? ext4_find_entry+0x3d/0x3e3 [ext4] [ 71.373333] [<ffffffff8102fbb2>] ? warn_slowpath_common+0x64/0x77 [ 71.373421] [<ffffffffa0157313>] ? ext4_find_entry+0x132/0x3e3 [ext4] [ 71.373515] [<ffffffffa01575ee>] ? ext4_lookup+0x2a/0x126 [ext4] [ 71.373601] [<ffffffffa01575ee>] ? ext4_lookup+0x2a/0x126 [ext4] [ 71.376994] [<ffffffff8102fbb2>] ? warn_slowpath_common+0x64/0x77 [ 71.380410] [<ffffffffa0157615>] ? ext4_lookup+0x51/0x126 [ext4] [ 71.383809] [<ffffffff8110f59f>] ? spin_unlock+0x5/0x6 [ 71.387089] [<ffffffff81107f5d>] ? lookup_real+0x24/0x3f [ 71.390236] [<ffffffff811083a4>] ? __lookup_hash+0x2a/0x31 [ 71.393253] [<ffffffff8110bffe>] ? lookup_one_len+0xd3/0xe5 [ 71.396152] [<ffffffffa05c81f9>] ? ecryptfs_lookup+0x117/0x2eb [ecryptfs] [ 71.398948] [<ffffffff81107f5d>] ? lookup_real+0x24/0x3f [ 71.401614] [<ffffffff8110b6e9>] ? do_last+0x509/0xa16 [ 71.404152] [<ffffffff81109492>] ? __inode_permission+0x2f/0x95 [ 71.406579] [<ffffffff8110bcba>] ? path_openat+0xc4/0x335 [ 71.408960] [<ffffffff810cb77c>] ? __inc_zone_state+0x3f/0x47 [ 71.411307] [<ffffffff8110c1d6>] ? do_filp_open+0x2a/0x6e [ 71.413623] [<ffffffff81141c6e>] ? cn_printf+0xda/0xea [ 71.415889] [<ffffffff810ffc2b>] ? file_open_name+0x27/0x2d [ 71.418123] [<ffffffff810ffc53>] ? filp_open+0x22/0x27 [ 71.420317] [<ffffffff811424dc>] ? do_coredump+0x85e/0xbe6 [ 71.422516] [<ffffffff810b61cc>] ? find_get_page+0x3e/0x5f [ 71.424701] [<ffffffff8136f4c9>] ? _cond_resched+0x6/0x1a [ 71.426876] [<ffffffff8103f892>] ? get_signal_to_deliver+0x46a/0x4a5Quoted 8 lines
[ 71.429073] [<ffffffff8103db63>] ? signal_wake_up_state+0x1e/0x31 [ 71.431238] [<ffffffff8100214a>] ? do_signal+0x3c/0x504 [ 71.433364] [<ffffffff81002637>] ? do_notify_resume+0x25/0x68 [ 71.435483] [<ffffffff81370ca2>] ? int_signal+0x12/0x17 [ 71.437588] Code: db b6 6d 48 c1 fe 03 48 0f af f0 48 b8 00 00 00 00 00 88 ff ff 48 c1 e6 0c 48 01 c6 48 01 f2 48 89 57 28 c3 9c 58 f6 c4 02 75 02 <0f> 0b c3 55 48 c7 c5 60 f3 00 00 83 c8 ff 53 31 db 41 52 65 c7 [ 71.442432] RIP [<ffffffff81123bfa>] check_irqs_on+0x7/0xa [ 71.444766] RSP <ffff8803d4cbf540> [ 71.463545] ---[ end trace c3af132f2e9b580d ]-----
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Signature · 2 lines
Jan Kara <[email protected]> SUSE Labs, CR
Quoted 4 lines · Jan Kara
Hum, so it's interesting that
ecryptfs_lookup()WARN_ON()didn't trigger
but ext4 one did. Strangely enough I don't see a place in the call chain where irqs could get disabled. Can you maybe trace using irq tracing at which point exactly do we disable interrupts?
I'm not familiar with irq tracing, but I traced it as far as a function pointer in a macro at fs/ecryptfs/keystore.c:840 then tried blacklisting the aesni_intel module and I haven't been able to reproduce it since.
At this point I would be interested if anyone else can reproduce it on another Intel Ivy Bridge system with aesni and Linux 3.10:
1. Setup an ecryptfs mount over an ext4 file system
2. Cause a program running inside ecryptfs mount to core dump
Thanks,
Dustin Lundquist