@@ -530,53 +530,51 @@ int do_remount_sb(struct super_block *sb, int flags, void
{
int retval;
int remount_rw;
#ifdef CONFIG_BLOCK
if (!(flags & MS_RDONLY) && bdev_read_only(sb->s_bdev))
return -EACCES;
#endif
if (flags & MS_RDONLY)
acct_auto_close(sb);
shrink_dcache_sb(sb);
sync_filesystem(sb);
- lock_kernel();
/* If we are remounting RDONLY and current sb is read/write,
make sure there are no rw files opened */
if ((flags & MS_RDONLY) && !(sb->s_flags & MS_RDONLY)) {
if (force)
mark_files_ro(sb);
else if (!fs_may_remount_ro(sb)) {
unlock_kernel();
return -EBUSY;
}
retval = vfs_dq_off(sb, 1);
if (retval < 0 && retval != -ENOSYS) {
unlock_kernel();
return -EBUSY;
}
}
remount_rw = !(flags & MS_RDONLY) && (sb->s_flags & MS_RDONLY);
if (sb->s_op->remount_fs) {
retval = sb->s_op->remount_fs(sb, &flags, data);
if (retval) {
unlock_kernel();
return retval;
}
}
sb->s_flags = (sb->s_flags & ~MS_RMT_MASK) | (flags & MS_RMT_MASK);
- unlock_kernel();
cheers
> ------------[ cut here ]------------
> kernel BUG at lib/kernel_lock.c:126!
> Oops: Exception in kernel mode, sig: 5 [#1]
> SMP NR_CPUS=1024 NUMA pSeries
> Modules linked in: ipv6 fuse loop dm_mod sr_mod ehea cdrom sg ibmveth sd_mod crc_t10dif ibmvscsic scsi_transport_srp scsi_tgt scsi_mod
> NIP: c0000000005c6dac LR: c0000000001965ac CTR: 0000000000000006
> REGS: c00000002a5d3910 TRAP: 0700 Not tainted (2.6.30-git10)
> MSR: 8000000000029032 <EE,ME,CE,IR,DR> CR: 82042442 XER: 00000000