[Devel] Re: [PATCH] Fix OOPS in show_uevent()

Cornelia Huck cornelia.huck at de.ibm.com
Fri Aug 10 05:39:27 PDT 2007


On Fri, 10 Aug 2007 14:23:56 +0200,
"Kay Sievers" <kay.sievers at vrfy.org> wrote:

> But we still don't update the remaining buffer size and the remaining
> array fields which are left after the call. Shouldn't we instead just
> change the:
>    int (*dev_uevent)(struct device *dev,
>                                 char **envp, int num_envp,
>                                 char *buffer, int buffer_size);
> to:
>   int (*dev_uevent)(struct device *dev,
>                                char **envp, int num_envp, int *cur_index,
>                                char *buffer, int buffer_size, int *cur_len);
> 
> like we do for:
>   int add_uevent_var(char **envp, int num_envp, int *cur_index,
>                                   char *buffer, int buffer_size, int *cur_len,
>                                   const char *format, ...)
> 
> and along with the change of the callers, we would update the values
> properly, so the next call has the correct numbers? There are 6
> classes and something like 12 buses using this method, so it shouldn't
> be too much trouble.

Sounds like a sensible approach. We may want the remaining non-users to
add_uevent_var() at the same time, I guess.




More information about the Devel mailing list