Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 11be1a7b authored by Robert Richter's avatar Robert Richter
Browse files

x86/oprofile: Add counter reservation check for virtual counters



This patch adds a check for the availability of a counter. A virtual
counter is used only if its physical counter is not reserved.

Signed-off-by: default avatarRobert Richter <robert.richter@amd.com>
parent 61d149d5
Loading
Loading
Loading
Loading
+1 −3
Original line number Diff line number Diff line
@@ -435,15 +435,13 @@ static int nmi_create_files(struct super_block *sb, struct dentry *root)
		struct dentry *dir;
		char buf[4];

#ifndef CONFIG_OPROFILE_EVENT_MULTIPLEX
		/* quick little hack to _not_ expose a counter if it is not
		 * available for use.  This should protect userspace app.
		 * NOTE:  assumes 1:1 mapping here (that counters are organized
		 *        sequentially in their struct assignment).
		 */
		if (unlikely(!avail_to_resrv_perfctr_nmi_bit(i)))
		if (!avail_to_resrv_perfctr_nmi_bit(op_x86_virt_to_phys(i)))
			continue;
#endif /* CONFIG_OPROFILE_EVENT_MULTIPLEX */

		snprintf(buf,  sizeof(buf), "%d", i);
		dir = oprofilefs_mkdir(sb, root, buf);