On Mon, Sep 05, 2022 at 09:29:25AM +0800, Li zeming wrote: > When the ctl_table_header object is judged to be valid, the scheduling > check is performed again. No, we want the check in all cases, even if the header is NULL. > Signed-off-by: Li zeming <zeming@xxxxxxxxxxxx> > --- > fs/proc/proc_sysctl.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/fs/proc/proc_sysctl.c b/fs/proc/proc_sysctl.c > index 50ba9e4fb284..36921e2ebeb0 100644 > --- a/fs/proc/proc_sysctl.c > +++ b/fs/proc/proc_sysctl.c > @@ -1729,11 +1729,10 @@ static void drop_sysctl_table(struct ctl_table_header *header) > void unregister_sysctl_table(struct ctl_table_header * header) > { > int nr_subheaders; > - might_sleep(); > - > if (header == NULL) > return; > > + might_sleep(); > nr_subheaders = count_subheaders(header->ctl_table_arg); > if (unlikely(nr_subheaders > 1)) { > struct ctl_table_header **subheaders; > -- > 2.18.2 >