> -static long zero; > static long long_max = LONG_MAX; > > struct ctl_table epoll_table[] = { > @@ -301,7 +300,7 @@ struct ctl_table epoll_table[] = { > .maxlen = sizeof(max_user_watches), > .mode = 0644, > .proc_handler = proc_doulongvec_minmax, > - .extra1 = &zero, > + .extra1 = SYSCTL_ZERO, > .extra2 = &long_max,
This looks wrong: proc_doulongvec_minmax() expects "long"s. The whole patch needs rechecking. > +/* shared constants to be used in various sysctls */ > +const =======>int<========== sysctl_vals[] = { 0, 1, INT_MAX }; > +EXPORT_SYMBOL(sysctl_vals);