summaryrefslogtreecommitdiffstats
path: root/Documentation/ABI/testing/sysfs-class-rc
diff options
context:
space:
mode:
authorSean Christopherson <seanjc@google.com>2026-09-23 09:37:21 -0700
committerPaolo Bonzini <pbonzini@redhat.com>2026-09-26 00:39:55 -0400
commit93de2a6a4b91b72607136dd656edf03fb399d27f (patch)
tree9220c76eb23cb39a146fac9692ee69afa4aa3135 /Documentation/ABI/testing/sysfs-class-rc
downloadlinux-stable-93de2a6a4b91b72607136dd656edf03fb399d27f.tar.gz
linux-stable-93de2a6a4b91b72607136dd656edf03fb399d27f.zip
KVM: SEV: Do cache maintenance on the source VM during intra-host migrationgrafted
Manually perform cache maintenance on the source VM during intra-host migration to ensure no stale data is left in CPU caches after the VM is destroyed. Because the source VM is "converted" to a non-SEV VM, KVM's memory reclaim flows won't trigger cache maintenance, e.g. when all guest memory is reclaimed in response to detaching from the mmu_notifier. Note, relying on the destination VM to do cache maintenance isn't an option as KVM doesn't require identical guest memory configurations, i.e. the source VM may have access to memory that the destination VM does not. Enforcing equivalent memory configurations is infeasible, as it would require a *deep* comparison of memslots, e.g. to verify that not only are the memslot identical, but what the memslots point at is also identical. Fixes: b56639318bb2 ("KVM: SEV: Add support for SEV intra host migration") Cc: stable@vger.kernel.org Reported-by: Stefan Teodorescu <fane@google.com> Signed-off-by: Sean Christopherson <seanjc@google.com> Message-ID: <20260923163721.1584779-3-seanjc@google.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'Documentation/ABI/testing/sysfs-class-rc')
-rw-r--r--Documentation/ABI/testing/sysfs-class-rc137
1 files changed, 137 insertions, 0 deletions
diff --git a/Documentation/ABI/testing/sysfs-class-rc b/Documentation/ABI/testing/sysfs-class-rc
new file mode 100644
index 000000000..84e46d70d
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-class-rc
@@ -0,0 +1,137 @@
+What: /sys/class/rc/
+Date: Apr 2010
+KernelVersion: 2.6.35
+Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
+Description:
+ The rc/ class sub-directory belongs to the Remote Controller
+ core and provides a sysfs interface for configuring infrared
+ remote controller receivers.
+
+What: /sys/class/rc/rc<N>/
+Date: Apr 2010
+KernelVersion: 2.6.35
+Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
+Description:
+ A /sys/class/rc/rcN directory is created for each remote
+ control receiver device where N is the number of the receiver.
+
+What: /sys/class/rc/rc<N>/protocols
+Date: Jun 2010
+KernelVersion: 2.6.36
+Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
+Description:
+ Reading this file returns a list of available protocols,
+ something like::
+
+ "rc5 [rc6] nec jvc [sony]"
+
+ Enabled protocols are shown in [] brackets.
+
+ Writing "+proto" will add a protocol to the list of enabled
+ protocols.
+
+ Writing "-proto" will remove a protocol from the list of enabled
+ protocols.
+
+ Writing "proto" will enable only "proto".
+
+ Writing "none" will disable all protocols.
+
+ Write fails with EINVAL if an invalid protocol combination or
+ unknown protocol name is used.
+
+What: /sys/class/rc/rc<N>/filter
+Date: Jan 2014
+KernelVersion: 3.15
+Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
+Description:
+ Sets the scancode filter expected value.
+
+ Use in combination with /sys/class/rc/rcN/filter_mask to set the
+ expected value of the bits set in the filter mask.
+ If the hardware supports it then scancodes which do not match
+ the filter will be ignored. Otherwise the write will fail with
+ an error.
+
+ This value may be reset to 0 if the current protocol is altered.
+
+What: /sys/class/rc/rc<N>/filter_mask
+Date: Jan 2014
+KernelVersion: 3.15
+Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
+Description:
+ Sets the scancode filter mask of bits to compare.
+ Use in combination with /sys/class/rc/rcN/filter to set the bits
+ of the scancode which should be compared against the expected
+ value. A value of 0 disables the filter to allow all valid
+ scancodes to be processed.
+
+ If the hardware supports it then scancodes which do not match
+ the filter will be ignored. Otherwise the write will fail with
+ an error.
+
+ This value may be reset to 0 if the current protocol is altered.
+
+What: /sys/class/rc/rc<N>/wakeup_protocols
+Date: Feb 2017
+KernelVersion: 4.11
+Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
+Description:
+ Reading this file returns a list of available protocols to use
+ for the wakeup filter, something like::
+
+ "rc-5 nec nec-x rc-6-0 rc-6-6a-24 [rc-6-6a-32] rc-6-mce"
+
+ Note that protocol variants are listed, so "nec", "sony",
+ "rc-5", "rc-6" have their different bit length encodings
+ listed if available.
+
+ The enabled wakeup protocol is shown in [] brackets.
+
+ Only one protocol can be selected at a time.
+
+ Writing "proto" will use "proto" for wakeup events.
+
+ Writing "none" will disable wakeup.
+
+ Write fails with EINVAL if an invalid protocol combination or
+ unknown protocol name is used, or if wakeup is not supported by
+ the hardware.
+
+What: /sys/class/rc/rc<N>/wakeup_filter
+Date: Jan 2014
+KernelVersion: 3.15
+Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
+Description:
+ Sets the scancode wakeup filter expected value.
+
+ Use in combination with /sys/class/rc/rcN/wakeup_filter_mask to
+ set the expected value of the bits set in the wakeup filter mask
+ to trigger a system wake event.
+
+ If the hardware supports it and wakeup_filter_mask is not 0 then
+ scancodes which match the filter will wake the system from e.g.
+ suspend to RAM or power off.
+
+ Otherwise the write will fail with an error.
+
+ This value may be reset to 0 if the wakeup protocol is altered.
+
+What: /sys/class/rc/rc<N>/wakeup_filter_mask
+Date: Jan 2014
+KernelVersion: 3.15
+Contact: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
+Description:
+ Sets the scancode wakeup filter mask of bits to compare.
+
+ Use in combination with /sys/class/rc/rcN/wakeup_filter to set
+ the bits of the scancode which should be compared against the
+ expected value to trigger a system wake event.
+
+ If the hardware supports it and wakeup_filter_mask is not 0 then
+ scancodes which match the filter will wake the system from e.g.
+ suspend to RAM or power off.
+
+ Otherwise the write will fail with an error.
+
+ This value may be reset to 0 if the wakeup protocol is altered.