{"id":60,"date":"2008-11-19T09:33:51","date_gmt":"2008-11-19T17:33:51","guid":{"rendered":"http:\/\/digitalvampire.org\/blog\/?p=60"},"modified":"2008-11-19T09:33:51","modified_gmt":"2008-11-19T17:33:51","slug":"on-over-engineering","status":"publish","type":"post","link":"https:\/\/digitalvampire.org\/blog\/index.php\/2008\/11\/19\/on-over-engineering\/","title":{"rendered":"On over-engineering"},"content":{"rendered":"<p>I&#8217;ve been trying to get a udev rule added to Ubuntu so that <tt>\/dev\/infiniband\/rdma_cm<\/tt> is owned by group &#8220;rdma&#8221; instead of by root, so that unprivileged user applications can be given permission to use it by adding the user to the group rdma.\u00a0 This matches the practice in the Debian udev rules and is a simple way to allow unprivileged use of RDMA while still giving the administrator some control over who exactly uses it.<\/p>\n<p>I created a patch to the Ubuntu librdmacm package containing the appropriate rule and opened a <a title=\"Bug #256216\" href=\"https:\/\/bugs.launchpad.net\/ubuntu\/+source\/librdmacm\/+bug\/256216\">Launchpad bug report<\/a> requesting that it be applied.\u00a0 After two months of waiting, I got a response that basically said, &#8220;no, we don&#8217;t want to do that.&#8221;\u00a0 After another month of asking, I finally found out what <a title=\"comment 14\" href=\"https:\/\/bugs.launchpad.net\/ubuntu\/+source\/librdmacm\/+bug\/256216\/comments\/14\">solution<\/a> Ubuntu would rather have:<\/p>\n<blockquote><p><span class=\"foldable-quoted\">Access to system devices is provided through the HAL or DeviceKit interface.  Permission to access is managed through the PolicyKit layer, where the D-Bus system bus service providing the device access negotiates privilege with the application requesting it. <\/span><\/p><\/blockquote>\n<p>Because of course, rather than having an application simply open a special device node, mediated by standard Unix permissions, we&#8217;d rather have to run a daemon (bonus points for using DBus activation, I guess) and have applications ask that daemon to open the node for them.\u00a0 More work to implement, harder to administer, less reliable for users &#8212; everyone wins!<\/p>\n<p>Sigh&#8230;.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;ve been trying to get a udev rule added to Ubuntu so that \/dev\/infiniband\/rdma_cm is owned by group &#8220;rdma&#8221; instead of by root, so that unprivileged user applications can be given permission to use it by adding the user to the group rdma.\u00a0 This matches the practice in the Debian udev rules and is a [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4,8,9],"tags":[],"class_list":["post-60","post","type-post","status-publish","format-standard","hentry","category-hacking","category-infiniband","category-rdma"],"_links":{"self":[{"href":"https:\/\/digitalvampire.org\/blog\/index.php\/wp-json\/wp\/v2\/posts\/60","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/digitalvampire.org\/blog\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/digitalvampire.org\/blog\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/digitalvampire.org\/blog\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/digitalvampire.org\/blog\/index.php\/wp-json\/wp\/v2\/comments?post=60"}],"version-history":[{"count":1,"href":"https:\/\/digitalvampire.org\/blog\/index.php\/wp-json\/wp\/v2\/posts\/60\/revisions"}],"predecessor-version":[{"id":61,"href":"https:\/\/digitalvampire.org\/blog\/index.php\/wp-json\/wp\/v2\/posts\/60\/revisions\/61"}],"wp:attachment":[{"href":"https:\/\/digitalvampire.org\/blog\/index.php\/wp-json\/wp\/v2\/media?parent=60"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/digitalvampire.org\/blog\/index.php\/wp-json\/wp\/v2\/categories?post=60"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/digitalvampire.org\/blog\/index.php\/wp-json\/wp\/v2\/tags?post=60"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}