From owner-freebsd-drivers@FreeBSD.ORG Mon Mar 1 17:10:29 2010 Return-Path: Delivered-To: freebsd-drivers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4B47B106566B; Mon, 1 Mar 2010 17:10:29 +0000 (UTC) (envelope-from brendan.kennedy@intel.com) Received: from mga14.intel.com (mga14.intel.com [143.182.124.37]) by mx1.freebsd.org (Postfix) with ESMTP id 19BA28FC1B; Mon, 1 Mar 2010 17:10:28 +0000 (UTC) Received: from azsmga001.ch.intel.com ([10.2.17.19]) by azsmga102.ch.intel.com with ESMTP; 01 Mar 2010 09:10:27 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.49,561,1262592000"; d="scan'208";a="249426123" Received: from irsmsx601.ger.corp.intel.com ([163.33.7.164]) by azsmga001.ch.intel.com with ESMTP; 01 Mar 2010 09:10:26 -0800 Received: from irsmsx502.ger.corp.intel.com ([163.33.7.249]) by irsmsx601.ger.corp.intel.com ([163.33.7.164]) with mapi; Mon, 1 Mar 2010 17:09:57 +0000 From: "Kennedy, Brendan" To: Patrick Lamaiziere , "freebsd-drivers@freebsd.org" Date: Mon, 1 Mar 2010 17:09:54 +0000 Thread-Topic: [PATCH] patch to OpenCrypto framework Thread-Index: Acq39y19H22Y7jieTdajs2QFVM8khQAmu3CQ Message-ID: References: <20100227225228.470e9b7b@davenulle.org> In-Reply-To: <20100227225228.470e9b7b@davenulle.org> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: acceptlanguage: en-US Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Cc: "Philip@freebsd.org" Subject: RE: [PATCH] patch to OpenCrypto framework X-BeenThere: freebsd-drivers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Writing device drivers for FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 Mar 2010 17:10:29 -0000 SGkgUGF0cmljaywNCg0KWW91IGFyZSByaWdodCB0byBhbiBleHRlbnQgLSBoYXJkd2FyZSBkcml2 ZXJzIGdlbmVyYWxseSByZXF1aXJlIHBoeXNpY2FsbHkgY29udGlndW91cyBtZW1vcnkgdG8gd29y ayB3aXRoLCBob3dldmVyIHZpcnR1YWxseSBjb250aWd1b3VzIGFsbG9jYXRpb25zIHVuZGVyIGEg cGFnZSBzaXplIHNob3VsZCBub3QgY2F1c2UgYSBwcm9ibGVtICh1bmxlc3MgdGhlIGFsbG9jYXRp b24gY3Jvc3NlcyBhIHZpcnR1YWwgcGFnZSBib3VuZGFyeSkuDQpGcm9tIHRoZSBtYW4gcGFnZSwg bWFsbG9jIGdpdmVzIHBhZ2UgYm91bmRhcnkgYWxpZ25lZCBtZW1vcnkgc28gbG9uZyBhcyB0aGUg cmVxdWVzdGVkIHNpemUgaXMgbGVzcyB0aGFuIGEgcGFnZSwgc28gSSBndWVzcyB0aGUgYmVzdCB3 b3JrYXJvdW5kIHdvdWxkIGJlIHRvIGhhdmUgc29tZXRoaW5nIGxpa2U6DQoNCmlmKGdldF9wYWdl X3NpemUoKSA8IGNycF9kZXNjLT5wYWNrZXRfc2l6ZSl7DQogICAgICAgIG1hbGxvYyhwYWNrZXRf c2l6ZSk7DQp9ZWxzZQ0KICAgICAgICBjb250aWdtYWxsb2MocGFja2V0c2l6ZSk7DQp9DQoNClRo ZSBzYW1lIGNoZWNrIGNhbiBiZSBkb25lIHdoZW4gaXQgaXMgdGltZSB0byBmcmVlIHRoZSBtZW1v cnkuIFdoYXQgZG8geW91IHRoaW5rPyBJdCBjb3VsZCBiZSBldmVuIG5pY2VyIGlmIG1hbGxvYyB3 b3VsZCB0YWtlIGEgZmxhZyB0byBnaXZlIHBoeXNpY2FsbHkgY29udGlndW91cyBtZW1vcnkhDQoN CkFzIGZvciBHRUxJL0lQU0VDIChub3Qgc3VyZSBhYm91dCBLZXJiZXJvcywgYnV0IGdyZXBwaW5n IGZvciBjcnlwdG9fZGlzcGF0Y2ggdGhlIEZyZWVCU0Qgc291cmNlcyBzaG91bGQgZmluZCBlYWNo IGFwcCB3aGVyZSBPcGVuY3J5cHRvIGlzIHVzZWQpOg0KDQpJUFNFQzogcmFjb29uIHVzZXMgY3J5 cHRvZGV2IGFuZCB0aGUgaXBzZWMgc3RhY2sgZG9lcyBlbmNyeXB0L2RlY3J5cHRzIG9uIHBhY2tl dCBmcmFnbWVudHMgd2hpY2ggdGVuZCB0byBiZSBsZXNzIHRoYW4gdGhlIGtlcm5lbCBwYWdlIHNp emUgKHRoaXMgaXMgd29ydGggY2hlY2tpbmcgZm9yIGNvbm5lY3Rpb25zIHdpdGggTVRVID4gUEFH RV9TSVpFKQ0KR0VMSTogSSBzdXBwb3NlIHRoZXJlIGNvdWxkIGJlIGFuIGlzc3VlIGlmIHRoZSBm aWxlIHN5c3RlbSBibG9jayBzaXplIGlzIGdyZWF0ZXIgdGhhbiB0aGUga2VybmVsIHBhZ2Ugc2l6 ZSwgaG93ZXZlciBmb3Igb3B0aW1hbCBwZXJmb3JtYW5jZSB0aGVzZSB0d28gbnVtYmVycyB0ZW5k IHRvIGJlIGFsaWduZWQuIFRoZXJlIHN0aWxsIHNob3VsZCBiZSBhIGNoZWNrIGJlZm9yZSBjcnlw dG9fZGlzcGF0Y2ggaXMgY2FsbGVkIGhvd2V2ZXIuDQoNCkkgdGhpbmsgaXQgaXMgYmVzdCB0byBk byB0aGlzIGNoZWNrIGF0IGFsbG9jYXRpb24gdGltZSwgcmF0aGVyIHRoYW4gZm9yY2luZyBkcml2 ZXJzIHRvIGRvIGl0LiBJdCB3b3VsZCBiZSBhIHNlcmlvdXMgb3ZlcmhlYWQgZm9yIHRoZW0gdG8g aGF2ZSB0byBkbyBhbm90aGVyIGFsbG9jYXRpb24gYW5kIG1lbW9yeSBjb3B5IGluIHRoZSBkYXRh IHBhdGguDQoNCkJlc3QgUmVnYXJkcywNCkJyZW5kYW4NCg0KDQotLS0tLU9yaWdpbmFsIE1lc3Nh Z2UtLS0tLQ0KRnJvbTogUGF0cmljayBMYW1haXppZXJlIFttYWlsdG86cGF0ZmJzZEBkYXZlbnVs bGUub3JnXSANClNlbnQ6IFNhdHVyZGF5LCBGZWJydWFyeSAyNywgMjAxMCA5OjUyIFBNDQpUbzog ZnJlZWJzZC1kcml2ZXJzQGZyZWVic2Qub3JnDQpDYzogS2VubmVkeSwgQnJlbmRhbjsgUGhpbGlw QGZyZWVic2Qub3JnDQpTdWJqZWN0OiBSZTogW1BBVENIXSBwYXRjaCB0byBPcGVuQ3J5cHRvIGZy YW1ld29yaw0KDQpMZSBXZWQsIDI0IEZlYiAyMDEwIDE2OjUwOjM1ICswMDAwLA0KIktlbm5lZHks IEJyZW5kYW4iIDxicmVuZGFuLmtlbm5lZHlAaW50ZWwuY29tPiBhIMOpY3JpdCA6DQoNCj4gSGkg UGhpbGlwLCBBbGwsDQoNCkhlbGxvLA0KDQo+IFRoaXMgT3BlbkNyeXB0byBwYXRjaCBkb2VzIGEg bnVtYmVyIG9mIHVwZGF0ZXM6DQo+IA0KPiAxKSBJdCB1cGRhdGVzIENyeXB0b2RldiB0byBhbGxv Y2F0ZSBjb250aWd1b3VzIG1lbW9yeSBibG9ja3Mg4oCTIGENCj4gcmVxdWlyZW1lbnQgZm9yIHNv bWUgaGFyZHdhcmUgZHJpdmVycw0KDQpJIGRvbid0IHNlZSB0aGUgYmVuZWZpdCBmb3IgdGhpcyBv bmUgLWNoYW5naW5nIG1hbGxvYyg5KSB0bw0KY29udGlnbWFsbG9jKDkpLSBpdCBpbnRyb2R1Y2Vz IGEgc21hbGwgKGJ1dCB1c2VsZXNzKSBvdmVyaGVhZA0KdG8gZXhpc3RpbmcgZHJpdmVycyAoSSB0 cmllZCB3aXRoIGdseHNiIDogd2UgbG9zZSBhcm91bmQgNSUpLg0KDQpJTU8sIGlmIHRoaXMgaXMg cmVxdWlyZWQgZm9yIHNvbWUgZHJpdmVycywgdGhpcyBpcyBub3QNCnRoZSBnb29kIHBsYWNlIHRv IGRvIHRoaXMuIEEgY3J5cHRvIGRyaXZlciBjYW4gcmVjZWl2ZSBkYXRhIGZyb20NCnNvbWV3aGVy ZSBlbHNlIHRoYW4gY3J5cHRvZGV2OiBpcHNlYywgZ2VsaSwga2VyYmVyb3MgKGF0IGxlYXN0KQ0K DQpCZXN0IHJlZ2FyZHMuDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpJbnRlbCBTaGFubm9uIExpbWl0ZWQKUmVnaXN0ZXJlZCBp biBJcmVsYW5kClJlZ2lzdGVyZWQgT2ZmaWNlOiBDb2xsaW5zdG93biBJbmR1c3RyaWFsIFBhcmss IExlaXhsaXAsIENvdW50eSBLaWxkYXJlClJlZ2lzdGVyZWQgTnVtYmVyOiAzMDgyNjMKQnVzaW5l c3MgYWRkcmVzczogRHJvbW9yZSBIb3VzZSwgRWFzdCBQYXJrLCBTaGFubm9uLCBDby4gQ2xhcmUK ClRoaXMgZS1tYWlsIGFuZCBhbnkgYXR0YWNobWVudHMgbWF5IGNvbnRhaW4gY29uZmlkZW50aWFs IG1hdGVyaWFsIGZvciB0aGUgc29sZSB1c2Ugb2YgdGhlIGludGVuZGVkIHJlY2lwaWVudChzKS4g QW55IHJldmlldyBvciBkaXN0cmlidXRpb24gYnkgb3RoZXJzIGlzIHN0cmljdGx5IHByb2hpYml0 ZWQuIElmIHlvdSBhcmUgbm90IHRoZSBpbnRlbmRlZCByZWNpcGllbnQsIHBsZWFzZSBjb250YWN0 IHRoZSBzZW5kZXIgYW5kIGRlbGV0ZSBhbGwgY29waWVzLgoK From owner-freebsd-drivers@FreeBSD.ORG Mon Mar 1 17:30:11 2010 Return-Path: Delivered-To: freebsd-drivers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id CCAEA1065676; Mon, 1 Mar 2010 17:30:11 +0000 (UTC) (envelope-from brendan.kennedy@intel.com) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by mx1.freebsd.org (Postfix) with ESMTP id 990F48FC21; Mon, 1 Mar 2010 17:30:11 +0000 (UTC) Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga101.fm.intel.com with ESMTP; 01 Mar 2010 09:27:05 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.49,561,1262592000"; d="scan'208,217";a="544966697" Received: from irsmsx601.ger.corp.intel.com ([163.33.7.164]) by fmsmga002.fm.intel.com with ESMTP; 01 Mar 2010 09:29:16 -0800 Received: from irsmsx502.ger.corp.intel.com ([163.33.7.249]) by irsmsx601.ger.corp.intel.com ([163.33.7.164]) with mapi; Mon, 1 Mar 2010 17:29:15 +0000 From: "Kennedy, Brendan" To: "Philip@freebsd.org" , "freebsd-drivers@freebsd.org" Date: Mon, 1 Mar 2010 17:29:09 +0000 Thread-Topic: [PATCH] patch to OpenCrypto framework Thread-Index: Acq1cXwxCeATwdblSpC7MMMSLsfcRwD8vO/g Message-ID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: x-cr-hashedpuzzle: BCpu BRrn B+BG Cubl D9iU GyfZ G0oA KWSX KZSm K3/n NAn7 OOrJ SOjO SRcB TI2F UWkG; 2; ZgByAGUAZQBiAHMAZAAtAGQAcgBpAHYAZQByAHMAQABmAHIAZQBlAGIAcwBkAC4AbwByAGcAOwBwAGgAaQBsAGkAcABAAGYAcgBlAGUAYgBzAGQALgBvAHIAZwA=; Sosha1_v1; 7; {3067E049-C613-4158-99BD-AEF9B9287FA1}; YgByAGUAbgBkAGEAbgAuAGsAZQBuAG4AZQBkAHkAQABpAG4AdABlAGwALgBjAG8AbQA=; Mon, 01 Mar 2010 17:29:09 GMT; UgBFADoAIABbAFAAQQBUAEMASABdACAAcABhAHQAYwBoACAAdABvACAATwBwAGUAbgBDAHIAeQBwAHQAbwAgAGYAcgBhAG0AZQB3AG8AcgBrAA== x-cr-puzzleid: {3067E049-C613-4158-99BD-AEF9B9287FA1} acceptlanguage: en-US Content-Type: multipart/mixed; boundary="_005_CFBC532374C38D45810FA00BC2D2C204254419irsmsx502gercorpi_" MIME-Version: 1.0 X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: Subject: RE: [PATCH] patch to OpenCrypto framework X-BeenThere: freebsd-drivers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Writing device drivers for FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 Mar 2010 17:30:11 -0000 --_005_CFBC532374C38D45810FA00BC2D2C204254419irsmsx502gercorpi_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGkgQWxsLA0KDQpKdXN0IHNlbmRpbmcgb24gdGhlc2UgcGF0Y2hlcyB3aXRob3V0IHRoZSBjb3B5 cmlnaHQg4oCTIHdlIGRvbuKAmXQgcmVxdWlyZSBpdCB0byBiZSB0aGVyZSBmb3Igc21hbGwgY29k ZSBjaGFuZ2Vz4oCmDQoNClJlZ2FyZHMsDQpCcmVuZGFuDQoNCkZyb206IEtlbm5lZHksIEJyZW5k YW4NClNlbnQ6IFdlZG5lc2RheSwgRmVicnVhcnkgMjQsIDIwMTAgNDo1MSBQTQ0KVG86ICdQaGls aXBAZnJlZWJzZC5vcmcnOyAnZnJlZWJzZC1kcml2ZXJzQGZyZWVic2Qub3JnJw0KU3ViamVjdDog W1BBVENIXSBwYXRjaCB0byBPcGVuQ3J5cHRvIGZyYW1ld29yaw0KDQpIaSBQaGlsaXAsIEFsbCwN Cg0KQXR0YWNoZWQgaXMgYSBwYXRjaCB0byB0aGUgT3BlbkNyeXB0byBmcmFtZXdvcmsuIEl0IGhh cyBiZWVuIHRlc3RlZCB3aXRoIEZyZWVCU0QgNy4xLCBidXQgdGhlIHJlbGV2YW50IGNvZGUgc2Vj dGlvbnMgZG8gbm90IHNlZW0gdG8gaGF2ZSBjaGFuZ2VkIGZvciBGcmVlQlNEIDguDQpJIGhhdmUg YWxzbyBhdHRhY2hlZCBhIHBhdGNoIHRvIE9wZW5TU0wgYXMgYSByZWZlcmVuY2UgKHRoYXQgcGF0 Y2ggd2lsbCBiZSByZWxlYXNlZCB0byBPcGVuU1NMIEhFQUQgYWxzbykuIE9uZSBvZiB0aGUgY2hh bmdlcyB0byBjcnlwdG9kZXYuYyBlZmZlY3RzIGhvdyBpdCBjb21tdW5pY2F0ZXMgd2l0aCBlbmdf Y3J5cHRvZGV2LmMgaW4gb3BlbnNzbC4NCg0KVGhpcyBPcGVuQ3J5cHRvIHBhdGNoIGRvZXMgYSBu dW1iZXIgb2YgdXBkYXRlczoNCjEpIEl0IHVwZGF0ZXMgQ3J5cHRvZGV2IHRvIGFsbG9jYXRlIGNv bnRpZ3VvdXMgbWVtb3J5IGJsb2NrcyDigJMgYSByZXF1aXJlbWVudCBmb3Igc29tZSBoYXJkd2Fy ZSBkcml2ZXJzDQoyKSBJdCBhbGxvd3MgdGhlIENyeXB0b2RldiBkcml2ZXIgdG8gZGlmZmVyZW50 aWF0ZSBiZXR3ZWVuIGEgcHJvY2VzcyBmYWlsIGFuZCBhbiBhbGdvcml0aG0gZmFpbCDigJMgbWFp bmx5IGVmZmVjdGluZyBEU0EgdmVyaWZ5IGZ1bmN0aW9uYWxpdHkuIFBsZWFzZSBhbHNvIHNlZSB0 aGUgT3BlblNTTCBwYXRjaCB0byBnZXQgdGhlIGZ1bGwgcGljdHVyZS4gSWYgYSBkcml2ZXIgZG9l cyBub3Qgc3VwcG9ydCBjZXJ0YWluIGtleSBzaXplcywgaXQgc2hvdWxkIHN0aWxsIGJlIHBvc3Np YmxlIHRvIHJ1biB0aGUgdmVyaWZ5IGluIHNvZnR3YXJlLg0KDQpJ4oCZdmUgY29tbWVudGVkIHdp dGhpbiB0aGUgcGF0Y2ggY29kZSBiZWxvdy4NCg0KZGlmZiAtcnVwIGtlcm5lbHNyYy5vcmlnL3N5 cy9vcGVuY3J5cHRvL2NyeXB0b2Rldi5jIGtlcm5lbHNyYy5wYXRjaGVkL3N5cy9vcGVuY3J5cHRv L2NyeXB0b2Rldi5jDQotLS0ga2VybmVsc3JjLm9yaWcvc3lzL29wZW5jcnlwdG8vY3J5cHRvZGV2 LmMgICAyMDA4LTExLTI1IDAyOjU5OjI5LjAwMDAwMDAwMCArMDAwMA0KKysrIGtlcm5lbHNyYy5w YXRjaGVkL3N5cy9vcGVuY3J5cHRvL2NyeXB0b2Rldi5jICAgICAgICAyMDA5LTA0LTI4IDE0OjQ3 OjA5LjAwMDAwMDAwMCArMDAwMA0KQEAgLTM5Nyw4ICszOTIsMTAgQEANCiAgICAgICAgICAgICAg ICBjc2UtPnVpby51aW9faW92WzBdLmlvdl9sZW4gPSBjb3AtPmxlbjsNCiAgICAgICAgICAgICAg ICBpZiAoY3NlLT50aGFzaCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3NlLT51 aW8udWlvX2lvdlswXS5pb3ZfbGVuICs9IGNzZS0+dGhhc2gtPmhhc2hzaXplOw0KLSAgICAgICAg ICAgICAgY3NlLT51aW8udWlvX2lvdlswXS5pb3ZfYmFzZSA9IG1hbGxvYyhjc2UtPnVpby51aW9f aW92WzBdLmlvdl9sZW4sDQotICAgICAgICAgICAgICAgICAgTV9YREFUQSwgTV9XQUlUT0spOw0K Kw0KKyAgICAgICAgICAgICBjc2UtPnVpby51aW9faW92WzBdLmlvdl9iYXNlID0gY29udGlnbWFs bG9jKGNzZS0+dWlvLnVpb19pb3ZbMF0uaW92X2xlbiwNCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIE1fREVWQlVGLCAwLCAwLCAoMUwgPDwgMzEpLA0KKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgOCwgMTAyNCAqIDEwMjQpOw0KDQogICAgICAgICAgICAgICAgY3JwID0gY3J5cHRv X2dldHJlcSgoY3NlLT50eGZvcm0gIT0gTlVMTCkgKyAoY3NlLT50aGFzaCAhPSBOVUxMKSk7DQog ICAgICAgICAgICAgICAgaWYgKGNycCA9PSBOVUxMKSB7DQpAQCAtNTE5LDcgKzUxNiw4IEBADQog ICAgICAgICAgICAgICAgaWYgKGNycCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Y3J5cHRvX2ZyZWVyZXEoY3JwKTsNCiAgICAgICAgICAgICAgICBpZiAoY3NlLT51aW8udWlvX2lv dlswXS5pb3ZfYmFzZSkNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcmVlKGNzZS0+ dWlvLnVpb19pb3ZbMF0uaW92X2Jhc2UsIE1fWERBVEEpOw0KKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgY29udGlnZnJlZShjc2UtPnVpby51aW9faW92WzBdLmlvdl9iYXNlLA0KKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNzZS0+dWlvLnVpb19pb3Zb MF0uaW92X2xlbiwgTV9ERVZCVUYpOw0KDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCltC cmVuZGFuXSB0aGVzZSBhcmUgdGhlIGNoYW5nZXMgZm9yIGNvbnRpZyBhbGxvY2F0aW9uL2ZyZWVp bmcNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQogICAgICAgICAgICAgICAgcmV0dXJu IChlcnJvcik7DQogfQ0KQEAgLTYwMSwxMCArNTk5LDEzIEBADQogICAgICAgICAgICAgICAga3Jw LT5rcnBfc3RhdHVzID0gMDsNCiAgICAgICAgICAgICAgICBrcnAtPmtycF9jYWxsYmFjayA9IChp bnQgKCopIChzdHJ1Y3QgY3J5cHRrb3AgKikpIGNyeXB0b2RldmtleV9jYjsNCg0KLSAgICAgICAg ICAgICAgZm9yIChpID0gMDsgaSA8IENSS19NQVhQQVJBTTsgaSsrKSB7DQotICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgaWYgKGtvcC0+Y3JrX3BhcmFtW2ldLmNycF9uYml0cyA+IDY1NTM2 KQ0KKyAgICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgaW4gKyBvdXQ7IGkrKykgew0KKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGtvcC0+Y3JrX3BhcmFtW2ldLmNycF9uYml0cyA+ IDY1NTM2KSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAvKiBMaW1pdCBpcyB0aGUgc2FtZSBhcyBpbiBPcGVuQlNEICovDQorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpbnRmKCI8Y3J5cHRvPjogYXJnIHNpemUg bGltaXQgYnJlYWNoZWQsIHNpemU9ICVkXG4iLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga29wLT5j cmtfcGFyYW1baV0uY3JwX25iaXRzKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg IH0NCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KW0JyZW5kYW5dIEEgc2xpZ2h0IG9wdGlt aXphdGlvbiArIHNvbWUgZGVidWcuIEhvd2V2ZXIgdGhpcyBjb3VsZCBjYXVzZSBhIGNyYXNoIGlm IENyeXB0b2RldiBpcyBmZWQgYmFkIHBhcmFtZXRlcnMgZnJvbSB1c2Vyc3BhY2UNCi0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg a3JwLT5rcnBfcGFyYW1baV0uY3JwX25iaXRzID0ga29wLT5jcmtfcGFyYW1baV0uY3JwX25iaXRz Ow0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwga3Jw LT5rcnBfaXBhcmFtcyArIGtycC0+a3JwX29wYXJhbXM7IGkrKykgew0KQEAgLTYzMCw3ICs2MzEs NiBAQA0KDQogICAgICAgICAgICAgICAga29wLT5jcmtfY3JpZCA9IGtycC0+a3JwX2NyaWQ7ICAg ICAgICAgICAgICAgICAgLyogZGV2aWNlIHRoYXQgZGlkIHRoZSB3b3JrICovDQogICAgICAgICAg ICAgICAgaWYgKGtycC0+a3JwX3N0YXR1cyAhPSAwKSB7DQotICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgZXJyb3IgPSBrcnAtPmtycF9zdGF0dXM7DQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGdvdG8gZmFpbDsNCiAgICAgICAgICAgICAgICB9DQotLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0NCltCcmVuZGFuXSBGb3IgRFNBIHZlcmlmeSDigJMgaWYgdGhlIEhhcmR3YXJl IHByb2Nlc3MgZmFpbHMgKGFzIG9wcG9zZWQgdG8gdGhlIGFsZ29yaXRobSBzYXlpbmcg4oCYbm90 IHZlcmlmaWVk4oCZKSwgaXQgY2FuIHN0aWxsIGJlIHJ1biBpbiBzb2Z0d2FyZS4gVGhpcyBpcyBo ZWxwZnVsIGZvciBoYXJkd2FyZSB0aGF0IG9ubHkgc3VwcG9ydHMgY2VydGFpbiBrZXkgc2l6ZXMu DQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0KDQoNCi0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkludGVsIFNoYW5ub24g TGltaXRlZApSZWdpc3RlcmVkIGluIElyZWxhbmQKUmVnaXN0ZXJlZCBPZmZpY2U6IENvbGxpbnN0 b3duIEluZHVzdHJpYWwgUGFyaywgTGVpeGxpcCwgQ291bnR5IEtpbGRhcmUKUmVnaXN0ZXJlZCBO dW1iZXI6IDMwODI2MwpCdXNpbmVzcyBhZGRyZXNzOiBEcm9tb3JlIEhvdXNlLCBFYXN0IFBhcmss IFNoYW5ub24sIENvLiBDbGFyZQoKVGhpcyBlLW1haWwgYW5kIGFueSBhdHRhY2htZW50cyBtYXkg Y29udGFpbiBjb25maWRlbnRpYWwgbWF0ZXJpYWwgZm9yIHRoZSBzb2xlIHVzZSBvZiB0aGUgaW50 ZW5kZWQgcmVjaXBpZW50KHMpLiBBbnkgcmV2aWV3IG9yIGRpc3RyaWJ1dGlvbiBieSBvdGhlcnMg aXMgc3RyaWN0bHkgcHJvaGliaXRlZC4gSWYgeW91IGFyZSBub3QgdGhlIGludGVuZGVkIHJlY2lw aWVudCwgcGxlYXNlIGNvbnRhY3QgdGhlIHNlbmRlciBhbmQgZGVsZXRlIGFsbCBjb3BpZXMuCgo= --_005_CFBC532374C38D45810FA00BC2D2C204254419irsmsx502gercorpi_ Content-Type: application/octet-stream; name="opencrypto_FreeBSD7.1.patch" Content-Description: opencrypto_FreeBSD7.1.patch Content-Disposition: attachment; filename="opencrypto_FreeBSD7.1.patch"; size=1718; creation-date="Tue, 26 Jan 2010 11:00:44 GMT"; modification-date="Mon, 01 Mar 2010 17:24:22 GMT" Content-Transfer-Encoding: base64 ZGlmZiAtcnVwIGtlcm5lbHNyYy5vcmlnL3N5cy9vcGVuY3J5cHRvL2NyeXB0b2Rldi5jIGtlcm5l bHNyYy5wYXRjaGVkL3N5cy9vcGVuY3J5cHRvL2NyeXB0b2Rldi5jCi0tLSBrZXJuZWxzcmMub3Jp Zy9zeXMvb3BlbmNyeXB0by9jcnlwdG9kZXYuYyAgIDIwMDgtMTEtMjUgMDI6NTk6MjkuMDAwMDAw MDAwICswMDAwCisrKyBrZXJuZWxzcmMucGF0Y2hlZC9zeXMvb3BlbmNyeXB0by9jcnlwdG9kZXYu YyAgICAgICAgMjAwOS0wNC0yOCAxNDo0NzowOS4wMDAwMDAwMDAgKzAwMDAKQEAgLTM5Nyw4ICsz OTIsMTAgQEAKIAljc2UtPnVpby51aW9faW92WzBdLmlvdl9sZW4gPSBjb3AtPmxlbjsKIAlpZiAo Y3NlLT50aGFzaCkKIAkJY3NlLT51aW8udWlvX2lvdlswXS5pb3ZfbGVuICs9IGNzZS0+dGhhc2gt Pmhhc2hzaXplOwotCWNzZS0+dWlvLnVpb19pb3ZbMF0uaW92X2Jhc2UgPSBtYWxsb2MoY3NlLT51 aW8udWlvX2lvdlswXS5pb3ZfbGVuLAotCSAgICBNX1hEQVRBLCBNX1dBSVRPSyk7CisJCisJY3Nl LT51aW8udWlvX2lvdlswXS5pb3ZfYmFzZSA9IGNvbnRpZ21hbGxvYyhjc2UtPnVpby51aW9faW92 WzBdLmlvdl9sZW4sIAorCQkJTV9ERVZCVUYsIDAsIDAsICgxTCA8PCAzMSksCisgICAgICAgIAkJ OCwgMTAyNCAqIDEwMjQpOwogCiAJY3JwID0gY3J5cHRvX2dldHJlcSgoY3NlLT50eGZvcm0gIT0g TlVMTCkgKyAoY3NlLT50aGFzaCAhPSBOVUxMKSk7CiAJaWYgKGNycCA9PSBOVUxMKSB7CkBAIC01 MTksNyArNTE2LDggQEAKIAlpZiAoY3JwKQogCQljcnlwdG9fZnJlZXJlcShjcnApOwogCWlmIChj c2UtPnVpby51aW9faW92WzBdLmlvdl9iYXNlKQotCQlmcmVlKGNzZS0+dWlvLnVpb19pb3ZbMF0u aW92X2Jhc2UsIE1fWERBVEEpOworCQljb250aWdmcmVlKGNzZS0+dWlvLnVpb19pb3ZbMF0uaW92 X2Jhc2UsCisJCQljc2UtPnVpby51aW9faW92WzBdLmlvdl9sZW4sIE1fREVWQlVGKTsKIAogCXJl dHVybiAoZXJyb3IpOwogfQpAQCAtNjAxLDEwICs1OTksMTMgQEAKIAlrcnAtPmtycF9zdGF0dXMg PSAwOwogCWtycC0+a3JwX2NhbGxiYWNrID0gKGludCAoKikgKHN0cnVjdCBjcnlwdGtvcCAqKSkg Y3J5cHRvZGV2a2V5X2NiOwogCi0JZm9yIChpID0gMDsgaSA8IENSS19NQVhQQVJBTTsgaSsrKSB7 Ci0JCWlmIChrb3AtPmNya19wYXJhbVtpXS5jcnBfbmJpdHMgPiA2NTUzNikKKwlmb3IgKGkgPSAw OyBpIDwgaW4gKyBvdXQ7IGkrKykgeworCQlpZiAoa29wLT5jcmtfcGFyYW1baV0uY3JwX25iaXRz ID4gNjU1MzYpIHsKIAkJCS8qIExpbWl0IGlzIHRoZSBzYW1lIGFzIGluIE9wZW5CU0QgKi8KKwkJ CXByaW50ZigiPGNyeXB0bz46IGFyZyBzaXplIGxpbWl0IGJyZWFjaGVkLCBzaXplPSAlZFxuIiwK KwkJCQkJa29wLT5jcmtfcGFyYW1baV0uY3JwX25iaXRzKTsKIAkJCWdvdG8gZmFpbDsKKwkJfQog CQlrcnAtPmtycF9wYXJhbVtpXS5jcnBfbmJpdHMgPSBrb3AtPmNya19wYXJhbVtpXS5jcnBfbmJp dHM7CiAJfQogCWZvciAoaSA9IDA7IGkgPCBrcnAtPmtycF9pcGFyYW1zICsga3JwLT5rcnBfb3Bh cmFtczsgaSsrKSB7CkBAIC02MzAsNyArNjMxLDYgQEAKIAkKIAlrb3AtPmNya19jcmlkID0ga3Jw LT5rcnBfY3JpZDsJCS8qIGRldmljZSB0aGF0IGRpZCB0aGUgd29yayAqLwogCWlmIChrcnAtPmty cF9zdGF0dXMgIT0gMCkgewotCQllcnJvciA9IGtycC0+a3JwX3N0YXR1czsKIAkJZ290byBmYWls OwogCX0KIAo= --_005_CFBC532374C38D45810FA00BC2D2C204254419irsmsx502gercorpi_ Content-Type: application/octet-stream; name="ocf-openssl-0 9 8_1_0_0_eng_cryptodev_PKE_fix.patch" Content-Description: ocf-openssl-0 9 8_1_0_0_eng_cryptodev_PKE_fix.patch Content-Disposition: attachment; filename="ocf-openssl-0 9 8_1_0_0_eng_cryptodev_PKE_fix.patch"; size=2041; creation-date="Mon, 15 Feb 2010 19:53:59 GMT"; modification-date="Mon, 01 Mar 2010 14:51:15 GMT" Content-Transfer-Encoding: base64 ZGlmZiAtcnVwIG9wZW5zc2wtMC45LjhnLm9yaWcvY3J5cHRvL2VuZ2luZS9lbmdfY3J5cHRvZGV2 LmMgb3BlbnNzbC0wLjkuOGcucGF0Y2hlZC9jcnlwdG8vZW5naW5lL2VuZ19jcnlwdG9kZXYuYwot LS0gb3BlbnNzbC0wLjkuOGcub3JpZy9jcnlwdG8vZW5naW5lL2VuZ19jcnlwdG9kZXYuYwkyMDA5 LTEwLTE0IDExOjU1OjE0LjAwMDAwMDAwMCArMDEwMAorKysgb3BlbnNzbC0wLjkuOGcucGF0Y2hl ZC9jcnlwdG8vZW5naW5lL2VuZ19jcnlwdG9kZXYuYwkyMDA5LTEwLTE0IDExOjU2OjIwLjAwMDAw MDAwMCArMDEwMApAQCAtMTAyOSwxMCArMTAyOSwxOCBAQCBjcnlwdG9kZXZfYm5fbW9kX2V4cChC SUdOVU0gKnIsIGNvbnN0IEJJCiAJCWdvdG8gZXJyOwogCWtvcC5jcmtfaXBhcmFtcyA9IDM7CiAK LQlpZiAoY3J5cHRvZGV2X2FzeW0oJmtvcCwgQk5fbnVtX2J5dGVzKG0pLCByLCAwLCBOVUxMKSA9 PSAtMSkgeworCWlmIChjcnlwdG9kZXZfYXN5bSgma29wLCBCTl9udW1fYnl0ZXMobSksIHIsIDAs IE5VTEwpKSB7CisJCXByaW50ZigiT0NGIGFzeW0gcHJvY2VzcyBmYWlsZWQsIFJ1bm5pbmcgaW4g c29mdHdhcmVcbiIpOworCQljb25zdCBSU0FfTUVUSE9EICptZXRoID0gUlNBX1BLQ1MxX1NTTGVh eSgpOworCQlyZXQgPSBtZXRoLT5ibl9tb2RfZXhwKHIsIGEsIHAsIG0sIGN0eCwgaW5fbW9udCk7 CisKKwl9IGVsc2UgaWYgKEVDQU5DRUxFRCA9PSBrb3AuY3JrX3N0YXR1cykgeworCQlwcmludGYo Ik9DRiBoYXJkd2FyZSBvcGVyYXRpb24gY2FuY2VsbGVkLiBSdW5uaW5nIGluIFNvZnR3YXJlXG4i KTsKIAkJY29uc3QgUlNBX01FVEhPRCAqbWV0aCA9IFJTQV9QS0NTMV9TU0xlYXkoKTsKIAkJcmV0 ID0gbWV0aC0+Ym5fbW9kX2V4cChyLCBhLCBwLCBtLCBjdHgsIGluX21vbnQpOwogCX0KKwkvKiBl bHNlIGNyeXB0b2RldiBvcGVyYXRpb24gd29ya2VkIG9rID09PiByZXQgPSAxKi8KKwogZXJyOgog CXphcHBhcmFtcygma29wKTsKIAlyZXR1cm4gKHJldCk7CkBAIC0xMDc2LDEwICsxMDg0LDE4IEBA IGNyeXB0b2Rldl9yc2FfbW9kX2V4cChCSUdOVU0gKnIwLCBjb25zdCAKIAkJZ290byBlcnI7CiAJ a29wLmNya19pcGFyYW1zID0gNjsKIAotCWlmIChjcnlwdG9kZXZfYXN5bSgma29wLCBCTl9udW1f Ynl0ZXMocnNhLT5uKSwgcjAsIDAsIE5VTEwpID09IC0xKSB7CisJaWYgKGNyeXB0b2Rldl9hc3lt KCZrb3AsIEJOX251bV9ieXRlcyhyc2EtPm4pLCByMCwgMCwgTlVMTCkpIHsKKwkJcHJpbnRmKCJP Q0YgYXN5bSBwcm9jZXNzIGZhaWxlZCwgcnVubmluZyBpbiBTb2Z0d2FyZVxuIik7CisJCWNvbnN0 IFJTQV9NRVRIT0QgKm1ldGggPSBSU0FfUEtDUzFfU1NMZWF5KCk7CisJCXJldCA9ICgqbWV0aC0+ cnNhX21vZF9leHApKHIwLCBJLCByc2EsIGN0eCk7CisKKwl9IGVsc2UgaWYgKEVDQU5DRUxFRCA9 PSBrb3AuY3JrX3N0YXR1cykgeworCQlwcmludGYoIk9DRiBoYXJkd2FyZSBvcGVyYXRpb24gY2Fu Y2VsbGVkLiBSdW5uaW5nIGluIFNvZnR3YXJlXG4iKTsKIAkJY29uc3QgUlNBX01FVEhPRCAqbWV0 aCA9IFJTQV9QS0NTMV9TU0xlYXkoKTsKIAkJcmV0ID0gKCptZXRoLT5yc2FfbW9kX2V4cCkocjAs IEksIHJzYSwgY3R4KTsKIAl9CisJLyogZWxzZSBjcnlwdG9kZXYgb3BlcmF0aW9uIHdvcmtlZCBv ayA9PT4gcmV0ID0gMSovCisKIGVycjoKIAl6YXBwYXJhbXMoJmtvcCk7CiAJcmV0dXJuIChyZXQp OwpAQCAtMTIxNSw3ICsxMjMxLDggQEAgY3J5cHRvZGV2X2RzYV92ZXJpZnkoY29uc3QgdW5zaWdu ZWQgY2hhcgogCWtvcC5jcmtfaXBhcmFtcyA9IDc7CiAKIAlpZiAoY3J5cHRvZGV2X2FzeW0oJmtv cCwgMCwgTlVMTCwgMCwgTlVMTCkgPT0gMCkgewotCQlkc2FyZXQgPSBrb3AuY3JrX3N0YXR1czsK Ky8qT0NGIHN1Y2Nlc3MgdmFsdWUgaXMgMCwgaWYgbm90IHplcm8sIGNoYW5nZSBkc2FyZXQgdG8g ZmFpbCovCisJCWlmKDAgIT0ga29wLmNya19zdGF0dXMpIGRzYXJldCAgPSAwOwogCX0gZWxzZSB7 CiAJCWNvbnN0IERTQV9NRVRIT0QgKm1ldGggPSBEU0FfT3BlblNTTCgpOwogCg== --_005_CFBC532374C38D45810FA00BC2D2C204254419irsmsx502gercorpi_-- From owner-freebsd-drivers@FreeBSD.ORG Mon Mar 1 18:15:13 2010 Return-Path: Delivered-To: freebsd-drivers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2E85E106567C for ; Mon, 1 Mar 2010 18:15:13 +0000 (UTC) (envelope-from pyunyh@gmail.com) Received: from mail-fx0-f223.google.com (mail-fx0-f223.google.com [209.85.220.223]) by mx1.freebsd.org (Postfix) with ESMTP id 8388B8FC18 for ; Mon, 1 Mar 2010 18:15:12 +0000 (UTC) Received: by fxm23 with SMTP id 23so395509fxm.3 for ; Mon, 01 Mar 2010 10:15:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:received:from:date:to:cc :subject:message-id:reply-to:references:mime-version:content-type :content-disposition:in-reply-to:user-agent; bh=Az00YLY7G7f1Vrd6KNsKeiEmQh2to1wnNtk8fY/GJ4g=; b=BsXOhRBo4s9UdvjQKlTqB9t1FwZCntgtpMtplKTo/DCehDYa9cfCdFaCFDZvnjAtkE iqgfoZUOySh9JZyLGcR/k79UlquzEoNfrKiRQR+HAYoWl+JAtC/i6FoDDJ8agvp1q5dx aLC8UfWuxghThSPJR2SlWauqu3W5c8Os81mho= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=from:date:to:cc:subject:message-id:reply-to:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; b=TDLAq8DcqiPKTSc+RfXQrXBR7dV6YLSVdLguv3IUEReG83JLGcJee0sln8jaRvpxKS yJx6NxMd4s9dnVH3J7GKb9mr7Qyu1DcRZNsOoUA/+ppeSwwYmzU0fizmA3gA/NUxEzgl GJYCRh08berT1GwASbsWlhvjVXATpuL2bG3jw= Received: by 10.87.44.30 with SMTP id w30mr8001938fgj.5.1267467308081; Mon, 01 Mar 2010 10:15:08 -0800 (PST) Received: from pyunyh@gmail.com ([174.35.1.224]) by mx.google.com with ESMTPS id d4sm1855217fga.8.2010.03.01.10.15.04 (version=TLSv1/SSLv3 cipher=RC4-MD5); Mon, 01 Mar 2010 10:15:06 -0800 (PST) Received: by pyunyh@gmail.com (sSMTP sendmail emulation); Mon, 1 Mar 2010 10:14:44 -0800 From: Pyun YongHyeon Date: Mon, 1 Mar 2010 10:14:44 -0800 To: "Kennedy, Brendan" Message-ID: <20100301181444.GA1293@michelle.cdnetworks.com> References: <20100227225228.470e9b7b@davenulle.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.2.3i Cc: "Philip@freebsd.org" , "freebsd-drivers@freebsd.org" Subject: Re: [PATCH] patch to OpenCrypto framework X-BeenThere: freebsd-drivers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: pyunyh@gmail.com List-Id: Writing device drivers for FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 Mar 2010 18:15:13 -0000 On Mon, Mar 01, 2010 at 05:09:54PM +0000, Kennedy, Brendan wrote: > Hi Patrick, > > You are right to an extent - hardware drivers generally require physically contiguous memory to work with, however virtually contiguous allocations under a page size should not cause a problem (unless the allocation crosses a virtual page boundary). > From the man page, malloc gives page boundary aligned memory so long as the requested size is less than a page, so I guess the best workaround would be to have something like: > > if(get_page_size() < crp_desc->packet_size){ > malloc(packet_size); > }else > contigmalloc(packetsize); > } > > The same check can be done when it is time to free the memory. What do you think? It could be even nicer if malloc would take a flag to give physically contiguous memory! > > As for GELI/IPSEC (not sure about Kerberos, but grepping for crypto_dispatch the FreeBSD sources should find each app where Opencrypto is used): > > IPSEC: racoon uses cryptodev and the ipsec stack does encrypt/decrypts on packet fragments which tend to be less than the kernel page size (this is worth checking for connections with MTU > PAGE_SIZE) > GELI: I suppose there could be an issue if the file system block size is greater than the kernel page size, however for optimal performance these two numbers tend to be aligned. There still should be a check before crypto_dispatch is called however. > > I think it is best to do this check at allocation time, rather than forcing drivers to do it. It would be a serious overhead for them to have to do another allocation and memory copy in the data path. > If hardware can handle non-contiguous memory region, this change may add more overheads to those hardwares. Couldn't this be handled in hardware driver? I guess cheap hardware may have other limitation as well(alignment restrictions, size limitation etc). Just changing contigmalloc(9) wouldn't solve other limitation of hardware. Alternatively can we add some capability flag to driver such that framework can do required action(contigmalloc or malloc) based on the capability? > Best Regards, > Brendan > > > -----Original Message----- > From: Patrick Lamaiziere [mailto:patfbsd@davenulle.org] > Sent: Saturday, February 27, 2010 9:52 PM > To: freebsd-drivers@freebsd.org > Cc: Kennedy, Brendan; Philip@freebsd.org > Subject: Re: [PATCH] patch to OpenCrypto framework > > Le Wed, 24 Feb 2010 16:50:35 +0000, > "Kennedy, Brendan" a ??crit : > > > Hi Philip, All, > > Hello, > > > This OpenCrypto patch does a number of updates: > > > > 1) It updates Cryptodev to allocate contiguous memory blocks ??? a > > requirement for some hardware drivers > > I don't see the benefit for this one -changing malloc(9) to > contigmalloc(9)- it introduces a small (but useless) overhead > to existing drivers (I tried with glxsb : we lose around 5%). > > IMO, if this is required for some drivers, this is not > the good place to do this. A crypto driver can receive data from > somewhere else than cryptodev: ipsec, geli, kerberos (at least) > > Best regards. > -------------------------------------------------------------- > Intel Shannon Limited > Registered in Ireland > Registered Office: Collinstown Industrial Park, Leixlip, County Kildare > Registered Number: 308263 > Business address: Dromore House, East Park, Shannon, Co. Clare > > This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies. > > _______________________________________________ > freebsd-drivers@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-drivers > To unsubscribe, send any mail to "freebsd-drivers-unsubscribe@freebsd.org" From owner-freebsd-drivers@FreeBSD.ORG Mon Mar 1 19:48:39 2010 Return-Path: Delivered-To: freebsd-drivers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 259D1106564A; Mon, 1 Mar 2010 19:48:39 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (bsdimp.com [199.45.160.85]) by mx1.freebsd.org (Postfix) with ESMTP id C7EE58FC24; Mon, 1 Mar 2010 19:48:38 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by harmony.bsdimp.com (8.14.3/8.14.1) with ESMTP id o21JefZk050658; Mon, 1 Mar 2010 12:40:41 -0700 (MST) (envelope-from imp@bsdimp.com) Date: Mon, 01 Mar 2010 12:40:57 -0700 (MST) Message-Id: <20100301.124057.302004119300070473.imp@bsdimp.com> To: pyunyh@gmail.com From: "M. Warner Losh" In-Reply-To: <20100301181444.GA1293@michelle.cdnetworks.com> References: <20100227225228.470e9b7b@davenulle.org> <20100301181444.GA1293@michelle.cdnetworks.com> X-Mailer: Mew version 6.3 on Emacs 22.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: brendan.kennedy@intel.com, freebsd-drivers@freebsd.org, Philip@freebsd.org Subject: Re: [PATCH] patch to OpenCrypto framework X-BeenThere: freebsd-drivers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Writing device drivers for FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 Mar 2010 19:48:39 -0000 In message: <20100301181444.GA1293@michelle.cdnetworks.com> Pyun YongHyeon writes: : On Mon, Mar 01, 2010 at 05:09:54PM +0000, Kennedy, Brendan wrote: : > Hi Patrick, : > : > You are right to an extent - hardware drivers generally require physically contiguous memory to work with, however virtually contiguous allocations under a page size should not cause a problem (unless the allocation crosses a virtual page boundary). : > From the man page, malloc gives page boundary aligned memory so long as the requested size is less than a page, so I guess the best workaround would be to have something like: : > : > if(get_page_size() < crp_desc->packet_size){ : > malloc(packet_size); : > }else : > contigmalloc(packetsize); : > } : > : > The same check can be done when it is time to free the memory. What do you think? It could be even nicer if malloc would take a flag to give physically contiguous memory! : > : > As for GELI/IPSEC (not sure about Kerberos, but grepping for crypto_dispatch the FreeBSD sources should find each app where Opencrypto is used): : > : > IPSEC: racoon uses cryptodev and the ipsec stack does encrypt/decrypts on packet fragments which tend to be less than the kernel page size (this is worth checking for connections with MTU > PAGE_SIZE) : > GELI: I suppose there could be an issue if the file system block size is greater than the kernel page size, however for optimal performance these two numbers tend to be aligned. There still should be a check before crypto_dispatch is called however. : > : > I think it is best to do this check at allocation time, rather than forcing drivers to do it. It would be a serious overhead for them to have to do another allocation and memory copy in the data path. : > : : If hardware can handle non-contiguous memory region, this change : may add more overheads to those hardwares. Couldn't this be : handled in hardware driver? I guess cheap hardware may have other : limitation as well(alignment restrictions, size limitation etc). : Just changing contigmalloc(9) wouldn't solve other limitation of : hardware. : Alternatively can we add some capability flag to driver such that : framework can do required action(contigmalloc or malloc) based on : the capability? I wonder why these buffers aren't aren't being managed by bus_space_dma(9) which hides these details... Warner : > Best Regards, : > Brendan : > : > : > -----Original Message----- : > From: Patrick Lamaiziere [mailto:patfbsd@davenulle.org] : > Sent: Saturday, February 27, 2010 9:52 PM : > To: freebsd-drivers@freebsd.org : > Cc: Kennedy, Brendan; Philip@freebsd.org : > Subject: Re: [PATCH] patch to OpenCrypto framework : > : > Le Wed, 24 Feb 2010 16:50:35 +0000, : > "Kennedy, Brendan" a ??crit : : > : > > Hi Philip, All, : > : > Hello, : > : > > This OpenCrypto patch does a number of updates: : > > : > > 1) It updates Cryptodev to allocate contiguous memory blocks ??? a : > > requirement for some hardware drivers : > : > I don't see the benefit for this one -changing malloc(9) to : > contigmalloc(9)- it introduces a small (but useless) overhead : > to existing drivers (I tried with glxsb : we lose around 5%). : > : > IMO, if this is required for some drivers, this is not : > the good place to do this. A crypto driver can receive data from : > somewhere else than cryptodev: ipsec, geli, kerberos (at least) : > : > Best regards. : > -------------------------------------------------------------- : > Intel Shannon Limited : > Registered in Ireland : > Registered Office: Collinstown Industrial Park, Leixlip, County Kildare : > Registered Number: 308263 : > Business address: Dromore House, East Park, Shannon, Co. Clare : > : > This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies. : > : : > _______________________________________________ : > freebsd-drivers@freebsd.org mailing list : > http://lists.freebsd.org/mailman/listinfo/freebsd-drivers : > To unsubscribe, send any mail to "freebsd-drivers-unsubscribe@freebsd.org" : : _______________________________________________ : freebsd-drivers@freebsd.org mailing list : http://lists.freebsd.org/mailman/listinfo/freebsd-drivers : To unsubscribe, send any mail to "freebsd-drivers-unsubscribe@freebsd.org" : : From owner-freebsd-drivers@FreeBSD.ORG Mon Mar 1 20:08:59 2010 Return-Path: Delivered-To: freebsd-drivers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0D1D0106564A; Mon, 1 Mar 2010 20:08:59 +0000 (UTC) (envelope-from brendan.kennedy@intel.com) Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by mx1.freebsd.org (Postfix) with ESMTP id CF2218FC35; Mon, 1 Mar 2010 20:08:58 +0000 (UTC) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga101.jf.intel.com with ESMTP; 01 Mar 2010 12:06:06 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.49,561,1262592000"; d="scan'208";a="496735543" Received: from irsmsx601.ger.corp.intel.com ([163.33.7.164]) by orsmga002.jf.intel.com with ESMTP; 01 Mar 2010 12:08:21 -0800 Received: from irsmsx501.ger.corp.intel.com (163.33.7.70) by irsmsx601.ger.corp.intel.com (163.33.7.164) with Microsoft SMTP Server (TLS) id 8.2.176.0; Mon, 1 Mar 2010 20:08:56 +0000 Received: from irsmsx502.ger.corp.intel.com ([163.33.7.249]) by irsmsx501.ger.corp.intel.com ([163.33.7.70]) with mapi; Mon, 1 Mar 2010 20:08:55 +0000 From: "Kennedy, Brendan" To: "pyunyh@gmail.com" Date: Mon, 1 Mar 2010 20:08:54 +0000 Thread-Topic: [PATCH] patch to OpenCrypto framework Thread-Index: Acq5aybQtoW5pcW4R0OVVs88NDqL1wAAlQ1g Message-ID: References: <20100227225228.470e9b7b@davenulle.org> <20100301181444.GA1293@michelle.cdnetworks.com> In-Reply-To: <20100301181444.GA1293@michelle.cdnetworks.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: acceptlanguage: en-US Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Cc: "Philip@freebsd.org" , "freebsd-drivers@freebsd.org" Subject: RE: [PATCH] patch to OpenCrypto framework X-BeenThere: freebsd-drivers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Writing device drivers for FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 Mar 2010 20:08:59 -0000 DQo+LS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj5Gcm9tOiBQeXVuIFlvbmdIeWVvbiBbbWFp bHRvOnB5dW55aEBnbWFpbC5jb21dDQo+DQo+PiBJIHRoaW5rIGl0IGlzIGJlc3QgdG8gZG8gdGhp cyBjaGVjayBhdCBhbGxvY2F0aW9uIHRpbWUsIHJhdGhlciB0aGFuDQo+Zm9yY2luZyBkcml2ZXJz IHRvIGRvIGl0LiBJdCB3b3VsZCBiZSBhIHNlcmlvdXMgb3ZlcmhlYWQgZm9yIHRoZW0gdG8NCj5o YXZlIHRvIGRvIGFub3RoZXIgYWxsb2NhdGlvbiBhbmQgbWVtb3J5IGNvcHkgaW4gdGhlIGRhdGEg cGF0aC4NCj4+DQo+DQo+SWYgaGFyZHdhcmUgY2FuIGhhbmRsZSBub24tY29udGlndW91cyBtZW1v cnkgcmVnaW9uLCB0aGlzIGNoYW5nZQ0KPm1heSBhZGQgbW9yZSBvdmVyaGVhZHMgdG8gdGhvc2Ug aGFyZHdhcmVzLiBDb3VsZG4ndCB0aGlzIGJlDQo+aGFuZGxlZCBpbiBoYXJkd2FyZSBkcml2ZXI/ DQoNCkhtbSwgd2hlbiBpdCBjb21lcyB0byBtZW1vcnkgYWxsb2NhdGlvbnMgYW5kIGRhdGEgY29w aWVzLCB0aGUgbGVzcyB0aGF0IGFyZSBkb25lIGluIHRoZSBkYXRhIHBhdGggdGhlIGJldHRlciEN Ck5vdCBhZGRpbmcgY29kZSB0byBoYW5kbGUgdGhpcyBjYXNlIG91dHNpZGUgZHJpdmVycyBjb3Vs ZCBlbmQgd2l0aCB2ZW5kb3JzIGhhdmluZyB0byBwYXRjaCBzdXBwb3J0ZWQgZnJhbWV3b3JrcyBh cyBiZXN0IHRoZXkgY2FuLg0KDQpBbm90aGVyIHdheSB3b3VsZCBiZSBmb3IgZHJpdmVycyB0byBz dXBwb3J0IGJyZWFraW5nIHZpcnR1YWxseSBjb250aWd1b3VzIG1lbW9yeSBpbnRvIHNjYXR0ZXIg Z2F0aGVyIGxpc3RzIG9mIHBoeXNpY2FsbHkgY29udGlndW91cyBtZW1vcnkgYmVmb3JlIHNlbmRp bmcgdG8gaGFyZHdhcmUuDQpJdCBzb3VuZHMgbGlrZSBzb21ldGhpbmcgdGhhdCBjb3VsZCBiZSBk b25lIGZyb20gYSBrZXJuZWwgZnVuY3Rpb24sIGJ1dCBJJ20gbm90IHN1cmUgd2hhdCB0aGUgb3Zl cmhlYWQgd291bGQgYmUgdnMgY29udGlnbWFsbG9jIChwcm9iYWJseSBsZXNzIG92ZXJoZWFkIGFu ZCBtYXliZSBzdHVyZGllciB3aGVuIHRoZXJlJ3MgYSBoaWdoIGxldmVsIG9mIG1lbW9yeSBmcmFn bWVudGF0aW9uKS4NCg0KPiBJIGd1ZXNzIGNoZWFwIGhhcmR3YXJlIG1heSBoYXZlIG90aGVyDQo+ bGltaXRhdGlvbiBhcyB3ZWxsKGFsaWdubWVudCByZXN0cmljdGlvbnMsIHNpemUgbGltaXRhdGlv biBldGMpLg0KPkp1c3QgY2hhbmdpbmcgY29udGlnbWFsbG9jKDkpIHdvdWxkbid0IHNvbHZlIG90 aGVyIGxpbWl0YXRpb24gb2YNCj5oYXJkd2FyZS4NCg0KQ2hhbmdpbmcgdGhlIGtlcm5lbCBiYXNl ZCBvbiB0aGUgcG9zc2libHkgbGVzc2VyIGNhcGFiaWxpdGllcyBvZiBzb21lIGhhcmR3YXJlIGlz IHByb2JhYmx5IG5vdCBhIGdvb2QgaWRlYS4NCkhvd2V2ZXIgSSB0aGluayBtb3N0IGV4dGVybmFs IGhhcmR3YXJlIGRyaXZlcnMgaGF2ZSB0byBoYW5kbGUgdGhlIGlzc3VlIG9mIG5vbiBjb250aWd1 b3VzIHBoeXNpY2FsIG1lbW9yeSBpbiBzb21lIHdheS4NCg0KPkFsdGVybmF0aXZlbHkgY2FuIHdl IGFkZCBzb21lIGNhcGFiaWxpdHkgZmxhZyB0byBkcml2ZXIgc3VjaCB0aGF0DQo+ZnJhbWV3b3Jr IGNhbiBkbyByZXF1aXJlZCBhY3Rpb24oY29udGlnbWFsbG9jIG9yIG1hbGxvYykgYmFzZWQgb24N Cj50aGUgY2FwYWJpbGl0eT8NCj4NCg0KVGhhdCBzb3VuZHMgbGlrZSBhIGdvb2QgbWV0aG9kIQ0K DQpCZXN0IFJlZ2FyZHMsDQpCcmVuZGFuDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpJbnRlbCBTaGFubm9uIExpbWl0ZWQKUmVn aXN0ZXJlZCBpbiBJcmVsYW5kClJlZ2lzdGVyZWQgT2ZmaWNlOiBDb2xsaW5zdG93biBJbmR1c3Ry aWFsIFBhcmssIExlaXhsaXAsIENvdW50eSBLaWxkYXJlClJlZ2lzdGVyZWQgTnVtYmVyOiAzMDgy NjMKQnVzaW5lc3MgYWRkcmVzczogRHJvbW9yZSBIb3VzZSwgRWFzdCBQYXJrLCBTaGFubm9uLCBD by4gQ2xhcmUKClRoaXMgZS1tYWlsIGFuZCBhbnkgYXR0YWNobWVudHMgbWF5IGNvbnRhaW4gY29u ZmlkZW50aWFsIG1hdGVyaWFsIGZvciB0aGUgc29sZSB1c2Ugb2YgdGhlIGludGVuZGVkIHJlY2lw aWVudChzKS4gQW55IHJldmlldyBvciBkaXN0cmlidXRpb24gYnkgb3RoZXJzIGlzIHN0cmljdGx5 IHByb2hpYml0ZWQuIElmIHlvdSBhcmUgbm90IHRoZSBpbnRlbmRlZCByZWNpcGllbnQsIHBsZWFz ZSBjb250YWN0IHRoZSBzZW5kZXIgYW5kIGRlbGV0ZSBhbGwgY29waWVzLgoK From owner-freebsd-drivers@FreeBSD.ORG Mon Mar 1 20:11:31 2010 Return-Path: Delivered-To: freebsd-drivers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7F2C41065670; Mon, 1 Mar 2010 20:11:30 +0000 (UTC) (envelope-from pyunyh@gmail.com) Received: from mail-bw0-f228.google.com (mail-bw0-f228.google.com [209.85.218.228]) by mx1.freebsd.org (Postfix) with ESMTP id CEB758FC1F; Mon, 1 Mar 2010 20:11:29 +0000 (UTC) Received: by bwz28 with SMTP id 28so770174bwz.14 for ; Mon, 01 Mar 2010 12:11:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:received:from:date:to:cc :subject:message-id:reply-to:references:mime-version:content-type :content-disposition:in-reply-to:user-agent; bh=52Jt8eLBUaKSoCk0HUMCiyXetVM35YZHOKZXN0+g90A=; b=VkgsQ7OYoN/zh3DpuBLqJQXRB2eIJdJmW0RpNPUwG7iIHrepbrE6W5VwYupUjIq4sd wCICZb7fG2/1zZiu44DEECms05oSVUbMlKwNZ1WyxtH/u2VVsLOLOj/9hk+zLbL2d0iU 6CudENHGV0sh8lclWfEyBAapjFAEI4xCkFtWU= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=from:date:to:cc:subject:message-id:reply-to:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; b=I1VQme8LK+sIyPmUSE8wSsG6AZtMiXHH1ZDn9UxXcMQvxAd1nBJEquSxU6k0uy72mb xDd/S2Af3pS1qTeXqtmM3t/BiA5ZA4QiNFnSw4lI2mxzNr6l4vcvmV5Q34wk4uxa0uz1 r2Nj/OfnCmXzTMiXPlf3PHvfIAYLHJUzRERhE= Received: by 10.102.177.23 with SMTP id z23mr3967634mue.129.1267474282785; Mon, 01 Mar 2010 12:11:22 -0800 (PST) Received: from pyunyh@gmail.com ([174.35.1.224]) by mx.google.com with ESMTPS id b9sm19692724mug.24.2010.03.01.12.11.19 (version=TLSv1/SSLv3 cipher=RC4-MD5); Mon, 01 Mar 2010 12:11:21 -0800 (PST) Received: by pyunyh@gmail.com (sSMTP sendmail emulation); Mon, 1 Mar 2010 12:11:02 -0800 From: Pyun YongHyeon Date: Mon, 1 Mar 2010 12:11:02 -0800 To: "M. Warner Losh" Message-ID: <20100301201102.GF1293@michelle.cdnetworks.com> References: <20100227225228.470e9b7b@davenulle.org> <20100301181444.GA1293@michelle.cdnetworks.com> <20100301.124057.302004119300070473.imp@bsdimp.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20100301.124057.302004119300070473.imp@bsdimp.com> User-Agent: Mutt/1.4.2.3i Cc: brendan.kennedy@intel.com, freebsd-drivers@freebsd.org, Philip@freebsd.org Subject: Re: [PATCH] patch to OpenCrypto framework X-BeenThere: freebsd-drivers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: pyunyh@gmail.com List-Id: Writing device drivers for FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 Mar 2010 20:11:31 -0000 On Mon, Mar 01, 2010 at 12:40:57PM -0700, M. Warner Losh wrote: > In message: <20100301181444.GA1293@michelle.cdnetworks.com> > Pyun YongHyeon writes: > : On Mon, Mar 01, 2010 at 05:09:54PM +0000, Kennedy, Brendan wrote: > : > Hi Patrick, > : > > : > You are right to an extent - hardware drivers generally require physically contiguous memory to work with, however virtually contiguous allocations under a page size should not cause a problem (unless the allocation crosses a virtual page boundary). > : > From the man page, malloc gives page boundary aligned memory so long as the requested size is less than a page, so I guess the best workaround would be to have something like: > : > > : > if(get_page_size() < crp_desc->packet_size){ > : > malloc(packet_size); > : > }else > : > contigmalloc(packetsize); > : > } > : > > : > The same check can be done when it is time to free the memory. What do you think? It could be even nicer if malloc would take a flag to give physically contiguous memory! > : > > : > As for GELI/IPSEC (not sure about Kerberos, but grepping for crypto_dispatch the FreeBSD sources should find each app where Opencrypto is used): > : > > : > IPSEC: racoon uses cryptodev and the ipsec stack does encrypt/decrypts on packet fragments which tend to be less than the kernel page size (this is worth checking for connections with MTU > PAGE_SIZE) > : > GELI: I suppose there could be an issue if the file system block size is greater than the kernel page size, however for optimal performance these two numbers tend to be aligned. There still should be a check before crypto_dispatch is called however. > : > > : > I think it is best to do this check at allocation time, rather than forcing drivers to do it. It would be a serious overhead for them to have to do another allocation and memory copy in the data path. > : > > : > : If hardware can handle non-contiguous memory region, this change > : may add more overheads to those hardwares. Couldn't this be > : handled in hardware driver? I guess cheap hardware may have other > : limitation as well(alignment restrictions, size limitation etc). > : Just changing contigmalloc(9) wouldn't solve other limitation of > : hardware. > : Alternatively can we add some capability flag to driver such that > : framework can do required action(contigmalloc or malloc) based on > : the capability? > > I wonder why these buffers aren't aren't being managed by > bus_space_dma(9) which hides these details... > Maybe the driver is not bus_dma(9) compliant. > Warner > > > : > Best Regards, > : > Brendan > : > > : > > : > -----Original Message----- > : > From: Patrick Lamaiziere [mailto:patfbsd@davenulle.org] > : > Sent: Saturday, February 27, 2010 9:52 PM > : > To: freebsd-drivers@freebsd.org > : > Cc: Kennedy, Brendan; Philip@freebsd.org > : > Subject: Re: [PATCH] patch to OpenCrypto framework > : > > : > Le Wed, 24 Feb 2010 16:50:35 +0000, > : > "Kennedy, Brendan" a ??crit : > : > > : > > Hi Philip, All, > : > > : > Hello, > : > > : > > This OpenCrypto patch does a number of updates: > : > > > : > > 1) It updates Cryptodev to allocate contiguous memory blocks ??? a > : > > requirement for some hardware drivers > : > > : > I don't see the benefit for this one -changing malloc(9) to > : > contigmalloc(9)- it introduces a small (but useless) overhead > : > to existing drivers (I tried with glxsb : we lose around 5%). > : > > : > IMO, if this is required for some drivers, this is not > : > the good place to do this. A crypto driver can receive data from > : > somewhere else than cryptodev: ipsec, geli, kerberos (at least) > : > > : > Best regards. > : > -------------------------------------------------------------- > : > Intel Shannon Limited > : > Registered in Ireland > : > Registered Office: Collinstown Industrial Park, Leixlip, County Kildare > : > Registered Number: 308263 > : > Business address: Dromore House, East Park, Shannon, Co. Clare > : > > : > This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies. > : > > : > : > _______________________________________________ > : > freebsd-drivers@freebsd.org mailing list > : > http://lists.freebsd.org/mailman/listinfo/freebsd-drivers > : > To unsubscribe, send any mail to "freebsd-drivers-unsubscribe@freebsd.org" > : > : _______________________________________________ > : freebsd-drivers@freebsd.org mailing list > : http://lists.freebsd.org/mailman/listinfo/freebsd-drivers > : To unsubscribe, send any mail to "freebsd-drivers-unsubscribe@freebsd.org" > : > : From owner-freebsd-drivers@FreeBSD.ORG Mon Mar 1 20:19:53 2010 Return-Path: Delivered-To: freebsd-drivers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 08973106564A; Mon, 1 Mar 2010 20:19:53 +0000 (UTC) (envelope-from pyunyh@gmail.com) Received: from mail-fx0-f223.google.com (mail-fx0-f223.google.com [209.85.220.223]) by mx1.freebsd.org (Postfix) with ESMTP id 5F4DB8FC0A; Mon, 1 Mar 2010 20:19:52 +0000 (UTC) Received: by fxm23 with SMTP id 23so528589fxm.3 for ; Mon, 01 Mar 2010 12:19:46 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:received:from:date:to:cc :subject:message-id:reply-to:references:mime-version:content-type :content-disposition:in-reply-to:user-agent; bh=eefBbAx78HAXnBvSKqV+u1BzXUHsNvcTR/nGwnTkuVA=; b=AR9dWv4PZwYFNPZLBrATE5vDmg9T8EgJwMBXF1AaXVv6j+3cC3kfcNwU8nFZcTG/98 KSLuh0eCAl19D9nlrIWPVzVpeML01FhcBQ72dzedc1BpMsVBcCg2a4m6hUeGspXT7xZ3 VZGUafwaS4s+tjxX9m3F78mwGkssagMe5L0mM= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=from:date:to:cc:subject:message-id:reply-to:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; b=J4qKERPnfcfBSr0tpSW7kddooHWbBYb1UK4fg/0X3pzMhld8lT6waXTVbQp/jwcUYp i/FMWtpwqGSh8mFvZHyzUaReYMlRCzCfRgOyGgeqhyyRT+ex2T4wQurMgw5CntmgP3hE zH5vz7dhgcmmMFB8cTsrq+WC62G0aZPusMyRE= Received: by 10.223.57.133 with SMTP id c5mr5608930fah.11.1267474786801; Mon, 01 Mar 2010 12:19:46 -0800 (PST) Received: from pyunyh@gmail.com ([174.35.1.224]) by mx.google.com with ESMTPS id 12sm5974201fks.50.2010.03.01.12.19.43 (version=TLSv1/SSLv3 cipher=RC4-MD5); Mon, 01 Mar 2010 12:19:45 -0800 (PST) Received: by pyunyh@gmail.com (sSMTP sendmail emulation); Mon, 1 Mar 2010 12:19:26 -0800 From: Pyun YongHyeon Date: Mon, 1 Mar 2010 12:19:26 -0800 To: "Kennedy, Brendan" Message-ID: <20100301201926.GG1293@michelle.cdnetworks.com> References: <20100227225228.470e9b7b@davenulle.org> <20100301181444.GA1293@michelle.cdnetworks.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.2.3i Cc: "Philip@freebsd.org" , "freebsd-drivers@freebsd.org" Subject: Re: [PATCH] patch to OpenCrypto framework X-BeenThere: freebsd-drivers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: pyunyh@gmail.com List-Id: Writing device drivers for FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 Mar 2010 20:19:53 -0000 On Mon, Mar 01, 2010 at 08:08:54PM +0000, Kennedy, Brendan wrote: > > >-----Original Message----- > >From: Pyun YongHyeon [mailto:pyunyh@gmail.com] > > > >> I think it is best to do this check at allocation time, rather than > >forcing drivers to do it. It would be a serious overhead for them to > >have to do another allocation and memory copy in the data path. > >> > > > >If hardware can handle non-contiguous memory region, this change > >may add more overheads to those hardwares. Couldn't this be > >handled in hardware driver? > > Hmm, when it comes to memory allocations and data copies, the less that are done in the data path the better! > Not adding code to handle this case outside drivers could end with vendors having to patch supported frameworks as best they can. > > Another way would be for drivers to support breaking virtually contiguous memory into scatter gather lists of physically contiguous memory before sending to hardware. I believe bus_dma(9) can handle this. New drivers should always use bus_dma(9). > It sounds like something that could be done from a kernel function, but I'm not sure what the overhead would be vs contigmalloc (probably less overhead and maybe sturdier when there's a high level of memory fragmentation). > It may depends on hardware. If hardware support multiple DMA read for SG list, there would be no overhead at all. bus_dma(9) has slight overhead but most cases it's negligible, I think. > > I guess cheap hardware may have other > >limitation as well(alignment restrictions, size limitation etc). > >Just changing contigmalloc(9) wouldn't solve other limitation of > >hardware. > > Changing the kernel based on the possibly lesser capabilities of some hardware is probably not a good idea. > However I think most external hardware drivers have to handle the issue of non contiguous physical memory in some way. > I agree, this is the reason why I think handling some limitation in driver would be better thing. As I said, bus_dma(9) can take care of non contiguous physical memory limitation of hardware. > >Alternatively can we add some capability flag to driver such that > >framework can do required action(contigmalloc or malloc) based on > >the capability? > > > > That sounds like a good method! > > Best Regards, > Brendan > -------------------------------------------------------------- > Intel Shannon Limited > Registered in Ireland > Registered Office: Collinstown Industrial Park, Leixlip, County Kildare > Registered Number: 308263 > Business address: Dromore House, East Park, Shannon, Co. Clare > > This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies. > From owner-freebsd-drivers@FreeBSD.ORG Mon Mar 1 20:52:45 2010 Return-Path: Delivered-To: freebsd-drivers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5E786106566B; Mon, 1 Mar 2010 20:52:45 +0000 (UTC) (envelope-from brendan.kennedy@intel.com) Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by mx1.freebsd.org (Postfix) with ESMTP id 2A8B98FC0C; Mon, 1 Mar 2010 20:52:44 +0000 (UTC) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga101.jf.intel.com with ESMTP; 01 Mar 2010 12:49:52 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.49,562,1262592000"; d="scan'208";a="496747420" Received: from irsmsx602.ger.corp.intel.com ([163.33.3.242]) by orsmga002.jf.intel.com with ESMTP; 01 Mar 2010 12:52:07 -0800 Received: from irsmsx501.ger.corp.intel.com (163.33.7.70) by irsmsx602.ger.corp.intel.com (163.33.3.242) with Microsoft SMTP Server (TLS) id 8.2.176.0; Mon, 1 Mar 2010 20:52:39 +0000 Received: from irsmsx502.ger.corp.intel.com ([163.33.7.249]) by irsmsx501.ger.corp.intel.com ([163.33.7.70]) with mapi; Mon, 1 Mar 2010 20:52:38 +0000 From: "Kennedy, Brendan" To: "pyunyh@gmail.com" Date: Mon, 1 Mar 2010 20:52:37 +0000 Thread-Topic: [PATCH] patch to OpenCrypto framework Thread-Index: Acq5fIvReLo6vaMjQnOmOdwTl2pzAgAAK+Bg Message-ID: References: <20100227225228.470e9b7b@davenulle.org> <20100301181444.GA1293@michelle.cdnetworks.com> <20100301201926.GG1293@michelle.cdnetworks.com> In-Reply-To: <20100301201926.GG1293@michelle.cdnetworks.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: acceptlanguage: en-US Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Cc: "Philip@freebsd.org" , "freebsd-drivers@freebsd.org" Subject: RE: [PATCH] patch to OpenCrypto framework X-BeenThere: freebsd-drivers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Writing device drivers for FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 Mar 2010 20:52:45 -0000 DQoNCj4tLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPkZyb206IFB5dW4gWW9uZ0h5ZW9uIFtt YWlsdG86cHl1bnloQGdtYWlsLmNvbV0NCj4NCj5PbiBNb24sIE1hciAwMSwgMjAxMCBhdCAwODow ODo1NFBNICswMDAwLCBLZW5uZWR5LCBCcmVuZGFuIHdyb3RlOg0KPj4NCj4+ID4tLS0tLU9yaWdp bmFsIE1lc3NhZ2UtLS0tLQ0KPj4gPkZyb206IFB5dW4gWW9uZ0h5ZW9uIFttYWlsdG86cHl1bnlo QGdtYWlsLmNvbV0NCj4+ID4NCj4+ID4+IEkgdGhpbmsgaXQgaXMgYmVzdCB0byBkbyB0aGlzIGNo ZWNrIGF0IGFsbG9jYXRpb24gdGltZSwgcmF0aGVyIHRoYW4NCj4+ID5mb3JjaW5nIGRyaXZlcnMg dG8gZG8gaXQuIEl0IHdvdWxkIGJlIGEgc2VyaW91cyBvdmVyaGVhZCBmb3IgdGhlbSB0bw0KPj4g PmhhdmUgdG8gZG8gYW5vdGhlciBhbGxvY2F0aW9uIGFuZCBtZW1vcnkgY29weSBpbiB0aGUgZGF0 YSBwYXRoLg0KPj4gPj4NCj4+ID4NCj4+ID5JZiBoYXJkd2FyZSBjYW4gaGFuZGxlIG5vbi1jb250 aWd1b3VzIG1lbW9yeSByZWdpb24sIHRoaXMgY2hhbmdlDQo+PiA+bWF5IGFkZCBtb3JlIG92ZXJo ZWFkcyB0byB0aG9zZSBoYXJkd2FyZXMuIENvdWxkbid0IHRoaXMgYmUNCj4+ID5oYW5kbGVkIGlu IGhhcmR3YXJlIGRyaXZlcj8NCj4+DQo+PiBIbW0sIHdoZW4gaXQgY29tZXMgdG8gbWVtb3J5IGFs bG9jYXRpb25zIGFuZCBkYXRhIGNvcGllcywgdGhlIGxlc3MNCj50aGF0IGFyZSBkb25lIGluIHRo ZSBkYXRhIHBhdGggdGhlIGJldHRlciENCj4+IE5vdCBhZGRpbmcgY29kZSB0byBoYW5kbGUgdGhp cyBjYXNlIG91dHNpZGUgZHJpdmVycyBjb3VsZCBlbmQgd2l0aA0KPnZlbmRvcnMgaGF2aW5nIHRv IHBhdGNoIHN1cHBvcnRlZCBmcmFtZXdvcmtzIGFzIGJlc3QgdGhleSBjYW4uDQo+Pg0KPj4gQW5v dGhlciB3YXkgd291bGQgYmUgZm9yIGRyaXZlcnMgdG8gc3VwcG9ydCBicmVha2luZyB2aXJ0dWFs bHkNCj5jb250aWd1b3VzIG1lbW9yeSBpbnRvIHNjYXR0ZXIgZ2F0aGVyIGxpc3RzIG9mIHBoeXNp Y2FsbHkgY29udGlndW91cw0KPm1lbW9yeSBiZWZvcmUgc2VuZGluZyB0byBoYXJkd2FyZS4NCj4N Cj5JIGJlbGlldmUgYnVzX2RtYSg5KSBjYW4gaGFuZGxlIHRoaXMuIE5ldyBkcml2ZXJzIHNob3Vs ZCBhbHdheXMgdXNlDQo+YnVzX2RtYSg5KS4NCj4NCg0KSSBkb27igJl0IHRoaW5rIHRoaXMgc29s dXRpb24gc3VpdHMgRVA4MDU3OSBkcml2ZXIsIHNpbmNlIGl0IGRvZXMgbm90IGhhbmRsZSBzaGFy ZWQgbWVtb3J5IGRpcmVjdGx5ICh0aGVyZSBpcyBhbiBBUEkvaGFyZHdhcmUgc3BlY2lmaWMgZ3Jv dXAgb2YgbW9kdWxlcyBiZWluZyB1c2VkIHVuZGVyIHRoZSBob29kKS4NCkhvd2V2ZXIgaXQgaXMg YW4gRVA4MDU3OSBkcml2ZXIgc3BlY2lmaWMgY29tcGxhaW50IQ0KDQo+PiBJdCBzb3VuZHMgbGlr ZSBzb21ldGhpbmcgdGhhdCBjb3VsZCBiZSBkb25lIGZyb20gYSBrZXJuZWwgZnVuY3Rpb24sDQo+ YnV0IEknbSBub3Qgc3VyZSB3aGF0IHRoZSBvdmVyaGVhZCB3b3VsZCBiZSB2cyBjb250aWdtYWxs b2MgKHByb2JhYmx5DQo+bGVzcyBvdmVyaGVhZCBhbmQgbWF5YmUgc3R1cmRpZXIgd2hlbiB0aGVy ZSdzIGEgaGlnaCBsZXZlbCBvZiBtZW1vcnkNCj5mcmFnbWVudGF0aW9uKS4NCj4+DQo+DQo+SXQg bWF5IGRlcGVuZHMgb24gaGFyZHdhcmUuIElmIGhhcmR3YXJlIHN1cHBvcnQgbXVsdGlwbGUgRE1B IHJlYWQNCj5mb3IgU0cgbGlzdCwgdGhlcmUgd291bGQgYmUgbm8gb3ZlcmhlYWQgYXQgYWxsLiBi dXNfZG1hKDkpIGhhcw0KPnNsaWdodCBvdmVyaGVhZCBidXQgbW9zdCBjYXNlcyBpdCdzIG5lZ2xp Z2libGUsIEkgdGhpbmsuDQo+DQoNClRoaXMgaXMgcHJvYmFibHkgYSBnb29kIGlkZWEgZm9yIG91 ciBkcml2ZXIgY29kZSBhcyB0aGUgQVBJIHN1cHBvcnRzIFNHIGxpc3RzLg0KDQo+PiA+IEkgZ3Vl c3MgY2hlYXAgaGFyZHdhcmUgbWF5IGhhdmUgb3RoZXINCj4+ID5saW1pdGF0aW9uIGFzIHdlbGwo YWxpZ25tZW50IHJlc3RyaWN0aW9ucywgc2l6ZSBsaW1pdGF0aW9uIGV0YykuDQo+PiA+SnVzdCBj aGFuZ2luZyBjb250aWdtYWxsb2MoOSkgd291bGRuJ3Qgc29sdmUgb3RoZXIgbGltaXRhdGlvbiBv Zg0KPj4gPmhhcmR3YXJlLg0KPj4NCj4+IENoYW5naW5nIHRoZSBrZXJuZWwgYmFzZWQgb24gdGhl IHBvc3NpYmx5IGxlc3NlciBjYXBhYmlsaXRpZXMgb2Ygc29tZQ0KPmhhcmR3YXJlIGlzIHByb2Jh Ymx5IG5vdCBhIGdvb2QgaWRlYS4NCj4+IEhvd2V2ZXIgSSB0aGluayBtb3N0IGV4dGVybmFsIGhh cmR3YXJlIGRyaXZlcnMgaGF2ZSB0byBoYW5kbGUgdGhlDQo+aXNzdWUgb2Ygbm9uIGNvbnRpZ3Vv dXMgcGh5c2ljYWwgbWVtb3J5IGluIHNvbWUgd2F5Lg0KPj4NCj4NCj5JIGFncmVlLCB0aGlzIGlz IHRoZSByZWFzb24gd2h5IEkgdGhpbmsgaGFuZGxpbmcgc29tZSBsaW1pdGF0aW9uIGluDQo+ZHJp dmVyIHdvdWxkIGJlIGJldHRlciB0aGluZy4gQXMgSSBzYWlkLCBidXNfZG1hKDkpIGNhbiB0YWtl IGNhcmUNCj5vZiBub24gY29udGlndW91cyBwaHlzaWNhbCBtZW1vcnkgbGltaXRhdGlvbiBvZiBo YXJkd2FyZS4NCj4NCg0KVGhpcyBpcyBpbnRlcmVzdGluZyBldmVuIGlmIGl0IG1pZ2h0IG5vdCBo ZWxwIG91ciBkcml2ZXIsIHRoYW5rcy4NCg0KPj4gPkFsdGVybmF0aXZlbHkgY2FuIHdlIGFkZCBz b21lIGNhcGFiaWxpdHkgZmxhZyB0byBkcml2ZXIgc3VjaCB0aGF0DQo+PiA+ZnJhbWV3b3JrIGNh biBkbyByZXF1aXJlZCBhY3Rpb24oY29udGlnbWFsbG9jIG9yIG1hbGxvYykgYmFzZWQgb24NCj4+ ID50aGUgY2FwYWJpbGl0eT8NCj4+ID4NCj4+DQo+PiBUaGF0IHNvdW5kcyBsaWtlIGEgZ29vZCBt ZXRob2QhDQo+Pg0KPj4gQmVzdCBSZWdhcmRzLA0KPj4gQnJlbmRhbg0KPj4gLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4+IElu dGVsIFNoYW5ub24gTGltaXRlZA0KPj4gUmVnaXN0ZXJlZCBpbiBJcmVsYW5kDQo+PiBSZWdpc3Rl cmVkIE9mZmljZTogQ29sbGluc3Rvd24gSW5kdXN0cmlhbCBQYXJrLCBMZWl4bGlwLCBDb3VudHkN Cj5LaWxkYXJlDQo+PiBSZWdpc3RlcmVkIE51bWJlcjogMzA4MjYzDQo+PiBCdXNpbmVzcyBhZGRy ZXNzOiBEcm9tb3JlIEhvdXNlLCBFYXN0IFBhcmssIFNoYW5ub24sIENvLiBDbGFyZQ0KPj4NCj4+ IFRoaXMgZS1tYWlsIGFuZCBhbnkgYXR0YWNobWVudHMgbWF5IGNvbnRhaW4gY29uZmlkZW50aWFs IG1hdGVyaWFsIGZvcg0KPnRoZSBzb2xlIHVzZSBvZiB0aGUgaW50ZW5kZWQgcmVjaXBpZW50KHMp LiBBbnkgcmV2aWV3IG9yIGRpc3RyaWJ1dGlvbiBieQ0KPm90aGVycyBpcyBzdHJpY3RseSBwcm9o aWJpdGVkLiBJZiB5b3UgYXJlIG5vdCB0aGUgaW50ZW5kZWQgcmVjaXBpZW50LA0KPnBsZWFzZSBj b250YWN0IHRoZSBzZW5kZXIgYW5kIGRlbGV0ZSBhbGwgY29waWVzLg0KPj4NCi0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkludGVs IFNoYW5ub24gTGltaXRlZApSZWdpc3RlcmVkIGluIElyZWxhbmQKUmVnaXN0ZXJlZCBPZmZpY2U6 IENvbGxpbnN0b3duIEluZHVzdHJpYWwgUGFyaywgTGVpeGxpcCwgQ291bnR5IEtpbGRhcmUKUmVn aXN0ZXJlZCBOdW1iZXI6IDMwODI2MwpCdXNpbmVzcyBhZGRyZXNzOiBEcm9tb3JlIEhvdXNlLCBF YXN0IFBhcmssIFNoYW5ub24sIENvLiBDbGFyZQoKVGhpcyBlLW1haWwgYW5kIGFueSBhdHRhY2ht ZW50cyBtYXkgY29udGFpbiBjb25maWRlbnRpYWwgbWF0ZXJpYWwgZm9yIHRoZSBzb2xlIHVzZSBv ZiB0aGUgaW50ZW5kZWQgcmVjaXBpZW50KHMpLiBBbnkgcmV2aWV3IG9yIGRpc3RyaWJ1dGlvbiBi eSBvdGhlcnMgaXMgc3RyaWN0bHkgcHJvaGliaXRlZC4gSWYgeW91IGFyZSBub3QgdGhlIGludGVu ZGVkIHJlY2lwaWVudCwgcGxlYXNlIGNvbnRhY3QgdGhlIHNlbmRlciBhbmQgZGVsZXRlIGFsbCBj b3BpZXMuCgo=