2020-03-03 21:39:09

by Mateusz Nosek

[permalink] [raw]
Subject: [PATCH] security/apparmor/label.c: Clean code by removing redundant instructions

From: Mateusz Nosek <[email protected]>

Previously 'label->proxy->label' value checking
and conditional reassigning were done twice in the same function.
The second one is redundant and can be removed.

Signed-off-by: Mateusz Nosek <[email protected]>
---
security/apparmor/label.c | 6 ------
1 file changed, 6 deletions(-)

diff --git a/security/apparmor/label.c b/security/apparmor/label.c
index ba3987242282..676eebcbfd68 100644
--- a/security/apparmor/label.c
+++ b/security/apparmor/label.c
@@ -311,8 +311,6 @@ int aa_vec_unique(struct aa_profile **vec, int n, int flags)

static void label_destroy(struct aa_label *label)
{
- struct aa_label *tmp;
-
AA_BUG(!label);

if (!label_isprofile(label)) {
@@ -333,10 +331,6 @@ static void label_destroy(struct aa_label *label)

aa_free_secid(label->secid);

- tmp = rcu_dereference_protected(label->proxy->label, true);
- if (tmp == label)
- rcu_assign_pointer(label->proxy->label, NULL);
-
aa_put_proxy(label->proxy);
label->proxy = (struct aa_proxy *) PROXY_POISON + 1;
}
--
2.17.1


2020-03-03 21:39:55

by John Johansen

[permalink] [raw]
Subject: Re: [PATCH] security/apparmor/label.c: Clean code by removing redundant instructions

On 3/3/20 10:30 AM, [email protected] wrote:
> From: Mateusz Nosek <[email protected]>
>
> Previously 'label->proxy->label' value checking
> and conditional reassigning were done twice in the same function.
> The second one is redundant and can be removed.
>
> Signed-off-by: Mateusz Nosek <[email protected]>
Acked-by: John Johansen <[email protected]>

I will pull this into apparmor-next


> ---
> security/apparmor/label.c | 6 ------
> 1 file changed, 6 deletions(-)
>
> diff --git a/security/apparmor/label.c b/security/apparmor/label.c
> index ba3987242282..676eebcbfd68 100644
> --- a/security/apparmor/label.c
> +++ b/security/apparmor/label.c
> @@ -311,8 +311,6 @@ int aa_vec_unique(struct aa_profile **vec, int n, int flags)
>
> static void label_destroy(struct aa_label *label)
> {
> - struct aa_label *tmp;
> -
> AA_BUG(!label);
>
> if (!label_isprofile(label)) {
> @@ -333,10 +331,6 @@ static void label_destroy(struct aa_label *label)
>
> aa_free_secid(label->secid);
>
> - tmp = rcu_dereference_protected(label->proxy->label, true);
> - if (tmp == label)
> - rcu_assign_pointer(label->proxy->label, NULL);
> -
> aa_put_proxy(label->proxy);
> label->proxy = (struct aa_proxy *) PROXY_POISON + 1;
> }
>