Oscar, > > I'm working to modernize the tasklet api but I don't understand the reply > to the patch 12/16 [1] of the patch series of Romain Perier [2]. Am working on the same too. I did try reaching out to Romain but not luck. Let's hope we are not duplicating efforts. > If this patch is combined with the first one, and the function prototypes > are not changed accordingly and these functions don't use the from_tasklet() > helper, all the users that use the DECLARE_TASKLET macro don't pass the > correct argument to the .data field. > > #define DECLARE_TASKLET(name, func, data) \ > -struct tasklet_struct name = { NULL, 0, ATOMIC_INIT(0), func, data } > +struct tasklet_struct name = { NULL, 0, ATOMIC_INIT(0), (TASKLET_FUNC_TYPE)func, (TASKLET_DATA_TYPE)&name } > Ideally this above bit should have been part of the first patch. > The data argument is lost. > > If this patch is splitted in two, the first part will build correctly since > there are casts protecting the arguments, but it will not run correctly until > we apply the second part. > I have a few more things to complete, I shall have it done and pushed to github. Will write back once that's done. - Allen