Yes, that makes sense. These functions just check for the annotation on their
pointer argument, and having the const annotation would allow them to check
const pointers without provoking a warning due to the lack of const.
They don't provoke a warning now. Sparse is silent on this program:
#define __user __attribute__((noderef, address_space(1)))
extern void __chk_user_ptr(void __user *);
void
f(const void __user *p)
{
__chk_user_ptr(p);
}
but arguably they should (and then be changed to const void __user*).
For an actual example, __copy_from_user_inatomic has a
const void __user* argument which it passes (via __get_user_size)
to __chk_user_ptr.
Russ
-
To unsubscribe from this list: send the line "unsubscribe linux-sparse" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html