From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751810AbdBAJNf (ORCPT ); Wed, 1 Feb 2017 04:13:35 -0500 Received: from mail-db5eur01on0128.outbound.protection.outlook.com ([104.47.2.128]:49712 "EHLO EUR01-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751404AbdBAJNc (ORCPT ); Wed, 1 Feb 2017 04:13:32 -0500 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=peda@axentia.se; Subject: Re: [PATCH 1/2] iio: pressure: mpl3115: do not rely on structure field ordering To: Peter Meerwald-Stadler References: <1485936567-3367-1-git-send-email-peda@axentia.se> <1485936567-3367-2-git-send-email-peda@axentia.se> CC: , Jonathan Cameron , Hartmut Knaack , Lars-Peter Clausen , Alison Schofield , Gregor Boirie , Sanchayan Maity , Ken Lin , From: Peter Rosin Organization: Axentia Technologies AB Message-ID: Date: Wed, 1 Feb 2017 10:13:18 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.7.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit X-Originating-IP: [217.210.101.82] X-ClientProxiedBy: AM5PR0402CA0019.eurprd04.prod.outlook.com (10.175.37.29) To HE1PR0202MB2556.eurprd02.prod.outlook.com (10.168.184.9) X-MS-Office365-Filtering-Correlation-Id: a262268d-0131-449a-084f-08d44a829280 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001);SRVR:HE1PR0202MB2556; X-Microsoft-Exchange-Diagnostics: 1;HE1PR0202MB2556;3:Us4Mu8BgrNzS4BtzCQR1nqapGkAQN+ytpdovHZuz+XO8meqwzH6+nvoBFiImybLP4Vk+43TeMyS31Cz309vX4mLSNgpcetKQ0AG55/HG1ZOnnKMnMJzEaWZ6BabUAkLzZLBoyIMRdQ5yahL/8erspDo6BZLEUqIVpvQBEm1gYphoSw5gxTwFRCdiLqTkOYorSI0hPs8aeVJm22pqEPQNRpFnQkWZRsQDUgL008i7uR/zCkGgJiHxYsNDAoETPyaWFjt1oV4MrBLkC/oXsq0/EA==;25:uwgFWj49mZsHVDqIuJKiSRucFryU/ERVC3qhYZGEpR/FOFV9TD82YrzoUeM7xPZfkdWxo0aPc+WRzayHwFqtGqz//lIjxSlM0BuUPToxp6YIHPR9+1IVmQgKAUAjjm84RTmRqpGWylb8ec+oZU3Gzgu1IRFgTwyBRnzcGan6cHexPDWU1hEHtC5WVcdfzUa+HS6OA/l8UyXoDPP0ic/KkMOnOPdo6nK3SuzFfGLBnt6AHOpP8otwyFCgf8mm02fXwEN7k2CYlosUzejapXAw7Gsnpa+KKzygtzHJVgIqeroh8xft1isoUVSx5wdvsW5jKef4buormAhIb2/SxSj9FJHfU6Ff6YyfoIuUOqJKjBID18noBJpbKqJnsHXS4WluGWmxeqCwaUGcCSKAgMm5Hnndy4CMJDUqtIOLRT9Bj4WDFPdj21C7UIkmr7CVP2NBDvGJcjSsSjAzqa5wZ1dYNw== X-Microsoft-Exchange-Diagnostics: 1;HE1PR0202MB2556;31:hTo7HKfffRO1khhJLbVNxC6FYTKeiJFWGc0FZr3MZbETtOnw67ruZK/OIAda3ChLd2sOjk4m90OCwU2LhGoHv976S1ouQBnn1KkeEr3Xs5HEZ8aqlg7hM1uLJyRog1cXL4zvITFHb2Eq3spylAPhxj7QEBjPckniAaVM/NuXH6FKoGxSBFu4nZ040nB0Zj3mF88nQ6P9DtagbSYzzIdTTqfZt8oVllHIY9HZKHymJNDPF+FHuYjqVeGY5/A2TIGbohnQOVenqF4C33uszYbTBX+CGxr0+t/4ZWFcqjmAQoE= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040375)(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001)(6041248)(20161123558025)(20161123562025)(20161123564025)(20161123560025)(20161123555025)(2016111802025)(6043046)(6072148);SRVR:HE1PR0202MB2556;BCL:0;PCL:0;RULEID:;SRVR:HE1PR0202MB2556; X-Microsoft-Exchange-Diagnostics: 1;HE1PR0202MB2556;4:dbqHMCCYunPyHNtmRiLSFJKFGqxKbts3e9b/hs5LCE+Jpj1LtyzWjnCP9iY+dNwiFIsDdlvO+WcAhqjyCXOXDrGhb/wLx40xfcx5qdoIbVEnh8fPzky0tez7NJCyDqEENsn8zlD3kIfUVIM0E2pmFPtnjIlk9Do29a0/oIWcTmSKgvFSv58ZzwCPpLhZ+Ef8Up2HEElwIdH7+z/8zmDKc67ihcIwe25FX5/a3FEnATPdm1UrO7STnoC+11BP+VCr/rKtb7cUFz2hlj7GV+Ej1W08qjQLRwCknOvjEJJTSlDGB6+8oJbLjkrrdgKoSgakk/kMf2cjvMXkuySFWxRCid/Vanby2+4lV0APx32owJ0b7z/2ioy8KN4UGRRkACSdFkZN2MRUt27mfIgHnJvv3LU7hZCr5UHY75u4mgEaU6672axVVxhpf2Lq9jzTf6tQwfqq216d97XOyZQrrPqN09aii6e8ANLn/Y2Pi2EbBJYxDlZGo4O7sWhJrKjGmT5WQnJ/4eQ/tX6nGXWz2E9oLqLQwn7eymHIxgWrG66wkDj1vlgHIFMJYRGLgwbisCsgXedS/acuV5S1u/V/aZv6j3Wz8kZVbMW9McS83SDlYlDVncWy+KubgOzojRA4nDEOKVuRNm07icQEd2Pvcq//JUPzvLtTzC/Ax7iWtDJh89Y= X-Forefront-PRVS: 0205EDCD76 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6049001)(6009001)(7916002)(39410400002)(39830400002)(39450400003)(189002)(199003)(377424004)(24454002)(65956001)(74482002)(50466002)(64126003)(65826007)(3846002)(117156001)(230700001)(53936002)(83506001)(66066001)(101416001)(6116002)(92566002)(97736004)(189998001)(36756003)(6666003)(2906002)(2950100002)(54906002)(50986999)(106356001)(8676002)(229853002)(42186005)(47776003)(39060400001)(110136003)(5660300001)(6916009)(7416002)(77096006)(68736007)(7736002)(23746002)(4326007)(31686004)(76176999)(54356999)(305945005)(6486002)(81156014)(33646002)(4001350100001)(90366009)(105586002)(38730400001)(31696002)(81166006)(25786008)(86362001)(65806001)(8666007)(42262002);DIR:OUT;SFP:1102;SCL:1;SRVR:HE1PR0202MB2556;H:[192.168.0.125];FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;HE1PR0202MB2556;23:N23ca3qOZ4b9FcGX0FeJB8m3p53fym3NlWU?= =?Windows-1252?Q?wkQf8OwnOuDqT7GFTU3O/RYI7wfd9gb8lrhtX25V/n19KJ9Z/m8X877l?= =?Windows-1252?Q?nHqO80rqpJOFt2Q3aWFOg4OgkjimTUZuFhOXuBOJo84yHcIF36y5VSrz?= =?Windows-1252?Q?Hji8I+5h6MqOHLD21vwPhhf2PrKjRFo+mwUh2FTDg7PRZd4vnOs0V+pl?= =?Windows-1252?Q?LLAL5yiyAzLACY7mtIri34SKcLarKo5NNE9G22LR+RmH7fQ2cna/XByD?= =?Windows-1252?Q?7BnKA6XCX6PfQbhTamol82d5bjG5MkIFdLbguSSkiu1Gog+1rlG66Br0?= =?Windows-1252?Q?D1RuTP/rbGXXHV79RNRNeCOJZbl5j/EYXf4PYTdmr35J35NntRa2CmU3?= =?Windows-1252?Q?hePE3RNRhYLmdcuJjkx61C9ohYlrAKVQqYD1nJk0hy0N9xVQJKeUfePX?= =?Windows-1252?Q?MrpQnnnUOiRbHmiOdmjtOYldSXHCKvrXnzD0p1inom9YQGOkhH2CnkP4?= =?Windows-1252?Q?GTTON1nxSsl2QRM8dW5s8Pc9z/pvhK+66YEj/iACOhlT+5EicaeNnnnO?= =?Windows-1252?Q?oCDQN4Y+44pgcuRzvufhSfRzVlm8DKb+XlwX6Z544zRQRXG+YvCyVVpn?= =?Windows-1252?Q?67jdAXEtFTxHx6iPRZd+sZT8NbcWLKB//0njBDrCns/vzNOJLs5YFKhw?= =?Windows-1252?Q?7oBi1AYs2i++WUwM0f3GvXBW+JKeC6yUCYlmU0Nf5pEU54ErICHUieN3?= =?Windows-1252?Q?QikIjg12eabJew2Aq1B+a2d4FDUkUPeBOszkOo87vrnU/EuIyplD3Q99?= =?Windows-1252?Q?5e+84neuq8mDBgudjbMe5DoZvINLLgi0hrlvp3lIz7IjnkuBp5rjkiwz?= =?Windows-1252?Q?PKY/rOOSO0K1bqGRJjeov6HdkYCmSR2fFjzua9EE84F+iPPP8G4NNORx?= =?Windows-1252?Q?KQOBz/KQ00Ow4GSHOlur/n2IBs8LCcGdjGdntOYYlkgiv/O/9iD22cos?= =?Windows-1252?Q?TSz/1i86RsxPV9utxuio27lDWNwgl6Yoq/ZVFivT0Au3t49oAI/uDBgW?= =?Windows-1252?Q?r4GLPclHjCN+ZOyZ9aP09LwgBwrEbhI0wCac6jqBnHKtnsRqDm5XeVVx?= =?Windows-1252?Q?D5XAZsJnZ64vexWaEahyNK9u0W2P4R8sZDrEDHpKG0LPyMcsPhZDJZNI?= =?Windows-1252?Q?Xqb1Ki3Gnqi4tscs1/9qPN4lcdypG/q253xIB1RH8fwTtcq20aWLyDpy?= =?Windows-1252?Q?//EZCN2iZuE8P82eOCTYKdaYW7boKDT7Bll4VoNBRqzbMPL9LVb8LKZK?= =?Windows-1252?Q?DTRnfHySV02fRmPCzPxUXQJ28BvWOUgJpLKxg3iPuguV7pyY80bM9U2q?= =?Windows-1252?Q?zGcQIjtOmILjX22RvM/6/JUmpXYbeDHBJlyu9+kCh7PQivTV3rus92U+?= =?Windows-1252?Q?hwAPqgMVBIvUjppwAVCgMfVeIQ3X6X/7UzY2uK9mk35cCxNpesgROIYK?= =?Windows-1252?Q?eDUPEdgIeKlrpdhsr+ekxi4Hf6onBctJhrk2TWsSUjLSs29+NuhgiDjH?= =?Windows-1252?Q?j4QOJsBKBFjwxNQOZXayHQE+HOn0TeV5sDAQOgwpv2XsMmNeM4UkbX4+?= =?Windows-1252?Q?0SNCiGJ7mU36P9u+R28Oxqv1XZ9rAFNQ0f19ggowa8+sooqi628CIiDs?= =?Windows-1252?Q?VRpd5JJcTu6YsDsyEImbfPAZO52lN6nM=3D?= X-Microsoft-Exchange-Diagnostics: 1;HE1PR0202MB2556;6:3y0MYKXAywH1FoedKo7KFQ5NLKN+pz+kWx/QAWa0YHgG7BbygyB7TSSO7sLyLjsUrxLnA1Rjh60Cery8XdhoNnqek2WLMUimupXWNYKx+r13KTbe+szUG7Iv03edoJPl6JKDMMQqNtW/VM7PdLRI0B5Q5l0GU9WEVlmY3np0JC7v8iPTfucrJREhopsoN1sjwtFrAKqRI39HUkXRiwM+xggkkM9USS+nyRkXbQbrCGIYsbdVV4StqOoNbxwCQMnd7s4wjjiQJ/YWOkVl9hZru4wFbppISPR0AFnsnsEM7OHB4DztmNys36eH5BWjRwbnzoFm0qedLpm+7GP3VRjyOEMZ/pA9S3u2h4NKOa71fFKxR+GhFFkELytmCLMP9H6r294dtlGs390cXdP9fbZB5Rp45302z/6bS69bECXQO5U=;5:nh7+sz1mV4VYMephxI05CEs6x6QV+ZeKZksTxxZpkXWW0Wn6npHO5T+c9JAJgWjWqiq0U6RC5Y22HtFszKygmWjZS/WVeZtyzxXZpyAjAVKqcK2oUqceu0gIi2z1o9D2Fq85DwDo+9SLqsjGQQCrIA==;24:tdl2WLxKoroINTnaMKShyhOG4IA0T1XO3plm9WWAMvCxHgoPgVTxrNO7spg7Vab0yDSmVeVHcFaQ00Or6sPeTVauTyxcU8U4Xm27KE1w8bE= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;HE1PR0202MB2556;7:MV9NEk/xJL10kkWWxioNFRsNHfvdstn1lpKfeGz0YxeCszESMuTdFDp6YR6gSfUmq4pX+qymUh8sKy9vvq6iqChckZ0CoiP9qPR/SZt2j+lMAIbx76NndIXQomBH/xSFLi8zSGtbemzhnuFvOP/Rodjz1v0GeZEeVU8v4nxQL710oDKGB4AfMmZOuE3EPULMLaWw8iDLed3sgwvHnKCqckdN4pkHFRm26IGCNtGo3u4RGT6UCiJLthB97L6n1aDn4p9hLyeFX+vYz4OsNaLC7uQ3jnPuilxlXPdS2V3VaoTn6c9PkjfYpwMc5uYry6bAxbJPEsusgQJnvLvDxi0HpktNQ/kAcSyceydP+WGxnvBcQcOm6WVVvzMUVnj/+3rcE5bnooVsaRyaSV24d9W7DFU/2SyJWNHvr432XrtU1GECAHxFRNyE90Bx225+ukS2nCDKUKP9CoZTrqIjAkdX2Eywj7zwIQWhUEQxtNGIJoP48MOChiLpRs5TAIrlTiAl0Ls5pDxvPVH/3usyCL6RLg2+MKSn4pYFKMe+GKl+SCRn23o9zEAXjHXvXNbOzhl6 X-OriginatorOrg: axentia.se X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Feb 2017 09:13:21.8350 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0202MB2556 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2017-02-01 10:10, Peter Meerwald-Stadler wrote: > Hello, > >> Fixes a regression triggered by a change in the layout of >> struct iio_chan_spec, but the real bug is in the driver which assumed >> a specific structure layout in the first place. > > I don't think that this is a proper fix > > maybe the driver is unique in that it uses mask_separate for INFO_SCALE > and not by_type, but since there is just one PRESSURE channel, it should > be equivalent > > what do you mean by 'driver which assumed a specific structure'? Look again, the two bits are not OR:ed together as implied by the indentation. There is a comma between them, which put the ..._SCALE bit in the next field. That next field was .info_mask_shared_by_type before the patch adding the available attribute that triggered the regression and .info_mask_separate_available after it. Cheers, peda > thanks, p. > >> diff --git a/drivers/iio/pressure/mpl3115.c b/drivers/iio/pressure/mpl3115.c >> index cc3f84139157..525644a7442d 100644 >> --- a/drivers/iio/pressure/mpl3115.c >> +++ b/drivers/iio/pressure/mpl3115.c >> @@ -190,7 +190,7 @@ static const struct iio_chan_spec mpl3115_channels[] = { >> { >> .type = IIO_PRESSURE, >> .info_mask_separate = BIT(IIO_CHAN_INFO_RAW), >> - BIT(IIO_CHAN_INFO_SCALE), >> + .info_mask_shared_by_type = BIT(IIO_CHAN_INFO_SCALE), >> .scan_index = 0, >> .scan_type = { >> .sign = 'u', >> @@ -203,7 +203,7 @@ static const struct iio_chan_spec mpl3115_channels[] = { >> { >> .type = IIO_TEMP, >> .info_mask_separate = BIT(IIO_CHAN_INFO_RAW), >> - BIT(IIO_CHAN_INFO_SCALE), >> + .info_mask_shared_by_type = BIT(IIO_CHAN_INFO_SCALE), >> .scan_index = 1, >> .scan_type = { >> .sign = 's', >> >