From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0050.outbound.protection.outlook.com [104.47.1.50]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id 441A63B2A3 for ; Fri, 1 Jul 2016 11:38:37 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=darbyshire-bryant.me.uk; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=YZz9BxTXvtW6P4ZgoZsneSoPgfJ4HUrNhWUIFp98pfg=; b=qBA+dy3HtKBdT0lAhQlwp8zTo2xuEGdRJAPbHLhPgl0LMrFBBbF3CBFlAsgGD73qw08SRrHLAkXeKxZPmLKVdJbPVo8jiDr13jytmHqEY+fvUxn0wuNOtUlMWhxxIoRWxD+CSfKY97M2cZ8llj1SRL6cNb6yMONkj89kqrtGTqo= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=kevin@darbyshire-bryant.me.uk; Received: from [IPv6:2a02:c7f:1216:da2b::4007:25d] (2a02:c7f:1216:da2b::4007:25d) by AM2PR07MB0930.eurprd07.prod.outlook.com (10.162.37.13) with Microsoft SMTP Server (TLS) id 15.1.528.16; Fri, 1 Jul 2016 15:38:35 +0000 To: References: <57501404.5010704@darbyshire-bryant.me.uk> <6A7C70EE-906E-4624-A84A-645ED4530A07@gmail.com> <5774E766.2050302@darbyshire-bryant.me.uk> <577571C4.2070905@darbyshire-bryant.me.uk> <577625C8.2090605@darbyshire-bryant.me.uk> From: Kevin Darbyshire-Bryant Message-ID: <57768E77.8050803@darbyshire-bryant.me.uk> Date: Fri, 1 Jul 2016 16:38:31 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.8.0 MIME-Version: 1.0 In-Reply-To: <577625C8.2090605@darbyshire-bryant.me.uk> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [2a02:c7f:1216:da2b::4007:25d] X-ClientProxiedBy: DB5PR01CA0032.eurprd01.prod.exchangelabs.com (10.162.149.170) To AM2PR07MB0930.eurprd07.prod.outlook.com (10.162.37.13) X-MS-Office365-Filtering-Correlation-Id: 3c2589be-7f45-4e3f-937d-08d3a1c5c3f1 X-Microsoft-Exchange-Diagnostics: 1; AM2PR07MB0930; 2:LsFbVvKp7mjUTZhVcrsbJu+cqzXo+EBERVaRzy83GRxL14RNDMnMsXD5XCzcVRGBSXNXWZX8tHy/qrGsX6/GtSAru9EtFhoet1AFtR4Syb6vBqknhNfCAihDBTyuJbpQMcDJD7fa/VDT0/gRnv/7Anu58eujYa8pCTCLTekFXkIhdnPkltpo3u/3L+tKwqgp; 3:0H0/DJhZDOv8uCSgTSkkt7haAYVdB+yrerk2QpXp0NE367mBDTt+EdcO4mGsYjgpmN+wNkhCDMQsvCaaJA1UZyj2SzrYzT3VkGPN7bFsd3F8Hzg9715d15nLcL9jMb2s X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:AM2PR07MB0930; X-Microsoft-Exchange-Diagnostics: 1; AM2PR07MB0930; 25:7xi9P5Cf2A1C0cOd7M1eEOvc8YWROONDZC4evlqbVfM7lk8mxsi3yPolmWC8WkgtsKejuEtOrChkRX8nyuBgymp2N/mEmw9LVCd6abFVzlHkg0ZovwS/Id5ihEGcNxTG5Ddr1zsnCNREoJyoHnHAbAv6/ddMs4TbQ1RB2IpPdzuaLXh/eobmrksYK3MwdAPhHAtdj6rR26NQv+ct5MJ4AMcPlx0k98GEbJGbPHzzQQJoSIL4Z8UEcttVUMgk6IAuia9CJJ5WlYRfE5B1uz8RSxBo1lMyw6fUx76fAf8nYufjiZo9BdRMj/ND2lj05JLq2D7cPnetF2BJMuKz3ELYlJ3RU3SnqoS98BJKiSUJCCfelpNRYi5eBxyXQKhHkzkdFILc0r+Z20ylcH70DEhjvV24Qiwsz+8suAiPPUsr0GgqvI3HooAyO7SJ1uKSRdiC6SAcHA/qZyt9v8tEqj2g4P9mQmEUAwDq7AWyBkMNnQJsg4bnroYmJAy8ouB4WJjOQFZJNQ8bI8U8ec9Pinw6qFw7cmdwd8aPGF794nSKSEZZk/BwWP0n+x8HBWN7n8NqPojw392r7m7vURQooOLcm/738DEi17ID0WAfT5pUW2OR204hnHWr4mFPcBCHnNXlaqMDZCmgOGswU1DYbDj68U+swnbiJUVcI6+uSw8Ll6X/1a/Lnqulq5IaUQIHsv4idAOua5psjMAK4jG/L7ozG+nNyhXxXZazpAqsSKLPO3PpvUmK8aAtkrESPnldBkxWvOI2gmcRsN5xe7BuvoaofE8slUNGMpwBxu7barOQOeY= X-Microsoft-Exchange-Diagnostics: 1; AM2PR07MB0930; 31:ulK9pOSN8zAlcR1rrSump13yOiaZ1FxliN2h4pEgVUIFHTvMsEf52o3zw39Ent64/yRg5fS98H+jGJTJTBmDbZLu2/dw8cFbjHzFjtVf42k2G8PmiBZqp7FTDSKAp12fheitZkJx07r9nTKwkHtw7uOtC+8rwp/qmBrFHuRFVl+DKW4QoEttT8ri6Y3xyga91Sa95SO+swrq7L0z909kiQ==; 4:4oXhDAbjtnG6NjRRMg5nYUaxvh51xhf4geprPXxXS4g4BG6MquH663znUQSbwf64rQKuDhYolIAvUUecRWTpH/KmWbZetAUFtXc3HPznc9ktSW2N0MCGqbvlFfzWauEhQ5pKn9el2xllX2Dog6mxAK+5Pfjm5vkzsFuqR6NSP1cw6caDEYaEPJuw3mfsvcnx0utps2WfglJ1SeZKqYRue8MfBJIxyTuNp/WT4NCAwLNI9Fp6kHqkwwH7tq+sxkYDD/DcpGcowciBCcXWjKBENrwOd8cs43i6QoMekzbzOcDKRn2gARUv9PRgvWVMSSyfd8wXz9OozNQLRd3Yz71Lk6l0vKhxfdiznPSAuUuYueHmKpp1bfU4yhzQ///cKGrR6mUbBpxi8NreLNS6+XR4MGje5kfvapEMYjgZNOTvilXKpt/wbSS54wMXaEPYpyfTFnGGXSNfNMNotEaCOOmXZQ== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(166708455590820); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040130)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(6041072)(6043046); SRVR:AM2PR07MB0930; BCL:0; PCL:0; RULEID:; SRVR:AM2PR07MB0930; X-Forefront-PRVS: 0990C54589 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(979002)(6009001)(7916002)(24454002)(199003)(189002)(15975445007)(64126003)(65956001)(99136001)(4001350100001)(65806001)(59896002)(2351001)(1706002)(105586002)(23676002)(7736002)(7846002)(106356001)(74482002)(92566002)(47776003)(8676002)(305945005)(50466002)(2906002)(36756003)(97736004)(77096005)(81156014)(230700001)(107886002)(33656002)(76176999)(54356999)(450100001)(101416001)(93886004)(189998001)(80316001)(86362001)(19580405001)(19580395003)(6116002)(87266999)(586003)(2950100001)(81166006)(42186005)(65816999)(83506001)(68736007)(110136002)(50986999)(3826002)(969003)(989001)(999001)(1009001)(1019001); DIR:OUT; SFP:1101; SCL:1; SRVR:AM2PR07MB0930; H:[IPv6:2a02:c7f:1216:da2b::4007:25d]; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: darbyshire-bryant.me.uk does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtBTTJQUjA3TUIwOTMwOzIzOm45VUliem9qVXFBYlhZTlBLVVNsTDBZT0FE?= =?utf-8?B?QUVzVENQd2VONzJwaHAzQ2tZUTdGbXF2RURrY0ltOUJSbFRMWGZkWXpMWDU5?= =?utf-8?B?bGw2SkRFbFpGbDhzdXJpR1o3aERuUUR6SFFPQWE2N1I2MUsrSkZFTGxMOUVJ?= =?utf-8?B?cmtSaTdFSVhOVHhMLzJlSTltRzRBdk1oSW5zZWJkbDBEZG01Ty9FM1NNY2lv?= =?utf-8?B?cnRoSGpWTWQ2U3dBUi9MVFl0NERmOHdCNERCUUJFZXBRWTM5UVc3ZmJaa0tx?= =?utf-8?B?UFkwdnJZbm5XYmVHczRzZmk4Zy9JZkwrTE1BTUpsbWpKZGpERWZPZjlaSjRF?= =?utf-8?B?RGQ2dXRwT1oyeWdSL3IwMnRuUlh4dWczWmYydXRCWnJxelovbWMrVFdJQTZQ?= =?utf-8?B?d1ZZSEpCV2R3a213VnZXek91Mi83ZTdtMU1FK1RZaXAveGtzR01nVExJYzRl?= =?utf-8?B?MHFvRkhaK05IaVo5Y3MrVEJnRHRRQy9HdU53MGg5S0QxZzJvUjh4Q0FUczJO?= =?utf-8?B?Q1ZJalhZdUNYWktnQTJtaUdtSWhLb1ZtQ29oSm9sZmhzSW9RNTVZcllmVU50?= =?utf-8?B?M0QzOU52R2QrVkh1WmIxNXAwbGZhZG9nTmZRRXAvQUVpdzJsL3A2SHNpOXhC?= =?utf-8?B?RU92eC9ZQXVsbi96QkpBOGhWV2ZCYVBGT2RSZWFrdWpoZ2xwY3BOOXF3YnJE?= =?utf-8?B?T0ZHcGs3Ry9KWElJNG9yMDY2UHlYZHg2b250N1N3ZG8yem5BYVE5VXJCS3l6?= =?utf-8?B?ZFlmNmFlVVFLYTV0QTBVNW1jRWZLR0xyT3cyeFNoellGYnpkTlIvakxrUGhJ?= =?utf-8?B?bHdBblZpc0Q4TDEyMEl1V2dTeWVEemlqRjJ6VkRDU2VGNFF0ZCtJb0R4RHY5?= =?utf-8?B?VWpjREkwVlp1Z21mT2lnZzZFc2N5Q1dTa0JCcEc0UDFpSGhIaWVRRkpUYjY0?= =?utf-8?B?R3h4aG9OWEl3MWFuSSt2cDB5OS9DQ21Pc2lMbWhuWGVoWUpkNXExT3Z1RCsv?= =?utf-8?B?MDBOT3hwblJuTFlxays3RjQ3K0p1VTdEMmhHSXNzbHlHektXbGdpdk5vTnFC?= =?utf-8?B?bXA0SlBKMDB6QklESmU3MjJ3MmpDUU43cWJHU0ViVWY1V2Qwc3J4S1Q5QnBD?= =?utf-8?B?NDFIUEdwTXpYdnpCWEtUYnFoYml5WXhHa1J4NTF5Z3ljUHVRM2N0YWt5SWg1?= =?utf-8?B?QXZhK28yUFNFU3NJVHAzbGNPY2psbkIwaC84R2ptMC9mYTdIOFBvdHBDeUtL?= =?utf-8?B?ZDMxdTZJeEhDdjVMTjNRbTAwSFpVTzBzTHpWRGtJYjV1ZXI5b3hNSmxMZU1s?= =?utf-8?B?MTJWWlBObW5XODEzSys2bnlDdWVvRFM3cWwyYlh0QndpZHRCQjJzTVljd05v?= =?utf-8?B?dk5qZno1Q2tlNjNncFJLM0hYVUh6SzJsUGVzSTAySVVVQVd3bXUyZDFaM0RE?= =?utf-8?B?Y1pjTHFuajVPRXRvZWNJa3FxcStsUytiLzNseTFpR0daeTFFZURnSEZ4eWtp?= =?utf-8?B?Zi8yUEVxRHVuSGk3ZlRJY2g5QjlVNnlwK2s1WHZwQ0VWVmh4UU9FT1h5b2lq?= =?utf-8?B?MkZFTEVhUDA0K0hXb05oRmxrNUFBRThPMGl0SDQzMnJtQ00zVzJINzYrQ1hO?= =?utf-8?B?ZVVYQXVtczNMVlJYNS94c2M0V2R3cEtocnRtaEdlQnhFNmtPWmJBbHdUZXlQ?= =?utf-8?B?ZFl2STBFMDZzSDVnWjl5L0tFR1RTck1yYWVRb081a3cyRWxyWUlqK2xRVXps?= =?utf-8?B?ZTlsSVEvc00wZ2pKaVhZZTVMckVXVEdoQ1RpTkpRbk1yU0J5VktJaUF1UXZa?= =?utf-8?B?RzNLQ2ZWNWVQeW96cGJGK2RHUU5BTCtGQ3d0UkRYc2kycVpXYWVORS9iUEtT?= =?utf-8?B?TG5pQzZKbWJ0SUIwS0FLeEx6UkE1SnZCWXhFNCtBU1JvSHRDM213ZkVSdU1N?= =?utf-8?B?RFZqczZWc1g5dUg0WmsrWXZhbUhVL0YzSFVNc2pMclN5QnV1bW5IUXp1NzI1?= =?utf-8?Q?pIXG6z?= X-Microsoft-Exchange-Diagnostics: 1; AM2PR07MB0930; 6:TG3HIFwUza4aOBGWMnSlkx4kCnYrwoYztHRt/s8pqBtApK2htuMz0OIZa/xfbzM5X+bWqbOSdXpx/ueBhwcnIemdWFqzoW2VStEMEm/i9NIKFiy9/LlipDtLT61vrtf3gP23uNx8f1DmFk06bWfyXUzeaplkZweJ/mHuRDgWlqaTv7t92FoH8HFob27DNu2ePDEzCubUv4V6Yd3MGiyfGZIdN5+Y8MjIXf/i7Ck6MPKs1E5fkdrigXjiolRBu4ESF+tUr6O3WLijlJ/q5KL7tQpOWe/+p2UM8QnbvLdGJ9WpF6UvXEdaZ/mWPwDkT2E7; 5:f34qHXgvtFddwLkPQ5PvowpsU8qgWr9N27za9yQQG9hnial2oWIzgvk7HmBs5tXSlateR9+09wI7CO9JKir3NMY8ChgmpmOtDT9XRfueT7/3Vhtw9BxIz6LGCBa8dkfOOIHJQS4gGqr9YBjySUjZUQ==; 24:CD1iZTSqw5GNPWjWwiDbRkJKt2xnaOVjenspnmIS5uf6ZMCQrPRrfnVMirppuk5QV+KndDclrrEjgmqaW/tP5CRTU5rIhtfxAKNs+wMfFw8=; 7:7RcHeL+TgWT0fuXnl3pM0+ECF8iOmodKXnQoCcTU8UspjScaLVftrqETP1bErUmPvGyjQ97yF+toYTIi4pAeQT1zY/X/kjnE+jEU0+jrKLAsqBb42V+xy4Ha/bJvPVCiN3SgC3+1BE9Ogqxqa0lAxHKJY1z5w8J+yIIctc1GCXEMglBXEGwWSgGkTVzsSKoquGjxSfD/PMwY+XUILE1xVwEtcqyqwEHSuKFWRU2V9aWmOn/DJgI6W8teboFhb4Ef SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: darbyshire-bryant.me.uk X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jul 2016 15:38:35.6049 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM2PR07MB0930 Subject: Re: [Cake] flow dissector idea/enhancement - help X-BeenThere: cake@lists.bufferbloat.net X-Mailman-Version: 2.1.20 Precedence: list List-Id: Cake - FQ_codel the next generation List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Jul 2016 15:38:37 -0000 On 01/07/16 09:11, Kevin Darbyshire-Bryant wrote: > > >> I'm beginning to think there's a reason why enhanced sfq which is >> where I found that code never made it upstream :-/ It's been/being >> an interesting little diversion...and I've modified a kernel module >> that so far doesn't crash :-) >> >> KDB > The brain cell awoke with the thought that 'we don't need all the > conntrack info filled in, all we need is to find the conntrack entry > matching the src/dst tuple depending on direction. nf_ct_get(skb, > &ctinfo) is a function of convenience....we need to do it the > inconvenient way. there's gotta be conntrack tuple lookups available > and we must have enough info for this as the skb is right there. KDB > goes digging. > > KDB If I'm honest I'm getting a little despondent. Coding right at the limit of your understand of C and the kernel and everything else is really, really tiring and hard. I discovered net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c has static int getorigdst(struct sock *sk, int optval, void __user *user, int *len) The comment above it is /* Fast function for those who don't want to parse /proc (and I don't blame them). */ /* Reversing the socket's dst/src point of view gives us the reply mapping. */ Those interested to see how bad my C really is can https://github.com/kdarbyshirebryant/sch_cake/tree/demasq Maybe those who know what they're doing can offer some assistance. Cheers, Kevin > _______________________________________________ > Cake mailing list > Cake@lists.bufferbloat.net > https://lists.bufferbloat.net/listinfo/cake