Messages in this thread | | | From | Andi Kleen <> | Subject | Re: PERF_EVENT_IOC_SET_FILTER has different values based on bitness | Date | Tue, 07 Oct 2014 17:54:45 -0700 |
| |
David Ahern <dsahern@gmail.com> writes:
> On 10/7/14, 6:50 PM, Andi Kleen wrote: >> David Ahern <dsahern@gmail.com> writes: >>>> >>>> diff --git a/kernel/events/core.c b/kernel/events/core.c >>>> index 963bf139e2b2..c805132ac1cf 100644 >>>> --- a/kernel/events/core.c >>>> +++ b/kernel/events/core.c >>>> @@ -3714,6 +3714,7 @@ static long perf_ioctl(struct file *file, unsigned >>>> int cmd, unsigned long arg) >>>> } >>>> >>>> case PERF_EVENT_IOC_SET_FILTER: >>>> + case PERF_EVENT_IOC_SET_FILTER_32: >>>> return perf_event_set_filter(event, (void __user *)arg); >>>> >>>> default: >>>> >>> >>> Oh, PERF_EVENT_IOC_ID has the same problem: >>> >>> #define PERF_EVENT_IOC_ID _IOR('$', 7, __u64 *) >> >> The right way is to add a compat_perf_ioctl() > > Sure, looked into that way as well. But SET_FILTER and IOC_ID will > still compile to the same values for a 64-bit kernel.
Sure you have to add/use the new defines too.
-Andi -- ak@linux.intel.com -- Speaking for myself only
| |