From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752710AbcCKMAE (ORCPT ); Fri, 11 Mar 2016 07:00:04 -0500 Received: from mx2.suse.de ([195.135.220.15]:35431 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752073AbcCKL7k (ORCPT ); Fri, 11 Mar 2016 06:59:40 -0500 From: Juergen Gross To: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Cc: konrad.wilk@oracle.com, boris.ostrovsky@oracle.com, david.vrabel@citrix.com, mingo@redhat.com, peterz@infradead.org, Douglas_Warzecha@dell.com, pali.rohar@gmail.com, jdelvare@suse.com, linux@roeck-us.net, tglx@linutronix.de, hpa@zytor.com, x86@kernel.org, Juergen Gross Subject: [PATCH 0/6] Support calling functions on dedicated physical cpu Date: Fri, 11 Mar 2016 12:59:28 +0100 Message-Id: <1457697574-6710-1-git-send-email-jgross@suse.com> X-Mailer: git-send-email 2.6.2 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Some hardware (e.g. Dell Studio laptops) require special functions to be called on physical cpu 0 in order to avoid occasional hangs. When running as dom0 under Xen this could be achieved only via special boot parameters (vcpu pinning) limiting the hypervisor in it's scheduling decisions. This patch series is adding a generic function to be able to temporarily pin a (virtual) cpu to a dedicated physical cpu for executing above mentioned functions on that specific cpu. The drivers (dcdbas and i8k) requiring this functionality are modified accordingly. Juergen Gross (6): xen: sync xen header sched: add function to execute a function synchronously on a physical cpu dcdbas: make use of call_sync_on_phys_cpu() hwmon: use call_sync_on_phys_cpu() for dell-smm i8k virt, sched: add cpu pinning to call_sync_on_phys_cpu() xen: add xen_pin_vcpu() to support calling functions on a dedicated pcpu arch/x86/include/asm/hypervisor.h | 9 ++++ arch/x86/xen/enlighten.c | 40 +++++++++++++++ drivers/firmware/dcdbas.c | 46 ++++++++---------- drivers/hwmon/dell-smm-hwmon.c | 27 +++++----- include/linux/sched.h | 31 ++++++++++++ include/xen/interface/sched.h | 100 +++++++++++++++++++++++++++++++------- kernel/sched/core.c | 30 ++++++++++++ 7 files changed, 224 insertions(+), 59 deletions(-) -- 2.6.2