From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752151AbcIAXFC (ORCPT ); Thu, 1 Sep 2016 19:05:02 -0400 Received: from mail-cys01nam02on0080.outbound.protection.outlook.com ([104.47.37.80]:58000 "EHLO NAM02-CY1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750958AbcIAXEz (ORCPT ); Thu, 1 Sep 2016 19:04:55 -0400 Authentication-Results: spf=pass (sender IP is 63.163.107.21) smtp.mailfrom=sandisk.com; broadcom.com; dkim=none (message not signed) header.d=none;broadcom.com; dmarc=bestguesspass action=none header.from=sandisk.com; X-AuditID: 0ac94369-b97ff7000001694f-94-57c8b1f985ba Subject: Re: Observing Softlockup's while running heavy IOs To: Sreekanth Reddy References: <6b7930ca-092c-a03c-d745-b49153aa174c@sandisk.com> CC: "Elliott, Robert (Persistent Memory)" , "linux-scsi@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "irqbalance@lists.infradead.org" , "Kashyap Desai" , Sathya Prakash Veerichetty , Chaitra Basappa , Suganath Prabu Subramani From: Bart Van Assche Message-ID: <3eab5081-dff4-c7a5-f089-18877bbd6346@sandisk.com> Date: Thu, 1 Sep 2016 16:04:45 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFmplkeLIzCtJLcpLzFFi42LhOum8SPfPxhPhBosPWFq8fbuZyWLG8Tls FpeP/GS0ODD/HKvF5V1Abvf1HWwWG+bdYrGY+fUpu8WzMzEOnB6z7p9l89i1q5HdY/OSeo/P m+QCWKK4bFJSczLLUov07RK4Mt6fNy54KFbxpfUwYwPjSqEuRk4OCQETif8/FjOB2EICS5kk nu9m72LkArK3M0p87rnKCFN0c9k/qMRSRokzvy4xgySEBawlVjT8AOsWETCSaDpzhBli0jMm iZYN+iANzAL3mCXOvj8DlmADKvr2fiYLiM0rYCexcep6NhCbRUBFonPZJrAaUYEwiWl337JD 1AhKnJz5BKyeUyBQouPVAVYQm1nAQmLm/POMELa8xPa3c5hBlkkInGSVuHDgAdQV6hInl8xn msAoPAvJrFlI+mch6V/AyLyKUSw3M6c4Nz21wNBUrzgxLyWzOFsvOT93EyMkcjJ3MN594n2I UYCDUYmHd4P+iXAh1sSy4srcQ4wSHMxKIryP1gGFeFMSK6tSi/Lji0pzUosPMUpzsCiJ87rd +xImJJCeWJKanZpakFoEk2Xi4JRqYFyRbHhr4so2Y9fIJdu0X0hJ6uQLdmb3GKduDngVrfVZ kUfohFOMgUjwh8i4sI1Zea1pGkb75x5+YS3EaKA9Z+vaA4pVBjbxk975Fgrt2arHV3j+1IPD zgIl7/vWadz06twmr9U1b2939c3lb/ncH88pPdbB+N9matQ5QS3ViB2LOSNyn3PlKrEUZyQa ajEXFScCAMzU/sqYAgAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrFJMWRmVeSWpSXmKPExsXCtZEjRVdgy4lwg2efWS3evt3MZDHj+Bw2 i8tHfjJaHJh/jtXi8i4gt/v6DjaLDfNusVjM/PqU3eLZmRgHTo9Z98+yeeza1cjusXlJvcfn TXIBLFFcNimpOZllqUX6dglcGe/PGxc8FKv40nqYsYFxpVAXIyeHhICJxM1l/9hBbCGBxYwS R/95g9jCAtYSKxp+MIHYIgJGEk1njjBD1DxjkmjZoN/FyMXBLHCPWaJ32242kAQbUNG39zNZ QGxeATuJjVPXg8VZBFQkOpdtAmsWFQiTmHb3LTtEjaDEyZlPwOo5BQIlOl4dYAWxmQXMJOZt fsgMYctLbH87h3kCI98sJC2zkJTNQlK2gJF5FaNYbmZOcW56ZoGhoV5xYl5KZnG2XnJ+7iZG cOhyRu5gfDrR/BAjEwenVAPjhN47DMEF1u0zlY6J3uh99y/wokT1E2G+PdJOlRd/5Lfr8a8v uXzrnd/BQ7wbhQ4Wxx479PcX+/9jB5YXlG8XXqzJViwsvJDzMOsEy+9V99x8m2zMApY/3XJb ejl/91axWjGerg1Na4Xd06qvWD7JXlzQnHX61useO6bu9PzT36Y+X/9wG5eREktxRqKhFnNR cSIAUSUq6w0CAAA= X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:63.163.107.21;IPV:NLI;CTRY:US;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(7916002)(2980300002)(438002)(199003)(24454002)(189002)(377454003)(69596002)(8936002)(81156014)(81166006)(8676002)(68736007)(356003)(93886004)(106466001)(83506001)(77096005)(33646002)(53416004)(2950100001)(92566002)(31686004)(626004)(4326007)(65826007)(5660300001)(189998001)(64126003)(2270400002)(2906002)(31696002)(50466002)(7846002)(7696003)(305945005)(65956001)(65806001)(47776003)(586003)(23676002)(76176999)(11100500001)(87936001)(110136002)(36756003)(4001350100001)(230700001)(97736004)(54356999)(86362001)(50986999);DIR:OUT;SFP:1101;SCL:1;SRVR:BL2PR02MB402;H:milsmgep15.sandisk.com;FPR:;SPF:Pass;PTR:InfoDomainNonexistent;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BL2FFO11FD042;1:flR4JnHC7WRiGgyUDKt+dRyFv9YRdpa6rHDSKsUy3Nd35Q/Y6xtYXZdbkbbkfsRmfJrR/Y1RjzTPg+yTHintjCqkoZbA/yCAofifjJztx8UV+ACz+tvdbsRhS8cb2nR+6N6djxQgiqsVNXXdc/5t0NCas5S2kWfnNQB8mLEDIa8Ik33wT4Xqf04hkJMiHu5KZ/TTGllZhVNTFiIyb8kHER/hzwit0oUvWYqEhxPPWzpZEkyu2em8YYe2Iu3Wei/QNzRfa8CLrLdGT+5FEPgSVRZW9C1QY0oPP6OkgS/uq4JBA4o77qW8tENNmYC+sIWeitysFFXLdfGagxAGirmXL21dZPY/bP4MkJnZWHgBpKtBhC6WWthOIpwlrs2EsEvo8RKEiUsGe5fGmmwRteyyBiQq2L5XJnIBS74vt6OPctLNK9f/0xAD3/vYolAi2/yQdssWqH5ujVP6M+8bXUwyJpHbalkfJnWtDXfw1bRJnBQ= X-MS-Office365-Filtering-Correlation-Id: ab063e2f-c8ea-42ae-45cb-08d3d2bc61ce X-Microsoft-Exchange-Diagnostics: 1;BL2PR02MB402;2:yS9SfMNFpchZJIoXc1TWmxmaTffOkdbQvXSwHlkt0jLd9+Sk6XzXMVVka8z6WrNOA9QzSPBVpzR8Lvz9KQSbJ59RBUMSgcIJqgJOCSetni4mq7YF+gXB+L/z55j+d08Lz6zG9qqZMrdOqgnBbap92G+MCCY51ts4aA8B3NzyA4SD/QJ9jcqoOFY0lCBsp0hw;3:E2cQ0EWLKokshyT9ipDxrdDTvQ0rU41d382dSzPohgAYL7Zz6KoJrsNjOPffME1xRxMVrPRKWLaTEPEDXFVrO8gyTY84UbB2O20lS+AVtUnxukXlXOtEHKQ5R72zJHNU3LZK9l1b3eee9cvg2bU3qVqUbnOFmVJkCTV9iWLkJ8SxIk9N094I6pFkFuDxmNb+MjIICrzyjQ02pyS/7i7FtpzxN4ELcgOAwKwhYMjOBWooJf/jMcvyO70UUTtstTmOJptQZYxcUj2qZw0SVJZ6Zg== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(8251501002);SRVR:BL2PR02MB402; X-Microsoft-Exchange-Diagnostics: 1;BL2PR02MB402;25:6toci9BmOaz0nO8G1yew1Sjza6cSLAw0yElB7xsNGNfOMfjcuoxQXx/Zi1uh9faRtxCUKPqj6+OYoo0Oomfreae9HcTMKWj/kfHRPLOQzH0HSSm46yxmeOOYLsKaRGDoD3fMwVMhiM5d4txQFWZpP/ik6zMFyBYDlOcTdaf8J/agshPil+NNLwO2C22RBkdt6kw8ud4niamjkqU3/2o0HKRjHMLSaeT7CaXCi+wph4pAjO6zfY8O/M+f2joCju2SCwUlPvstm9QuOUdGFhnA86RV2Lb/BxQ4BjOdWNzpzC2AM8QkwCiTYtXAntoZwt58sKnkcMMzERZBLe5K79NfioiMKQymbAQMdA5mUY9o0NfJyozBhGzRhvFrUCeWzrk0cTuumQg41OclSqJyrGfOLe2RNAL7l6gut608ZTE6gQOko2vv0Hr2dBR5F0V45rLb8PYe01sFyyRe0+w2Q4FlpCzB2EYBmnOLUetWjFXi0JXHtSNAHtvb93nN/QJXicpsjZFlNbSPsG25KPKDqpHI+WSipytbDR3ivgB2jsGVfUsg7cgn+4oHuOQ+TBsmY/AU/QqGHxfADvsB0qsqP9n3AObWbAIYELbWOuxYiIJKrK9y/eNVO+S+QyTH4p1gLAGYZU8jFtKwMmyo6qcMpbuLctRTsVYcY6YWApZYMvmONDGtaEhYWaQAmO1VzaqtEt04I+/nxhbYG2gR+WFBKO/Dxwk0hR56yWdC4jfiwTInGsOaixIvOTQ5AitvEk1a2wq+CSh74QT9VIiG5n+E9i8C3w== X-Microsoft-Exchange-Diagnostics: 1;BL2PR02MB402;31:yZ+2JyTl7DA2/vWH8nWWBTvDNEFQBaRQRaye/Mx9XOWEUOiLcjpm48kN3iAU/ZTfY5KszVfGjtbPe45DvmVrnkmqBSUj3it3AW391l6kwEulCFQfrXAGytrrl3sfqg94R8I2Kf5Y70CojjmqaXHhpbT7PQcNEBuO/2mQrv6UvrH4szYlB+M0GankVEBEqQTtY768ESS5ev5JB6Meq64nor/WGaUIqizUHHpTFt7hVJU=;20:jdkiXYI9HvzjceIsZWq0PzL3sO3CWf4Zjw0onfvUSrgvVoz6H+LIzMEW4XWxwmsrbGrBqcDJEitOYvr0EMlMLzC0hJB33/RgMSiiqgTAaWVVAc9G8zzZF1XHc8ELGwHEryUAEPVnCUJI/tJsIqUFuMya+yxGdrDh0LuFAPrEnO+WpeW/UMrDBNtYyo8tayiNjoskckbzX5wDPhtyAIqrcv106ZSSM5+v6/ktevztbbuQEb6VphlYBttyN+VBISrtFCfyTcGZBcQkQxuNcDUJBSNScgJM2wbcfwT7fCDYkqUkCoLHWKJBx9GGeZnaq3osuuPmE9tksAlT1u8D86HRJfKNWQ3LHBDXouNWV+pdqmPlV6c+CRryZCyZyJaKluTQQDaG/U7NMDFG2XKrvKGtPfZWTM+2L5ZcwfcPQtTMdUfSdF9s0dryBWDwag65sPFs52gt0Cg7h8hgHu1GJrSq2J141e007WawAMf5cFOZlFkrB585mJO/agTSkKT7os1B X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(190756311086443); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040176)(601004)(2401047)(13018025)(8121501046)(5005006)(13016025)(3002001)(10201501046)(6055026);SRVR:BL2PR02MB402;BCL:0;PCL:0;RULEID:;SRVR:BL2PR02MB402; X-Microsoft-Exchange-Diagnostics: 1;BL2PR02MB402;4:4HCshneURrNQEXIh96pnQgtfAw9LvktGfIbYT6T1ketWvpcjZYxV8ugzDBOVMy2M8DZcRT99pBcqYhi85b0uNkT51DdH1yp/zzsK/MYAg+PdTWv7rkMF2EwWH39P4lJm1jI6OZCh7obwiuCDpgB9z5VZnfoIM1dkEW9ptmiIFXihnLizrRQiElNTyzJCef9hd4mfA6yovnq7/1ohBPDBomj4mcq/Md3avJOyVHIXzuJFLvMM0iRPYchuRifuzo3v1PVeXTV6fUcMCA5gKDqSFmJNIdlFRgipY7OsCtc4dqPMOUzi0Ubjj411IjwchYnzG0KQjU3qc3hAXTPCYhb5Ovv1buHN15YtmgRtw4RvSTDu0URhxczjMS1W+oE15V8P5fX9A3mosvHzedFaEfRQS0eM/FWYj7qM7C/BhiWLBMHv7VuXmeqax2jxN159xxyRtgQlgI0acd+hTEFzfsm09binESsAONmutIcLaz0gdeY= X-Forefront-PRVS: 0052308DC6 X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtCTDJQUjAyTUI0MDI7MjM6T2ZiN25GRURDNmNKMkhZUDg2aCtncEptTDFE?= =?utf-8?B?NXdkVWpyWEpaUFRNQ21iS3RQa3UwYVF1WWxxbE00eElDMU12ZHRlU0VsQzBQ?= =?utf-8?B?QUN5QWYzYUlzZjhXbUxyUTRRc1llbWNDbDV3eVRuSmdFTmVsTjJkYk9sdnkr?= =?utf-8?B?NEorc1NVZTg2VkZVNGFMTXNVM08vTzdqRllZODVJNGhEK1BBbU1ybjJNMnVm?= =?utf-8?B?dURzMG5rVzR3R2NPTlA2V0FxZm9uZ2FPOXlGQ2EwVVNWNEI0TTVKRzJvU0t6?= =?utf-8?B?RjIzVXJOYW9oOXc5V2N2Z1RrTzMwcTVCU3UvQXU4bW9HL0RqdjNLaGZ3NFBZ?= =?utf-8?B?bjNTUC9EQTFTbVdTUTNiZmZHV0V2OVB2KzhmRUVldXcwdUNXWVlSeTQrd2Zr?= =?utf-8?B?WE5VWGdaTEt5c3JrNzMvd1hFRG1VRkF4WkhucmhsS3IvdzB6cnF4eU9meU1X?= =?utf-8?B?OG5majJzdnExd0hwbkdTdGpqVXp0N1RXOVhUS1hKb0dkM3ltL29lNW9hYzY2?= =?utf-8?B?bFBSTCtzT3VGZDdqdmNPVmZvVjNlMzBvTVFBZWI3dTRXZ1FnVys1b0lsVG0y?= =?utf-8?B?WGI1KzRYK0diWnp2TW9OakpLdDZBMWRCMERpcHE5eHRzaEVPYzgrWXZ6UFVo?= =?utf-8?B?bHdUT0tPNU0wMjlkV1ZJMW9yeDN5V3E0NVloSTRtQWgwVEZDeFBQb1BxMmN4?= =?utf-8?B?cTVPK0J6eHF1U1JoZDk2ZmFvRUVmMS9ERFRQcTdWS2xjbEFCOFl3cFpmWFk4?= =?utf-8?B?SFQwRHFQelFzMkUyeGo2NzFjTWZoLzRvOU4zdFcxeG4raWR3VzhlQTE4VHJZ?= =?utf-8?B?bVN1UzY5R1hjYWI2MnhldFRDRzV1b3FGVHU2aExCVlpOY0pUK0RYbVFFNGRh?= =?utf-8?B?Qm1uUStEU0JRVGRsaWxvdmpsdk9saVVWbzl1SUJYZXJkWXNxdzBPQjdqQ1JO?= =?utf-8?B?VXNETWtpckdJamdRQUYzaWFiR204cnlmNUlwNmN0aDh6QzFaRDRvLzlCaXRm?= =?utf-8?B?NCsyOW0xYW9YZG52VnFPRXhHN2VRY040NnJRZTRTSnFZSjZubGtESW9LNUlr?= =?utf-8?B?VndueFJUUG13VE0rZjJXNDBUTmlmZ3E5Y0trVUdpOWIwY2FXUXUvODVidHgz?= =?utf-8?B?Q1ltekR5NUtxcHJyTHRLMnIzaEY1dHVJVG5aZDNld1VkUmlBanRSbGpNUlFC?= =?utf-8?B?ak9jYi9DaGllQmplS3gvYkxaWU5kd3hlbmpyNFBESWpPTzNzVWFubkpJbTgv?= =?utf-8?B?OGxzNFlseUtmc0F5NXpxbVNURjZBRC9Pc1RrdmNOUGNpbEdZbG1JaEphb0Qv?= =?utf-8?B?Z0FXdU9wcHE3MzQzVUEzZlpvN2FNL3FlWGhabXhCLzJ4NzlNWHllVW5YNm00?= =?utf-8?B?Z05WT3V0WUxKVXJvWFFKdTZ3ejRDYmVZU0FKMHVDeERlOXlYUmJ6UTR2ZzFT?= =?utf-8?B?LzdhaEF6ZlpwdVg0MXduVWpnazA3MkxlbXNHaHZGNlp6TU9tRW9QdWg0UFlR?= =?utf-8?B?TkpXcDdrcUhtTHZucVlnSG1jUGV3bVJrU2JMV1RFaHFRM01jcytoeDQxSTdi?= =?utf-8?B?TjlwaGRHcUFaVnFMaS95UHhadE9kcUxWcVY5dlRhNVVPbnQ0NGk3Uy9ub01L?= =?utf-8?B?K3ptSjJuU3pmdzRxSkJKeWFUTEVGRWU4bjlSWk1scld4cXFOWld6YysyZjFM?= =?utf-8?Q?IZGXBHPVzKvkj3OEQ4bHkobUuhrNjx4E644dXu?= X-Microsoft-Exchange-Diagnostics: 1;BL2PR02MB402;6:6/59YOqmdB0kWi3VMfnrc9sxhxUHDuK3ShFVvMBEZccqZzZE2t+D6RB8VZc1wXfhgmpSkyOO6zzvVG/4YhjrdZUBuImqrZytmG/MNk4VqUJq2ZcE5y+f449QM/UFveCxW4wKMhQTdSqT2vvsrMnWoUMxVkI8nk1ajOw7Df7ANhkFTusOTffZ53wArJX//jipTXJr2eeKqxTVIzno65IbBP2r9deDQZSKNQ3Z4ZbEcBwB2kw0uF9SQvwBKqTAdCoV0aQGUPkWcZHrR+DZgyO7s4fh8RbtRfNIZSiMa3FD6MnMiYsGsDvx9mc09yteDrDw7cZDx2Q59oCNbe34oz40eQ==;5:J6rqt8IR2xm5CIdTd4v01cWbPdugM7ugjxxoboZNHvWcoCBWIJq82t/SsjJlR9MDhQYOjwGPqlXvRC+iJFbv9T4VXDVAec55tAmy38H0mPH9y26Rwn4hjpLTgs8s15Mqqjd9IZHuQt2vHcRZXVkCSQ==;24:wGUxq8MtT8SeKV2RcqKJ3iI/TzMFCnGPHnu16Njxma6n51uhbagfm2/S+F0qqSjbDZ/DgQRwYafKYSHvoUhMbFjPqBKaOl5XCtaYFq9IMyA=;7:9xnXQ0R6lPLqHcxbBlIlDo5ve3ixEvh0PFBKjUSu2UjInqm6bXx7ys6UkV3nOyECHSPaI/AnQQOlY6h9AWXVbzMFSJYmk+OJ+6albJ7FqhCcFEg240xh1py5sfuwm7Y38xvKCSdKAthkb43AQ66/6LAGElQjwUnjciaKWjvv6iN4vy/Mksi+WeyQr9ThzUr/ad9L/od4A0I7KbR5bSUoWs+bZW5ymIMUguI98BWHkggL6VasMouX6hhlyKwhyQZv SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;BL2PR02MB402;20:fluELdQmzxsgUvem8fgtotj1yvWNdOVABvUSCDriIlphLsE7Or8YAZQwJ9tf8Dl9FvCXqoeDdX9LpOt74GFJtH66chchd83zjP9864EP3/MUtsOu+E5CQXpXil+nlPsX5sNS9X6C3r1XXLFLfekrFpmGmV9R9yNtu28+UWeTICxpwQH0yk30pB8W6B+iX5LQPeO+jjJdTElvOrxbh6oyO9NENIeBWDmmbH3JijMSLCFW0gt9zFhHRHeg4p6E2ite X-OriginatorOrg: sandisk.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2016 23:04:51.7540 (UTC) X-MS-Exchange-CrossTenant-Id: fcd9ea9c-ae8c-460c-ab3c-3db42d7ac64d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=fcd9ea9c-ae8c-460c-ab3c-3db42d7ac64d;Ip=[63.163.107.21];Helo=[milsmgep15.sandisk.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL2PR02MB402 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 09/01/2016 03:31 AM, Sreekanth Reddy wrote: > I reduced the ISR workload by one third in-order to reduce the time > that is spent per CPU in interrupt context, even then I am observing > softlockups. > > As I mentioned before only same single CPU in the set of CPUs(enabled > in affinity_hint) is busy with handling the interrupts from > corresponding IRQx. I have done below experiment in driver to limit > these softlockups/hardlockups. But I am not sure whether it is > reasonable to do this in driver, > > Experiment: > If the CPUx is continuously busy with handling the remote CPUs > (enabled in the corresponding IRQ's affinity_hint) IO works by 1/4th > of the HBA queue depth in the same ISR context then enable a flag > called 'change_smp_affinity' for this IRQ. Also created a thread with > will poll for this flag for every IRQ's (enabled by driver) for every > second. If this thread see that this flag is enabled for any IRQ then > it will write next CPU number from the CPUs enabled in the IRQ's > affinity_hint to the IRQ's smp_affinity procfs attribute using > 'call_usermodehelper()' API. > > This to make sure that interrupts are not processed by same single CPU > all the time and to make the other CPUs to handle the interrupts if > the current CPU is continuously busy with handling the other CPUs IO > interrupts. > > For example consider a system which has 8 logical CPUs and one MSIx > vector enabled (called IRQ 120) in driver, HBA queue depth as 8K. > then IRQ's procfs attributes will be > IRQ# 120, affinity_hint=0xff, smp_affinity=0x00 > > After starting heavy IOs, we will observe that only CPU0 will be busy > with handling the interrupts. This experiment driver will change the > smp_affinity to next CPU number i.e. 0x01 (using cmd 'echo 0x01 > > /proc/irq/120/smp_affinity', driver issue's this cmd using > call_usermodehelper() API) if it observes that CPU0 is continuously > processing more than 2K of IOs replies of other CPUs i.e from CPU1 to > CPU7. > > Whether doing this kind of stuff in driver is ok? Hello Sreekanth, To me this sounds like something that should be implemented in the I/O chipset on the motherboard. If you have a look at the Intel Software Developer Manuals then you will see that logical destination mode supports round-robin interrupt delivery. However, the Linux kernel selects physical destination mode on systems with more than eight logical CPUs (see also arch/x86/kernel/apic/apic_flat_64.c). I'm not sure the maintainers of the interrupt subsystem would welcome code that emulates round-robin interrupt delivery. So your best option is probably to minimize the amount of work that is done in interrupt context and to move as much work as possible out of interrupt context in such a way that it can be spread over multiple CPU cores, e.g. by using queue_work_on(). Bart.