Re: [PATCH bpf-next v5 8/9] bpf: Add tests for task_local_storage

From: Martin KaFai Lau
Date: Thu Nov 05 2020 - 18:21:52 EST


On Thu, Nov 05, 2020 at 10:58:26PM +0000, KP Singh wrote:
> From: KP Singh <kpsingh@xxxxxxxxxx>
>
> The test exercises the syscall based map operations by creating a pidfd
> for the current process.
>
> For verifying kernel / LSM functionality, the test implements a simple
> MAC policy which denies an executable from unlinking itself. The LSM
> program bprm_committed_creds sets a task_local_storage with a pointer to
> the inode. This is then used to detect if the task is trying to unlink
> itself in the inode_unlink LSM hook.
>
> The test copies /bin/rm to /tmp and executes it in a child thread with
> the intention of deleting itself. A successful test should prevent the
> the running executable from deleting itself.
>
> The bpf programs are also updated to call bpf_spin_{lock, unlock} to
> trigger the verfier checks for spin locks.
>
> The temporary file is cleaned up later in the test.
>
> Signed-off-by: KP Singh <kpsingh@xxxxxxxxxx>
Acked-by: Martin KaFai Lau <kafai@xxxxxx>