Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1172575
| From | Xu Wang <xuw@redhat.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [overlayfs] lockdep splat after mounting overlayfs over overlayfs |
| Date | 2015-06-26 05:30 +0200 |
| Message-ID | <pFsv0-3ul-7@gated-at.bofh.it> (permalink) |
| References | <pEVfI-5Vd-21@gated-at.bofh.it> <pF9LH-1VB-1@gated-at.bofh.it> <pFaHM-3gT-9@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
> On Thu, Jun 25, 2015 at 10:24 AM, Xu Wang <xuw@redhat.com> wrote: > >> I've accidentally mounted one overlayfs over another and got obvious > >> warning from lockdep: i_mutex lockdep classes are per-fs-type. > >> > >> # mount -t overlay overlay 1 -o > >> upperdir=1_upper,workdir=1_work,lowerdir=1_lower > >> # mount -t overlay overlay 2 -o upperdir=2_upper,workdir=2_work,lowerdir=1 > >> # ls 2 > > > > This reporting is positive, we are not in deadlock situation actually. The > > "2" dir > > of overlayfs will call iterate_dir->"1" dir of overlayfs->iterate_dir, and > > the nest > > iterate_dir happened on the same file system, so the warning came out. > > > > We'd better make the lower and upper in different fs instance, and this > > warning > > will disappear. > > > > And this lockdep warning happened when the nest iterate_dir call of same > > fs(I > > mean the same super block). The function check_deadlock in lockdep.c will > > report the nest lock of same process. If we make the 2_upper and 2_work in > > a different fs, no warning comes out. > > Yep, it's not a deadlock. As I mentioned lockdep classes are per-fs-type so > lockdep cannot see difference between i_mutexes on different sb of the > same type. > But anyway this looks messy. > yes, you are right. The i_mutex_class is file_system_tye scale. I was puzzled by the debug_locks mechanism during my quick tests. The nest iterate_dir is overlay dir, neither upper nor lower. > Probably it's safer to forbid overlayfs as lower or upper mount for overlayfs > because this have no sense. Nesting anyway is limited by the depth of kernel > stack and sb->s_stack_depth. > > Or overlayfs could detect this situation and substitute layers of underlying > overlayfs into its own lower layers in appropriate place. > Can we add the lockdep_off/lockdep_on in this situation? For we know this is just the false positive reporting of lockdep. Thanks, Xu Wang -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Back to linux.kernel | Previous | Next — Previous in thread | Find similar | Unroll thread
Re: [overlayfs] lockdep splat after mounting overlayfs over overlayfs Konstantin Khlebnikov <koct9i@gmail.com> - 2015-06-25 10:30 +0200 Re: [overlayfs] lockdep splat after mounting overlayfs over overlayfs Xu Wang <xuw@redhat.com> - 2015-06-26 05:30 +0200
csiph-web