mirror of
https://github.com/torvalds/linux.git
synced 2026-07-29 02:31:27 +02:00
arm64/mpam fix to use non-atomic bitops on struct mmap_props member
(atomicity not required). For kunit testing, the structure is packed to avoid memcmp() errors but this affects atomic bitops as they have strict alignment requirements. Also remove a duplicate include in the mpam driver. -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEE5RElWfyWxS+3PLO2a9axLQDIXvEFAmlrlm0ACgkQa9axLQDI XvHAXg/9Fk91bQjJzqSY3oPdDyY+H9VC49iS89OIiJb5Bw+2p+0/vJw10ujhCQ3I A0GJs4DvjBJbqBqYhZ0lIZtKrKCfNsa3Ej3RqlZfRh6BtQK+EfcE7IxyYXevuDOc wLUqrVQJpx2T6fzus2XMRFLGn8kRGnq+eCysEFCjRxqCQcxcLaokWrX2tYAbgBtb E3EjA2mQkpQQgkBUbCODUa4aHZggGPO7oiWGi6KfyuYbJ/GnKRDWdLg2WsqnI1E6 DnVuonfkXIc+8glnTkqh8T3M4NEQxYxBBpraeyuWdzIhzK0oNp5uChCNeG+oPAOd FAQ0oN/2W+KpAdX16eYoZcc4AhXaOoNuVPtcw1M18VhCIVhQ8l8GlXVjKX8HPtzs DWk/pG1hgmTtmww8BS2Vjx5hxJXcsQGACQ4KZ61VkPUJpMIARDxlB/+hXGTO34bM E5SheukLH46kLRzU5hJmC6BChHBLcSUj4fo0MKsM/4iiagrRi/G/Sbll33HYFEO9 ksIayBMX0lLylMeCg00+QovA+7MiNnMEAgdvKhnIoJo2bdXG7z+mt2S1LXjuGY9J czsfSCuDgb413REAi+VKv7Ow+fOwUSUWjiFgoi70Jy/hIoiGdyPlWiuu6ayb/qsP ghe6deDdNx7Hx5+iYLTFAIiV8yT8EOTsbEmGdJi6vSVYiOcclJw= =lmDb -----END PGP SIGNATURE----- Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux Pull arm64 fixes from Catalin Marinas: "An arm64/mpam fix to use non-atomic bitops on struct mmap_props member (atomicity not required). For kunit testing, the structure is packed to avoid memcmp() errors but this affects atomic bitops as they have strict alignment requirements. Also remove a duplicate include in the mpam driver" * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: arm_mpam: Use non-atomic bitops when modifying feature bitmap arm_mpam: Remove duplicate linux/srcu.h header
This commit is contained in:
commit
d12453c7e2
|
|
@ -12,7 +12,6 @@
|
|||
#include <linux/jump_label.h>
|
||||
#include <linux/llist.h>
|
||||
#include <linux/mutex.h>
|
||||
#include <linux/srcu.h>
|
||||
#include <linux/spinlock.h>
|
||||
#include <linux/srcu.h>
|
||||
#include <linux/types.h>
|
||||
|
|
@ -201,8 +200,12 @@ struct mpam_props {
|
|||
} PACKED_FOR_KUNIT;
|
||||
|
||||
#define mpam_has_feature(_feat, x) test_bit(_feat, (x)->features)
|
||||
#define mpam_set_feature(_feat, x) set_bit(_feat, (x)->features)
|
||||
#define mpam_clear_feature(_feat, x) clear_bit(_feat, (x)->features)
|
||||
/*
|
||||
* The non-atomic get/set operations are used because if struct mpam_props is
|
||||
* packed, the alignment requirements for atomics aren't met.
|
||||
*/
|
||||
#define mpam_set_feature(_feat, x) __set_bit(_feat, (x)->features)
|
||||
#define mpam_clear_feature(_feat, x) __clear_bit(_feat, (x)->features)
|
||||
|
||||
/* The values for MSMON_CFG_MBWU_FLT.RWBW */
|
||||
enum mon_filter_options {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user