Messages in this thread | | | Subject | Re: [RFC][PATCH 3/6] SLIM main patch | From | Dave Hansen <> | Date | Fri, 14 Jul 2006 11:28:46 -0700 |
| |
On Fri, 2006-07-14 at 11:06 -0700, Kylene Jo Hall wrote: > Thanks it will be fixed in the next revision. > > On Fri, 2006-07-14 at 10:44 -0700, Dave Hansen wrote: > > On Fri, 2006-07-14 at 10:24 -0700, Kylene Jo Hall wrote: > > > +static void revoke_mmap_wperm(struct slm_file_xattr *cur_level) > > > +{ > > > + struct vm_area_struct *mpnt; > > > + struct file *file; > > > + struct dentry *dentry; > > > + struct slm_isec_data *isec; > > > + > > > + flush_cache_mm(current->mm); > > > + > > > + for (mpnt = current->mm->mmap; mpnt; mpnt = mpnt->vm_next) { > > > + file = mpnt->vm_file; > > > + if (!file) > > > + continue; > > > > You need to hold the mmap_sem for read while walking this list.
It gets a _bit_ sticky because mprotect() wants it as well. And, if you decide to drop the lock to make that call the vmas can go out from underneath you. Be careful.
-- Dave
- 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/
| |