From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933835AbcBZTIa (ORCPT ); Fri, 26 Feb 2016 14:08:30 -0500 Received: from mail-by2on0069.outbound.protection.outlook.com ([207.46.100.69]:28016 "EHLO na01-by2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751364AbcBZTI1 (ORCPT ); Fri, 26 Feb 2016 14:08:27 -0500 Authentication-Results: spf=none (sender IP is 165.204.84.221) smtp.mailfrom=amd.com; alien8.de; dkim=none (message not signed) header.d=none;alien8.de; dmarc=permerror action=none header.from=amd.com; X-WSS-ID: 0O3655Y-07-A0Z-02 X-M-MSG: Subject: Re: [PATCH 4/4] x86/mce/AMD: Add comments for easier understanding To: Borislav Petkov References: <1455659111-32074-1-git-send-email-Aravind.Gopalakrishnan@amd.com> <1455659111-32074-5-git-send-email-Aravind.Gopalakrishnan@amd.com> <20160223123530.GB3673@pd.tnic> <56CDF5E4.4000206@amd.com> <20160226174402.GF28911@pd.tnic> CC: , , , , , , , , , , , , , , From: Aravind Gopalakrishnan Message-ID: <56D0A2A4.6030406@amd.com> Date: Fri, 26 Feb 2016 13:08:20 -0600 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0 MIME-Version: 1.0 In-Reply-To: <20160226174402.GF28911@pd.tnic> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [10.180.168.240] X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:165.204.84.221;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(2980300002)(199003)(479174004)(164054003)(189002)(24454002)(377454003)(87936001)(23676002)(3846002)(50986999)(65816999)(87266999)(105586002)(11100500001)(1096002)(54356999)(76176999)(110136002)(36756003)(93886004)(189998001)(86362001)(1220700001)(47776003)(230700001)(65956001)(4326007)(5004730100002)(5008740100001)(2906002)(586003)(6116002)(83506001)(101416001)(92566002)(50466002)(4001350100001)(59896002)(106466001)(77096005)(2950100001)(64126003)(33656002);DIR:OUT;SFP:1101;SCL:1;SRVR:DM3PR12MB0858;H:atltwp01.amd.com;FPR:;SPF:None;MLV:sfv;A:1;MX:1;LANG:en; X-MS-Office365-Filtering-Correlation-Id: 33130c42-28ba-4a90-9a79-08d33ee032ee X-Microsoft-Exchange-Diagnostics: 1;DM3PR12MB0858;2:VqDMbrTqVppd/LH8Dr5D3BUQw2440xmdWF0UGKbgW5SHp85dyT4p0m2QB2fvoRSrMtZHfaRGeh9gHuU5CP87lUHHq5nwQhYQFsBy+ACcJ54gHV/LdV4tzus9zFJGBqZdQLQGU/53MrZOE50q1iFvC2gu+tXhnxKFkaeCOfZ/a7tfcMmvOVW5D6otL8x8ihxc;3:sN5ylmiNKjtt/XEfUL6kQTjCyMsa19dhmCJa9PqN0CZsZT2DD17R0R8rSoXKMKoMBA18Mo7iA2+UwjxDfoPRcREP/KzC1HrKfIHNyulHQdZ2KjvNsf8w81IPKyIzExHKmRzUbu/c6X3mIOx8Dc1AlHvJ/RY32qpyT2VEgaehHxZfGIPm5LbJ4qRaaRD4k9kE/IwWWxCiZZmKfp/6cJ9wAasPUv8Fa8cbBDCM5birhH0=;25:OaxKzW0uArHa2v/ECXZcp+BCP4WrOXSF0jvQ5vp8zFSNjRoyT3i8CJqzMh7/zr7r73awpFBL+3vce9ZuOfYwAdH6qMcbU2kqTbRCgsU1uNDeiWWEslMWD5Bs3JE4jOvLejvf5Lij62EF3rXUM7K5dQceAProF2S+fYLppxpaVtWCg4uOaN8I9MbXaOB5Kg/IDiGk4q7BbICz9sh1qOI4rZLEQgUikDw7PrikHxe4Tqi/8H3ZMTawj9h1waj1Mm7EnJt94m6N8fGRxBtwgTIWyCHGGoGioBMG/146oVz4feraZDNvHk5NYwc7UHlPkvsb+hUEQjzaw6Bj00OViF5foBx6bidOjzFUsVZ3exgyvvw= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:DM3PR12MB0858; X-Microsoft-Exchange-Diagnostics: 1;DM3PR12MB0858;20:gJE+ghsakBRnlSRrdl2TEOTQLvwjm4tYDtpsiA4D9r0umzAxjflmU1UU3uNohqVP++kyE1IM/ATDTdhc/Btj8cDM/l8nT7LYeCZENtIsTSsAdge+494aQvxSJZy0cI1LUCb+7LoWW+jH5m8PfwbrDqffGKi7w90pJl74TiUr48OBOAXV8miW/e9tjDO4hHWBTWP0yeo3tOLctzYEt5NWt9sAdGwVn6iMwla4Yu37rMwNBHfVbabvuD1dvGVn631lVfymJlhOBgnSKXfKGzhUtAjGRqscW2zhQtYBdKhGfGUFtiOP6qVnviQzgTqfmP+RVbx2xK/AbAKgRf81cTvIi4luZOhBa1rUBo4nFdvOF6vKo7PuEyU0KootL+KfV2OonMLuinFvijwqAC8g8eBL+EECV67mh1sFQR4nm87F9RG0Dpk50ubYucRwmvpMbljQWG1obVIzXOws/uks8iMMKeIp9cR9L91Mu0he1I1asL2rwq8cuN9WvOSukHhpGcd6 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(5005006)(13018025)(13017025)(13023025)(13024025)(8121501046)(13015025)(10201501046)(3002001);SRVR:DM3PR12MB0858;BCL:0;PCL:0;RULEID:;SRVR:DM3PR12MB0858; X-Microsoft-Exchange-Diagnostics: 1;DM3PR12MB0858;4:1idLpOSRX0sIsUE78a5avUQNoCPZ9utOluUB0bQhTD+YoIkgSwd1ZM5E6weUCyAnhqRinAkne9WUndwGCZdqeVq3xRaoOPITDiApuIZn2CXZGaDgQqXVCdCStFf9KWh0tr4KW1IvATsENEOgNz5aArVNme+3gLptkCYwKllZV4kyxiAQw3i553NlNG+iEWDG5PB/FihQrTgjZH0t7N/tUv2/N0inYJOeEITkWJOFjAOhLtDMpS1cz4faAIGlZXsqQhqwGhVhVxjuNz7cb90oYAiFNKaVTrjOCdctEu2ODvsxoEJSFar3jkDszSnDriS+ot0WJeCRF+CaXmPDHoEZk1R6F2YHKr9SlePVIvDFly7aoq7UHhC6hdgtMYQDkYGp2nmGhBh83ke1w6/hny19xcI04QhjPRCYltQEN6JEMXIsznMkDLQLzBQmOEPZKDv5zgjXYbODGNxoMmuWw3d/dw== X-Forefront-PRVS: 0864A36BBF X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtETTNQUjEyTUIwODU4OzIzOjlVc0tlNFdSUnhNS3E0ampPTUMzL3Q1dlpj?= =?utf-8?B?K1BRbmhoVWxYZU5nR2JpWWNwR1hGZUs5SWRmVDF4TVlIcDNjUUtTY0RoeGh0?= =?utf-8?B?ZlVYc2RWZGFsR0lKK2ExNkxLU1RyTHZuVTE4VTd5NnBZWXh6WTlxR2pMOXda?= =?utf-8?B?RlY1RWo0emZVT0NrdnBjaUZCSEpNNDcydTFuaFMray9YM1l4VFBDTWl3c0Ns?= =?utf-8?B?VFQ4d0dJV2xjemNBaHJrRDNGMmlkY21GcG9wRTRlZk9YYktQa0JvKy8zV3lL?= =?utf-8?B?ZFlGZk9KcVZHbnZQVGpxSytJeGlBQ0VvMVZ3MExTSDN0ZTFuUy95TG5BRDFw?= =?utf-8?B?ZU50bFh6YS9lYTlVMmRDajlwWDZaOWxWUENMSnNSQjhJaFJjekYwMlY4c3ZF?= =?utf-8?B?NWt3azhwVUlVSXg2dFBPTWtJSUJlem0zNTZQbDIvSGQrSGhHZWpwZit3TSt5?= =?utf-8?B?Y0tYNEZEbGI4QUhPOGdCK1RqQm1oWkNSUm12T2gvNnZpTFlSZXJGaUdjT1pa?= =?utf-8?B?UVUwdjcyOXJiVlVaZmJDY2J1OGcvbExKaWdFQXNEVVR0djFoRnQ3TDRINGhq?= =?utf-8?B?Z3VwNlhDcFh5SDB2R3JlVHpNRForS1BwYlRCOUtCUTBKZ3JqamZVK05GTjNS?= =?utf-8?B?bHZqdFUyUXNWYnpqcnpLdmRNUmkwZWlod3Y1dWd6SW9vbVNodnRFMm5JMzdu?= =?utf-8?B?Qm9vY0FnMk43NlNpTzJXemlXa1J0QU1DL25hbGdMQ0Fpc29sRUZ0MWg1SFpi?= =?utf-8?B?dWJEU2hYaDdZdjhGVzdYZjd6QTZTK1VhaUJwb01XRFZlVlc4dmxQMTJ5N0Zn?= =?utf-8?B?R1QybVhkZkYyNkVJaDRlL29ycmQrb0N4M3NGbXZPWnAwVVpBK1B5cHU1c08v?= =?utf-8?B?Tk9QWFg5RVB6NGdXalo0UWpWeFZJeFJWWXp4MWlvTzQ3R0puejB6c2l1THVO?= =?utf-8?B?OG5yMVFUSDZjeUhmTTB1K1FtTEtyKzByL3R2R0NFcGdSSUx5VnBvcWhPajBx?= =?utf-8?B?TzNDRDd5aDJyaUJCMW4vbjhETFpTOFZPRjYyNEphV2t1V2UyZmIzL21TRk0v?= =?utf-8?B?VGZJK0JvT1lGT2xCaU1KWVErZXR6dW1zekt6NUVVZk1GaFZpb05UeFBaY1JK?= =?utf-8?B?UWpPRHovUkZNRUxqV05BZ203cG5WdFJlWGUvUUZJNjlpU2dsRzVmTDZxbGtp?= =?utf-8?B?N2dlRDdqRVF0Q3VVb2dLOWV5dXF4ampVa2RrZUcyeDRodmNWOXVBb1lXSmxH?= =?utf-8?B?MTM4VzdYT203Mlh4czFWWlIrMmxIcnFnLzVMa2E5SWwyaEIyUDUxQ0hlOVpL?= =?utf-8?B?ODBVTUlvSVNIYWNjeTdBdGN4akNvRkQvQ0FTQThaT3JTV0FVaHl0cG1Kenlz?= =?utf-8?B?RG5UK1RjUHcyd1I5dnVUOENTWDdZUE4yNWp0elNDYVVqQ2hyV1o2SGxWcERX?= =?utf-8?B?NVppVCt2Z2FzZWlKcGVRdVVudk50K1hPbHp3UndmTGZ6TURLTWp5bXI3N2Z4?= =?utf-8?B?RVRoQVNMWFlEdjllMVZTejNVR09MR2NubEFUU2xkYk1lRkJBODJCeE1UQW1S?= =?utf-8?B?NDdvazdWc0ZheFc3QlhOMThTNXhDRVE9PQ==?= X-Microsoft-Exchange-Diagnostics: 1;DM3PR12MB0858;5:nYZJOZcYX7dcidPsdJgZxyvatl5STYAUEodL6LTQtk5aNFxKQ5geDnrp8+dQJwyjRakoO12q4WhDvtJBhmgpbttoYMNfsuMSsCvBmQlodSr6dQFIp+7U30ycUMqd3IDsMXa8WddRsevxfCenK2mXsA==;24:3kwEYWD8nwq9QyRWcNLx60MA1FXCh94W9CocK+dvkdt974/ijOMGqY15xx6NSAu5+HwbF8ZFPba9boal8EwMprSivhVBUs7xAXSyqW3B1Io=;20:28JiVXRUJowqO+MBC9kKRm/H1/kDR5UtP2h+mcWFBKIFv29WxT6Bgms0+DQ3DJjy7eZ7xd95F7oksIsgIZIar5HE2u8wu74CmtmPB6LfB65Kdz86RYRqQp1JwvUbneJ4xlHEObzp+cIorOR/7jMUpR3oFfH7ax5fgAuovBWMATjuheqlSg3AuU3aeMju+i5gU02Y4qkJovSYh6f6Qv1TsCJK8sPhm4Jg9OQdGYuSuoVjMyIdL9Eh/3Gw/9ZFDfmn SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Feb 2016 19:08:22.6508 (UTC) X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.221];Helo=[atltwp01.amd.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM3PR12MB0858 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2/26/2016 11:44 AM, Borislav Petkov wrote: > > threshold_restart_bank() reprograms the MISC MSR after sanity-checking > the fields supplied for that MSR. store_threshold_limit() sets the error > count, store_interrupt_enable() enables/disables the interrupt and both > call threshold_restart_bank() to do that. > > But this is basically spelling the code now - I don't think we need to > comment in that detail. Ok, Have dropped this for V2. > /* > * Called via smp_call_function_single(), must be called with correct > * cpu affinity. > */ > > is also useless. Will remove these as well. >> "This function provides user with capabilities to re-program the >> 'thresold_limit' and 'interrupt_enable' sysfs attributes" > No sorry, I don't want to be explaining every line. Just say: "Reprogram > the MISC MSR behind this threshold bank." > Ok, Will do that. Btw, included comments around struct threshold_block to describethe members. Do let me know if this seems OK- struct threshold_block { - unsigned int block; - unsigned int bank; - unsigned int cpu; - u32 address; - u16 interrupt_enable; - bool interrupt_capable; - u16 threshold_limit; - struct kobject kobj; - struct list_head miscj; + unsigned int block; /* Threshold block number within bank */ + unsigned int bank; /* MCA bank the block belongs to */ + unsigned int cpu; /* CPU which controls the MCA bank */ + u32 address; /* MSR address for the block */ + u16 interrupt_enable; /* Enable/ Disable APIC interrupt upon threshold error */ + bool interrupt_capable; /* Specifies if interrupt is possible from the block */ + u16 threshold_limit; /* Value upon which threshold interrupt is generated */ + struct kobject kobj; /* sysfs object */ + struct list_head miscj; /* Add multiple threshold blocks within a bank to the list */ }; Thanks, -Aravind.