mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 10:11:27 +01:00
xen/cache-col: Remove bogus cast in domain_llc_coloring_free()
Using:
xfree(__va(__pa(d->llc_colors)));
is an extraordinarily expensive way of writing:
xfree((void *)d->llc_colours);
Combined with the comment indicating that this was intention, the patch should
have been rejected outright.
Correct the type of d->llc_colours by removing the bogus const on it, and
remove the cast when freeing it.
No functional change.
Fixes: 6985aa5e0c ("xen: extend domctl interface for cache coloring")
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
This commit is contained in:
1 parent
6a8aa13388
commit
6031cd215c
2 files changed
+3
-6
No files matched your search
@@ -309,11 +309,8 @@ int domain_set_llc_colors(struct domain *d,
|
||||
|
||||
void domain_llc_coloring_free(struct domain *d)
|
||||
{
|
||||
if ( !llc_coloring_enabled || d->llc_colors == default_colors )
|
||||
return;
|
||||
|
||||
/* free pointer-to-const using __va(__pa()) */
|
||||
xfree(__va(__pa(d->llc_colors)));
|
||||
if ( d->llc_colors != default_colors )
|
||||
xfree(d->llc_colors);
|
||||
}
|
||||
|
||||
int __init domain_set_llc_colors_from_str(struct domain *d, const char *str)
|
||||
|
||||
@@ -649,7 +649,7 @@ struct domain
|
||||
|
||||
#ifdef CONFIG_LLC_COLORING
|
||||
unsigned int num_llc_colors;
|
||||
const unsigned int *llc_colors;
|
||||
unsigned int *llc_colors;
|
||||
#endif
|
||||
|
||||
/* Console settings. */
|
||||
|
||||