> Hey Elena, > > I've pushed some changes to smatch_kernel_host_data.c and > smatch_points_to_host_data.c. It hopefully just brings that code more > in line with the user_data code. Hi Dan, Thank you very much for the fixes! I am actually still planning to work on this further, especially I need to finish re-writing the new pattern that produces the warning list for all host input processing done in the code (we use this as a basis for our fuzzing coverage analysis). > > The main thing is that smatch_points_to_host_data.c didn't differentiate > between when the function gets host data from the user vs when it is > passed in. That means if you have function: > > int *frob(int *x) > { > return x; > } > > And one caller passes in host data then all of them get host data back. > So then now we're passing host data pointers to even more functions and > the problem gets worse and worse over time. Yes, makes sense, I didn’t realize that this was happening with the previous code. > > Which is maybe not a huge deal in terms of the warnings generated, but > it was taking 8GB of data in my database. Oh, this is really bad for the database. I am sorry about this! Best Regards, Elena. > > regards, > dan carpenter