Messages in this thread | | | Date | Sat, 18 Feb 2006 02:10:22 -0800 | From | Andrew Morton <> | Subject | Re: [PATCH 2/2] fix file counting |
| |
Dipankar Sarma <dipankar@in.ibm.com> wrote: > > On Sat, Feb 18, 2006 at 01:45:29AM -0800, Andrew Morton wrote: > > Dipankar Sarma <dipankar@in.ibm.com> wrote: > > > > > > > > > Slight optimization - > > > > > > if (get_nr_files() >= files_stat.max_files) { > > > if (capable(CAP_SYS_ADMIN)) { > > > /* > > > * percpu_counters are inaccurate. Do an expensive check before > > > * we go and fail. > > > */ > > > if (percpu_counter_sum(&nr_files) >= > > > files_stat.max_files) > > > goto over; > > > } else > > > goto over; > > > } > > > > That changes the behaviour for root. Maybe you meant !capable(), but that > > still changes the behaviour. I'm all confused. > > Hmm.. on second thoughts, there is no harm doing the expensive check > for both priviledged and non-priviledged user. It will correctly > allow non-priviledged users to create the new file provided > the fast-path percpu counter value returned was greater than the > slow path per-cpu counter value.
Look closer ;)
if (get_nr_files() >= files_stat.max_files && !capable(CAP_SYS_ADMIN)) { /* * percpu_counters are inaccurate. Do an expensive check before * we go and fail. */ if (percpu_counter_sum(&nr_files) >= files_stat.max_files) goto over; }
- 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/
| |