Home
last modified time | relevance | path

Searched full:rsb (Results 1 – 25 of 152) sorted by relevance

1234567

/kernel/linux/linux-6.6/drivers/bus/
Dsunxi-rsb.c3 * RSB (Reduced Serial Bus) driver.
7 * The RSB controller looks like an SMBus controller which only supports
24 * RSB section of Allwinner's A80 user manual, which can be found at
49 #include <linux/sunxi-rsb.h>
52 /* RSB registers */
61 #define RSB_CMD 0x2c /* RSB Command */
112 #define RSB_CTRL_NAME "sunxi-rsb"
196 * sunxi_rsb_device_create() - allocate and add an RSB device
197 * @rsb: RSB controller
198 * @node: RSB slave device node
[all …]
/kernel/linux/linux-5.10/drivers/bus/
Dsunxi-rsb.c2 * RSB (Reduced Serial Bus) driver.
10 * The RSB controller looks like an SMBus controller which only supports
27 * RSB section of Allwinner's A80 user manual, which can be found at
51 #include <linux/sunxi-rsb.h>
54 /* RSB registers */
63 #define RSB_CMD 0x2c /* RSB Command */
114 #define RSB_CTRL_NAME "sunxi-rsb"
192 * sunxi_rsb_device_create() - allocate and add an RSB device
193 * @rsb: RSB controller
194 * @node: RSB slave device node
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/bus/
Dallwinner,sun8i-a23-rsb.yaml4 $id: http://devicetree.org/schemas/bus/allwinner,sun8i-a23-rsb.yaml#
7 title: Allwinner A23 RSB
22 - const: allwinner,sun8i-a23-rsb
25 - allwinner,sun8i-a83t-rsb
26 - allwinner,sun50i-h616-rsb
27 - const: allwinner,sun8i-a23-rsb
65 rsb@1f03400 {
66 compatible = "allwinner,sun8i-a23-rsb";
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/bus/
Dallwinner,sun8i-a23-rsb.yaml4 $id: http://devicetree.org/schemas/bus/allwinner,sun8i-a23-rsb.yaml#
7 title: Allwinner A23 RSB Device Tree Bindings
22 - const: allwinner,sun8i-a23-rsb
24 - const: allwinner,sun8i-a83t-rsb
25 - const: allwinner,sun8i-a23-rsb
62 rsb@1f03400 {
63 compatible = "allwinner,sun8i-a23-rsb";
/kernel/linux/linux-6.6/include/linux/
Dsunxi-rsb.h22 * struct sunxi_rsb_device - Basic representation of an RSB device
24 * @ctrl: RSB controller managing the bus hosting this device.
30 struct sunxi_rsb *rsb; member
53 * struct sunxi_rsb_driver - RSB slave device driver
54 * @driver: RSB device drivers should initialize name and owner field of
56 * @probe: binds this driver to a RSB device.
57 * @remove: unbinds this driver from the RSB device.
73 * sunxi_rsb_driver_unregister() - unregister an RSB client driver
/kernel/linux/linux-5.10/include/linux/
Dsunxi-rsb.h22 * struct sunxi_rsb_device - Basic representation of an RSB device
24 * @ctrl: RSB controller managing the bus hosting this device.
30 struct sunxi_rsb *rsb; member
53 * struct sunxi_rsb_driver - RSB slave device driver
54 * @driver: RSB device drivers should initialize name and owner field of
56 * @probe: binds this driver to a RSB device.
57 * @remove: unbinds this driver from the RSB device.
73 * sunxi_rsb_driver_unregister() - unregister an RSB client driver
/kernel/linux/linux-5.10/fs/dlm/
Drecover.c228 * The recover_list contains all the rsb's for which we've requested the new
230 * rsb's are removed from the list. When the list is empty we're done.
232 * The recover_list is later similarly used for all rsb's for which we've sent
235 * We use the address of the rsb struct as a simple local identifier for the
236 * rsb so we can match an rcom reply with the rsb it was sent for.
380 /* Master recovery: find new master node for rsb's that were
396 * If we are the new master of the rsb, we may have received new
422 * The NEW_MASTER flag tells dlm_recover_locks() which rsb's to consider.
424 * rsb's to consider.
435 * We do async lookups on rsb's that need new masters. The rsb's
[all …]
Ddebug_fs.c263 seq_printf(s, "rsb %p %d %x %lx %d %d %u %d ", in print_format3()
339 seq_printf(s, "rsb %p %d %d %d %d %lu %lx %d ", in print_format4()
367 struct dlm_rsb *rsb; member
386 print_format1(ri->rsb, seq); in table_seq_show()
393 print_format2(ri->rsb, seq); in table_seq_show()
397 seq_puts(seq, "version rsb 1.1 lvb 1.1 lkb 1.1\n"); in table_seq_show()
400 print_format3(ri->rsb, seq); in table_seq_show()
404 seq_puts(seq, "version 4 rsb 2\n"); in table_seq_show()
407 print_format4(ri->rsb, seq); in table_seq_show()
458 ri->rsb = r; in table_seq_start()
[all …]
Dlock.c39 Stage 2, xxxx_lock(), just finds and locks the relevant rsb which is
46 given rsb and lkb and queues callbacks.
172 printk(KERN_ERR "rsb: nodeid %d master %d dir %d flags %lx first %x " in dlm_print_rsb()
185 printk(KERN_ERR "rsb: root_list empty %d recover_list empty %d\n", in dlm_dump_rsb()
187 printk(KERN_ERR "rsb lookup list\n"); in dlm_dump_rsb()
190 printk(KERN_ERR "rsb grant queue:\n"); in dlm_dump_rsb()
193 printk(KERN_ERR "rsb convert queue:\n"); in dlm_dump_rsb()
196 printk(KERN_ERR "rsb wait queue:\n"); in dlm_dump_rsb()
328 * Basic operations on rsb's and lkb's
332 a valid reference to the rsb, so there's no need for locking. */
[all …]
/kernel/linux/linux-6.6/fs/dlm/
Drecover.c229 * The recover_list contains all the rsb's for which we've requested the new
231 * rsb's are removed from the list. When the list is empty we're done.
233 * The recover_list is later similarly used for all rsb's for which we've sent
236 * We use the address of the rsb struct as a simple local identifier for the
237 * rsb so we can match an rcom reply with the rsb it was sent for.
381 /* Master recovery: find new master node for rsb's that were
397 * If we are the new master of the rsb, we may have received new
423 * The NEW_MASTER flag tells dlm_recover_locks() which rsb's to consider.
425 * rsb's to consider.
436 * We do async lookups on rsb's that need new masters. The rsb's
[all …]
Dlock.c39 Stage 2, xxxx_lock(), just finds and locks the relevant rsb which is
46 given rsb and lkb and queues callbacks.
173 printk(KERN_ERR "rsb: nodeid %d master %d dir %d flags %lx first %x " in dlm_print_rsb()
186 printk(KERN_ERR "rsb: root_list empty %d recover_list empty %d\n", in dlm_dump_rsb()
188 printk(KERN_ERR "rsb lookup list\n"); in dlm_dump_rsb()
191 printk(KERN_ERR "rsb grant queue:\n"); in dlm_dump_rsb()
194 printk(KERN_ERR "rsb convert queue:\n"); in dlm_dump_rsb()
197 printk(KERN_ERR "rsb wait queue:\n"); in dlm_dump_rsb()
320 * Basic operations on rsb's and lkb's
324 a valid reference to the rsb, so there's no need for locking. */
[all …]
Ddebug_fs.c266 seq_printf(s, "rsb %p %d %x %lx %d %d %u %d ", in print_format3()
342 seq_printf(s, "rsb %p %d %d %d %d %lu %lx %d ", in print_format4()
416 struct dlm_rsb *rsb; member
435 print_format1(ri->rsb, seq); in table_seq_show()
442 print_format2(ri->rsb, seq); in table_seq_show()
446 seq_puts(seq, "version rsb 1.1 lvb 1.1 lkb 1.1\n"); in table_seq_show()
449 print_format3(ri->rsb, seq); in table_seq_show()
453 seq_puts(seq, "version 4 rsb 2\n"); in table_seq_show()
456 print_format4(ri->rsb, seq); in table_seq_show()
463 print_format5(ri->rsb, seq); in table_seq_show()
[all …]
/kernel/linux/linux-6.6/drivers/mfd/
Daxp20x-rsb.c3 * RSB driver for the X-Powers' Power Management ICs
9 * This driver supports the RSB variants.
23 #include <linux/sunxi-rsb.h>
71 .name = "axp20x-rsb",
79 MODULE_DESCRIPTION("PMIC MFD sunXi RSB driver for AXP20X");
/kernel/linux/linux-5.10/drivers/mfd/
Daxp20x-rsb.c3 * RSB driver for the X-Powers' Power Management ICs
9 * This driver supports the RSB variants.
23 #include <linux/sunxi-rsb.h>
71 .name = "axp20x-rsb",
79 MODULE_DESCRIPTION("PMIC MFD sunXi RSB driver for AXP20X");
/kernel/linux/linux-5.10/drivers/md/
Ddm-verity-fec.c62 static u8 *fec_read_parity(struct dm_verity *v, u64 rsb, int index, in fec_read_parity() argument
68 position = (index + rsb) * v->fec->roots; in fec_read_parity()
75 v->data_dev->name, (unsigned long long)rsb, in fec_read_parity()
125 u64 rsb, int byte_index, unsigned block_offset, in fec_decode_bufs() argument
133 par = fec_read_parity(v, rsb, block_offset, &offset, &buf); in fec_decode_bufs()
161 par = fec_read_parity(v, rsb, block_offset, &offset, &buf); in fec_decode_bufs()
173 v->data_dev->name, (unsigned long long)rsb, r); in fec_decode_bufs()
176 v->data_dev->name, (unsigned long long)rsb, r); in fec_decode_bufs()
201 u64 rsb, u64 target, unsigned block_offset, in fec_read_bufs() argument
225 ileaved = fec_interleave(v, rsb * v->fec->rsn + i); in fec_read_bufs()
[all …]
/kernel/linux/linux-6.6/drivers/md/
Ddm-verity-fec.c62 static u8 *fec_read_parity(struct dm_verity *v, u64 rsb, int index, in fec_read_parity() argument
73 position = (index + rsb) * v->fec->roots; in fec_read_parity()
80 v->data_dev->name, (unsigned long long)rsb, in fec_read_parity()
130 u64 rsb, int byte_index, unsigned int block_offset, in fec_decode_bufs() argument
138 par = fec_read_parity(v, rsb, block_offset, &offset, in fec_decode_bufs()
176 par = fec_read_parity(v, rsb, block_offset, &offset, in fec_decode_bufs()
189 v->data_dev->name, (unsigned long long)rsb, r); in fec_decode_bufs()
192 v->data_dev->name, (unsigned long long)rsb, r); in fec_decode_bufs()
217 u64 rsb, u64 target, unsigned int block_offset, in fec_read_bufs() argument
241 ileaved = fec_interleave(v, rsb * v->fec->rsn + i); in fec_read_bufs()
[all …]
/kernel/linux/linux-6.6/fs/romfs/
Dsuper.c461 struct romfs_super_block *rsb; in romfs_fill_super() local
490 rsb = kmalloc(512, GFP_KERNEL); in romfs_fill_super()
491 if (!rsb) in romfs_fill_super()
495 ret = romfs_dev_read(sb, 0, rsb, 512); in romfs_fill_super()
499 img_size = be32_to_cpu(rsb->size); in romfs_fill_super()
506 if (rsb->word0 != ROMSB_WORD0 || rsb->word1 != ROMSB_WORD1 || in romfs_fill_super()
514 if (romfs_checksum(rsb, min_t(size_t, img_size, 512))) { in romfs_fill_super()
521 len = strnlen(rsb->name, ROMFS_MAXFN); in romfs_fill_super()
524 (unsigned) len, (unsigned) len, rsb->name, storage); in romfs_fill_super()
526 kfree(rsb); in romfs_fill_super()
[all …]
/kernel/linux/linux-5.10/fs/romfs/
Dsuper.c461 struct romfs_super_block *rsb; in romfs_fill_super() local
490 rsb = kmalloc(512, GFP_KERNEL); in romfs_fill_super()
491 if (!rsb) in romfs_fill_super()
495 ret = romfs_dev_read(sb, 0, rsb, 512); in romfs_fill_super()
499 img_size = be32_to_cpu(rsb->size); in romfs_fill_super()
506 if (rsb->word0 != ROMSB_WORD0 || rsb->word1 != ROMSB_WORD1 || in romfs_fill_super()
514 if (romfs_checksum(rsb, min_t(size_t, img_size, 512))) { in romfs_fill_super()
521 len = strnlen(rsb->name, ROMFS_MAXFN); in romfs_fill_super()
524 (unsigned) len, (unsigned) len, rsb->name, storage); in romfs_fill_super()
526 kfree(rsb); in romfs_fill_super()
[all …]
/kernel/linux/linux-5.10/fs/xfs/
Dxfs_rtalloc.c36 xfs_fsblock_t *rsb, /* in/out: summary block number */ in xfs_rtget_summary() argument
39 return xfs_rtmodify_summary_int(mp, tp, log, bbno, 0, rbpp, rsb, sum); in xfs_rtget_summary()
54 xfs_fsblock_t *rsb, /* in/out: summary block number */ in xfs_rtany_summary() argument
72 error = xfs_rtget_summary(mp, tp, log, bbno, rbpp, rsb, &sum); in xfs_rtany_summary()
148 xfs_fsblock_t *rsb) /* in/out: summary block number */ in xfs_rtallocate_range() argument
179 XFS_BITTOBLOCK(mp, preblock), -1, rbpp, rsb); in xfs_rtallocate_range()
190 XFS_BITTOBLOCK(mp, preblock), 1, rbpp, rsb); in xfs_rtallocate_range()
202 XFS_BITTOBLOCK(mp, end + 1), 1, rbpp, rsb); in xfs_rtallocate_range()
230 xfs_fsblock_t *rsb, /* in/out: summary block number */ in xfs_rtallocate_extent_block() argument
266 rsb); in xfs_rtallocate_extent_block()
[all …]
/kernel/linux/linux-6.6/arch/x86/kvm/vmx/
Dvmenter.S117 * IMPORTANT: To avoid RSB underflow attacks and any other nastiness,
259 * IMPORTANT: RSB filling and SPEC_CTRL handling must be done before
262 * For retpoline or IBRS, RSB filling is needed to prevent poisoned RSB
263 * entries and (in some cases) RSB underflow.
265 * eIBRS has its own protection against poisoned RSB, so it doesn't
266 * need the RSB filling sequence. But it does need to be enabled, and a
/kernel/linux/linux-6.6/fs/xfs/
Dxfs_rtalloc.c37 xfs_fsblock_t *rsb, /* in/out: summary block number */ in xfs_rtget_summary() argument
40 return xfs_rtmodify_summary_int(mp, tp, log, bbno, 0, rbpp, rsb, sum); in xfs_rtget_summary()
55 xfs_fsblock_t *rsb, /* in/out: summary block number */ in xfs_rtany_summary() argument
73 error = xfs_rtget_summary(mp, tp, log, bbno, rbpp, rsb, &sum); in xfs_rtany_summary()
149 xfs_fsblock_t *rsb) /* in/out: summary block number */ in xfs_rtallocate_range() argument
180 XFS_BITTOBLOCK(mp, preblock), -1, rbpp, rsb); in xfs_rtallocate_range()
191 XFS_BITTOBLOCK(mp, preblock), 1, rbpp, rsb); in xfs_rtallocate_range()
203 XFS_BITTOBLOCK(mp, end + 1), 1, rbpp, rsb); in xfs_rtallocate_range()
248 xfs_fsblock_t *rsb, /* in/out: summary block number */ in xfs_rtallocate_extent_block() argument
284 rsb); in xfs_rtallocate_extent_block()
[all …]
/kernel/linux/linux-5.10/arch/x86/kvm/vmx/
Dvmenter.S193 * IMPORTANT: RSB filling and SPEC_CTRL handling must be done before
196 * For retpoline or IBRS, RSB filling is needed to prevent poisoned RSB
197 * entries and (in some cases) RSB underflow.
199 * eIBRS has its own protection against poisoned RSB, so it doesn't
200 * need the RSB filling sequence. But it does need to be enabled, and a
/kernel/linux/linux-6.6/arch/x86/kernel/cpu/
Dbugs.c1128 * There is no need for RSB filling: entry_ibpb() ensures in retbleed_select_mitigation()
1129 * all predictions, including the RSB, are invalidated, in retbleed_select_mitigation()
1558 /* Disable in-kernel use of non-RSB RET predictors */
1580 * Similar to context switches, there are two types of RSB attacks in spectre_v2_determine_rsb_fill_type_at_vmexit()
1583 * 1) RSB underflow in spectre_v2_determine_rsb_fill_type_at_vmexit()
1585 * 2) Poisoned RSB entry in spectre_v2_determine_rsb_fill_type_at_vmexit()
1588 * the RSB. in spectre_v2_determine_rsb_fill_type_at_vmexit()
1591 * prediction isolation protections, RSB still needs to be cleared in spectre_v2_determine_rsb_fill_type_at_vmexit()
1593 * user-space-poisoned RSB entries. in spectre_v2_determine_rsb_fill_type_at_vmexit()
1595 * eIBRS should protect against RSB poisoning, but if the EIBRS_PBRSB in spectre_v2_determine_rsb_fill_type_at_vmexit()
[all …]
/kernel/linux/linux-6.6/fs/xfs/libxfs/
Dxfs_rtbitmap.h41 struct xfs_buf **rbpp, xfs_fsblock_t *rsb,
45 xfs_fsblock_t *rsb);
48 struct xfs_buf **rbpp, xfs_fsblock_t *rsb);
/kernel/linux/linux-5.10/arch/x86/kernel/cpu/
Dbugs.c1485 /* Disable in-kernel use of non-RSB RET predictors */
1504 * Similar to context switches, there are two types of RSB attacks in spectre_v2_determine_rsb_fill_type_at_vmexit()
1507 * 1) RSB underflow in spectre_v2_determine_rsb_fill_type_at_vmexit()
1509 * 2) Poisoned RSB entry in spectre_v2_determine_rsb_fill_type_at_vmexit()
1512 * the RSB. in spectre_v2_determine_rsb_fill_type_at_vmexit()
1515 * prediction isolation protections, RSB still needs to be cleared in spectre_v2_determine_rsb_fill_type_at_vmexit()
1517 * user-space-poisoned RSB entries. in spectre_v2_determine_rsb_fill_type_at_vmexit()
1519 * eIBRS should protect against RSB poisoning, but if the EIBRS_PBRSB in spectre_v2_determine_rsb_fill_type_at_vmexit()
1520 * bug is present then a LITE version of RSB protection is required, in spectre_v2_determine_rsb_fill_type_at_vmexit()
1540 pr_info("Spectre v2 / SpectreRSB : Filling RSB on VMEXIT\n"); in spectre_v2_determine_rsb_fill_type_at_vmexit()
[all …]

1234567