Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754082AbbDVUDH (ORCPT ); Wed, 22 Apr 2015 16:03:07 -0400 Received: from mail-qk0-f170.google.com ([209.85.220.170]:36753 "EHLO mail-qk0-f170.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752897AbbDVUDF (ORCPT ); Wed, 22 Apr 2015 16:03:05 -0400 MIME-Version: 1.0 In-Reply-To: <20150422143515.GA23155@dellaz> References: <20150413190350.GA9485@kroah.com> <8738434yjk.fsf@x220.int.ebiederm.org> <87lhhv36je.fsf@x220.int.ebiederm.org> <20150414175534.GB3974@kroah.com> <87oamhmbso.fsf_-_@x220.int.ebiederm.org> <553788A9.6090006@gmail.com> <20150422143515.GA23155@dellaz> From: Havoc Pennington Date: Wed, 22 Apr 2015 16:02:34 -0400 X-Google-Sender-Auth: PMaHBB8-Q_mW0SDbPYvJTv9WDMM Message-ID: Subject: Re: Issues with capability bits and meta-data in kdbus To: Michele Curti Cc: Austin S Hemmelgarn , Linus Torvalds , Andy Lutomirski , "Eric W. Biederman" , Greg Kroah-Hartman , Andrew Morton , Arnd Bergmann , One Thousand Gnomes , Tom Gundersen , Jiri Kosina , Linux Kernel Mailing List , Daniel Mack , David Herrmann , Djalal Harouni Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2118 Lines: 43 On Wed, Apr 22, 2015 at 10:35 AM, Michele Curti wrote: > > Just out of curiosity, would you like to change something in dbus design, > if you didn't have to worry about ABI breaks and the like? > Good question. I can't remember any big-picture things, I'm sure the current maintainers and users have a longer list. :-) There are a variety of little small things, some examples I can immediately think of: * the ad hoc authentication protocol is sort of ugly * the byte order marker in every message is silly * protocol version in every message is useless * Ryan Lortie's nice fixes in GVariant, which I think kdbus adopts ( https://people.gnome.org/~ryanl/gvariant-serialisation.pdf ), for the most part these are 'cleanups' but nullable types ("maybe" types for Haskell fans) are a notable semantic addition * specify how it works on Windows, the Windows port last I checked (years ago) didn't do things in a Windows-sensible way * specify what happens when resource limits are reached * wouldn't use XML for introspection data these days http://dbus.freedesktop.org/doc/dbus-specification.html#introspection-format The implementation has more problems: * libdbus had a flawed goal (be the underlying implementation used by higher-level libs), it turns out it's better to implement the protocol in every lib, libdbus was trying to serve too many masters. libdbus is slow and has an annoying API, and the protocol is simple enough for every "stack" (glib, python, etc.) to implement it themselves. * rethink what happens when hitting resource limits in the bus daemon, as discussed in an earlier sub-thread * OOM handling code in the daemon is quite a burden, maybe there's a better way http://blog.ometer.com/2008/02/04/out-of-memory-handling-d-bus-experience/ * config file format, security policy stuff... work to do here Havoc -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/