On 8/11/25 8:40 PM, Andy Shevchenko wrote:
On Mon, Aug 11, 2025 at 12:16:07PM +0530, Bhupesh wrote:
Historically due to the 16-byte length of TASK_COMM_LEN, the
users of 'tsk->comm' are restricted to use a fixed-size target
buffer also of TASK_COMM_LEN for 'memcpy()' like use-cases.

To fix the same, we now use a 64-byte TASK_COMM_EXT_LEN and
set the comm element inside 'task_struct' to the same length:
        struct task_struct {
               .....
                char    comm[TASK_COMM_EXT_LEN];
               .....
        };

        where TASK_COMM_EXT_LEN is 64-bytes.

Note, that the existing users have not been modified to migrate to
'TASK_COMM_EXT_LEN', in case they have hard-coded expectations of
dealing with only a 'TASK_COMM_LEN' long 'tsk->comm'.
...

-       BUILD_BUG_ON(sizeof(from) != TASK_COMM_LEN);    \
+       BUILD_BUG_ON(sizeof(from) < TASK_COMM_LEN);  \
Wondering if we may convert this to static_assert().
(rather in a separate patch)

That's a fair suggestion. If others don't have an objection to the suggested change, I can club it in v8 along with any other requested changes.

Thanks.

Reply via email to