Changes

6 bytes removed ,  03:37, 14 November 2020
m
formatting
Line 1: Line 1: −
== Initial Support for BPF Maps ==
+
BPF maps are kernel objects which store data (used by BPF programs) in the form of key-value pairs. Applications access BPF maps using file descriptors. C/R of BPF maps involves serializing their ''meta-data'' and ''data'':
   −
BPF maps are kernel objects which store data (used by BPF programs) in the form of key-value pairs. Applications access BPF maps using file descriptors. C/R of BPF maps involves serializing their ''meta-data'' and ''data'':
+
: '''Meta-data''' - This includes information such as map type, key size, value size, etc. CRIU obtains this information from the proc filesystem and using the <code>bpf</code> system call with argument <code>BPF_OBJ_GET_INFO_BY_FD</code>.
   −
: '''Meta-data''' - This includes information such as map type, key size, value size, etc. CRIU obtains this information from the proc filesystem and using the <code>bpf</code> system call with argument <code>BPF_OBJ_GET_INFO_BY_FD</code>
+
: '''Data''' - This is the map's contents, i.e. the actual key-value pairs. CRIU relies on batch operations to read (<code>BPF_MAP_LOOKUP_BATCH</code>) key-value pairs from maps during the checkpoint stage and to write (<code>BPF_MAP_UPDATE_BATCH</code>) them during the restore phase.
   −
: '''Data''' - This is the map's contents i.e. the actual key-value pairs. CRIU relies on batch operations to read <code>(BPF_MAP_LOOKUP_BATCH)</code> key-value pairs from maps during the checkpoint stage and to write <code>(BPF_MAP_UPDATE_BATCH)</code> them during the restore phase.
+
== Support for BPF Maps ==
    
CRIU currently supports C/R of the following BPF map types:
 
CRIU currently supports C/R of the following BPF map types: