forked from Minki/linux
audit/stable-5.18 PR 20220518
-----BEGIN PGP SIGNATURE----- iQJIBAABCAAyFiEES0KozwfymdVUl37v6iDy2pc3iXMFAmKFMZgUHHBhdWxAcGF1 bC1tb29yZS5jb20ACgkQ6iDy2pc3iXO/xhAAsjl2W83UdTQZk5i+LfoxGNxxt9O7 iqCbm3qJa0UI352uI/+pDM1+vufg3QBVBSXcgiVS3UHB05w6TQTuYUUnbmsqv7he oZm5LcV5GzrNm+dmCgdY8bybMLBzhWFQ9aJsXSybmzErooSTCiAA/ALTfN9IfqhQ JJatS3EL/gmJ9fDbzJNFzwIFWGpDrxUO/mk3gGTMvLHMSwN5snv9WRAKMTcIFK+W W7ItUBnqJjnaoIscQUOH4sNVVy88mqqeduefPpYVOd08skWLWqh7SGFWmuq8Cdt8 yS+Hk5K2q0mnO5gDkVhZDfvexXom/vKnLahw5RNZS6mcfO+x3SBhn+VdPHCpOzfi /NVXm9rpwt6/GIAb8vCPximeHD9mbq3HGfpdBBSaT7oilDQI2zAVw1T16fRqypvL 2GZYqGQIfLOXywtPLPu4geJ3oG7nhBpVtTuOzGWA6ZwTRXRpfYtgYKELYq1qfF4X fBK95S1dMKYQUd74/E2Kw052Uynx/QxjTpNryuNdkHn0ipPtZ9Nqm9LWN2Ep/Z4u 1dwt+a/w+k9IEKJe0h6L0Voy8a4/mODLu7JaSk5Rujbo7LNguQPKadeNbvUsSSdz MCTa4l+9Pk+20ClujZPo2QwHoixWCKn55Y+mMh6EXFeNEe8ita0b7LkSUcNLaT1D QqeD+42G4TkbZuw= =6+XM -----END PGP SIGNATURE----- Merge tag 'audit-pr-20220518' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit Pull audit fix from Paul Moore: "A single audit patch to fix a problem where a task's audit_context was not being properly reset with io_uring" * tag 'audit-pr-20220518' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit: audit,io_uring,io-wq: call __audit_uring_exit for dummy contexts
This commit is contained in:
commit
8194a00892
@ -339,7 +339,7 @@ static inline void audit_uring_entry(u8 op)
|
|||||||
}
|
}
|
||||||
static inline void audit_uring_exit(int success, long code)
|
static inline void audit_uring_exit(int success, long code)
|
||||||
{
|
{
|
||||||
if (unlikely(!audit_dummy_context()))
|
if (unlikely(audit_context()))
|
||||||
__audit_uring_exit(success, code);
|
__audit_uring_exit(success, code);
|
||||||
}
|
}
|
||||||
static inline void audit_syscall_entry(int major, unsigned long a0,
|
static inline void audit_syscall_entry(int major, unsigned long a0,
|
||||||
|
@ -1959,6 +1959,12 @@ void __audit_uring_exit(int success, long code)
|
|||||||
{
|
{
|
||||||
struct audit_context *ctx = audit_context();
|
struct audit_context *ctx = audit_context();
|
||||||
|
|
||||||
|
if (ctx->dummy) {
|
||||||
|
if (ctx->context != AUDIT_CTX_URING)
|
||||||
|
return;
|
||||||
|
goto out;
|
||||||
|
}
|
||||||
|
|
||||||
if (ctx->context == AUDIT_CTX_SYSCALL) {
|
if (ctx->context == AUDIT_CTX_SYSCALL) {
|
||||||
/*
|
/*
|
||||||
* NOTE: See the note in __audit_uring_entry() about the case
|
* NOTE: See the note in __audit_uring_entry() about the case
|
||||||
|
Loading…
Reference in New Issue
Block a user