From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1S7rvA-0000b2-3o for garchives@archives.gentoo.org; Wed, 14 Mar 2012 17:23:32 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id F028EE088C; Wed, 14 Mar 2012 17:23:22 +0000 (UTC) Received: from mail-pz0-f52.google.com (mail-pz0-f52.google.com [209.85.210.52]) by pigeon.gentoo.org (Postfix) with ESMTP id 900A5E0881 for ; Wed, 14 Mar 2012 17:22:21 +0000 (UTC) Received: by dadp12 with SMTP id p12so3246562dad.11 for ; Wed, 14 Mar 2012 10:22:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; bh=arruXLds0p8UZDO5vrfmU6eAjZSfYcsa4iGXjatwpn8=; b=UJT1BLUt3jZSaWwOaj9NKN76C3gBS40fDDjju+MXrsCwkHKZwqP0lSclN+6B0jyxmh SMbAoYggEz/1o9ODB55wYYudCkkLpaI0r4gY7Oq68JwUyhEjCE0J1ZMxGYMP2gyyXNNq 0KwPyDTDfYSAKWQmW7nlSY6l8Dfl5DbEnP5hD1D9p1jXaR2LwV6z6c7yRSMsx2adOPZ2 o+vctgPseXkFFBoFsTsUuqzM5Zzbq5Jjjz6dBSqN2Cnd/fZ8OQiV5ZLoGERoU4aGuwc2 BGIa1PNzeggM87SsQFL6FlwZ7aUKA1WjZmDZOSLLJ2OBKNrD3cRDW9qHqADp76wc3eZ9 0eSw== Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-user@lists.gentoo.org Reply-to: gentoo-user@lists.gentoo.org MIME-Version: 1.0 Received: by 10.68.203.74 with SMTP id ko10mr3810890pbc.125.1331745740779; Wed, 14 Mar 2012 10:22:20 -0700 (PDT) Received: by 10.68.197.41 with HTTP; Wed, 14 Mar 2012 10:22:20 -0700 (PDT) In-Reply-To: <20120314151620.GB24395@acm.acm> References: <20120313130534.GB3457@acm.acm> <20120313190052.GA2430@waltdnes.org> <20120313194727.GB2536@acm.acm> <20120313210737.GD2536@acm.acm> <20120313213330.78c5ebf7@digimed.co.uk> <20120313222019.GE2536@acm.acm> <20120313230358.GF2536@acm.acm> <20120314151620.GB24395@acm.acm> Date: Wed, 14 Mar 2012 11:22:20 -0600 Message-ID: Subject: Re: [gentoo-user] Beta test Gentoo with mdev instead of udev; version 5 - failure :-( From: =?UTF-8?B?Q2FuZWsgUGVsw6FleiBWYWxkw6lz?= To: gentoo-user@lists.gentoo.org Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Archives-Salt: e083306c-6cde-480a-b3d7-a8e636a1b4e2 X-Archives-Hash: 5869c55340d99d4cce96b7a93bdea303 On Wed, Mar 14, 2012 at 9:16 AM, Alan Mackenzie wrote: > Hello, Canek > > On Tue, Mar 13, 2012 at 06:07:32PM -0600, Canek Pel=C3=A1ez Vald=C3=A9s w= rote: >> On Tue, Mar 13, 2012 at 5:03 PM, Alan Mackenzie wrote: > >> >=C2=A0The new hardware will "just work" if there are the correct driver= s >> >built in. =C2=A0That's as true of udev as it is of mdev as it is of the= old >> >static /dev with mknod. > >> No, it is not. You are letting out the sine qua non of the matter: the >> device has to be built, *and the /dev file should exists*. I hope you >> are not suggesting that we put *ALL* the possible files under /dev, >> because that was the idea before devfs, and it doesn't work *IN >> GENERAL*. > > Previously you made appropriate /dev entries with mknod, giving the > device major and minor numbers as parameters. =C2=A0This appeared to work= in > general - I'm not aware of any device it didn't work for. Again, I believe you are not following me. In *general* the number of potential device files under /dev is not bounded. Given N device filess, I can give you an example where you would need N+1 device files. With your experience, I assume you know about huge arrays of SCSI disks, for example; add to that whatever number of USB devices (and the hubs necessary to connect them), whatever number of Bluetooth thingies, etc., etc. Therefore, mknod doesn't solve the problem in general, because I can always give an example where the preset device files on /dev are not enough. >> So, you need something to handle device files on /dev, so you don't >> need every possible device file for every possible piece of hardware. >> But then you want to handle the same device with the same device name, >> so you need some kind of database. Then for the majority of users, >> they want to see *something* happen when they connect aa piece of >> hardware to their computers. > > That happened under the old static /dev system. =C2=A0What was that /dev > system, if not a database matching /dev names to device numbers? =C2=A0I'= m not > sure what you mean by "same device" and "same device name". That if I connect a USB wi-fi dongle, and it appears with the name wlan23, I want *every* time that dongle to have the wlan23 name .Good luck doing that without a database. >> So you need to handle the events associated with the connections (or >> discovery, for things like Bluetooth) of the devices, and since udev is >> already handling the database and the detection of >> connections/discovery, I agree with the decision of leting udev to >> execute programs when something gets connected. You could get that >> function in another program, but you are only moving the problem, *and >> it can also happen very early at boot time*, so lets udev handle it all >> the time. > > Early in boot time, you only need things like disk drives, graphic cards > and keyboards. =C2=A0Anything else can be postponed till late boot time. Bluetooth keyboards. Done, you made my system unbootable when I need to run fsck by hand after a power failure. >> I hope you see where I'm going. As I said before, mdev could (in >> theory) do the same that udev does. But then it will be as complicated >> as udev, *because it is a complicated problem* in general. And I again >> use my fuel injection analogy: it is not *necessary*. It is just very >> damn convenient. > > It may be a complicated problem in general, but many people do not need > that generality. ^^^^^ That's your mistake! (IMHO). I explain below. >=C2=A0I suspect the vast majority don't need it. =C2=A0Neither the > typical desktop, the typical server, nor typical embedded devices like > routers. Alan, the "vast majority" of Linux users right now are phone users. That was my initial point some mails ago. What *you* believe are "regular" users (people like you, or maybe even me), stopped being true a couple of years ago. The days of the Unix admin and workstation user are going the way of the dodo. At least, that's how I see it. >> I have a really time understanding why you don't see the complexity on >> the problem. I explained above: it is a complicated problem (when >> dealing with the general case), and therefore the (general) solution is >> bound to be also complicated. > > I've had a hard time understanding, because up till now, nobody's > described the problem in detail - there's only been hand-waving. > >> You want it simple? Tha'ts fine, it is possible. It's just that it >> will not solve the general problem, just a very specific subset of it. > > That subset used by the vast majority of Linux users. Again, think about phones. And tablets. And TVs. And [insert-here-cool-gadgets-from-the-future]. > =C2=A0And yes, I do want > it simple, because elegant simplicity is the best way, IMAO. =C2=A0You, o= n the > other hand, seem to love complicated solutions because they are "the way > forward". =C2=A0We'll have to agree to disagree on this one. No, it's not a matter of "that's the way forward". It's a matter of trying to solve the general problem. And since the general solution also solves the simple cases, I don't see a reason to waste my time/resources in a solution that in the end will not solve the general problem. Of course, as I have been saying from the beginning, this is OpenSource. Want to pour some effort into solving the simple cases that will not help all the community, and that it will only help in fact a minority, that's your prerogative (and Walt's, and Vapier's, and everyone else that don't like the "complex" but complete solution). Go nuts with it if you want. But please don't dismiss the general solution as "unnecessary" complex when it's not the case, and don't think that the "simple" setups (whatever that means) are the majority. Again, think phones and tablets: those *are* the majority. >> Just as mdev is doing; Walt just posted an email explaining that if >> you use GNOME, KDE, XFCE, or LVM2, mdev is not for you. > > Walter is, I believe, mistaken here. =C2=A0I can mount and use my LVM2 > partitions. =C2=A0Gnome looks like it comes up OK, but that could be moot= , > since right now I haven't got keyboard/mouse drivers under the X server. Oh, for sure you can modify LVM2 to work under mdev. Also GNOME/KDE/XFCE, and everything under the sun. You have the source; you can do *anything* you want with it. But the effort wasted^^^^^Hpoured in that excercise will only serve a handful of users, and it will be never accepted upstream, because upstream is (rightfully) concerned with the general problem. Again, this is OpenSource: go nuts with any problem you find "interesting" (I really don't understand why solving a particular case of the general problem will be more interesting that solving the former, but that is maybe the Computer Scientist in me). I'm more interested in the general solution that will work not only for my current machines, but also for the ones I'm planning to have in the future. I'm dying to get a tablet where I can put GNOME 3 on it; I can bet you another beer that mdev will be not enough to handle that. >> I will not be surprised if in the future the list of programs "not for >> mdev" only grows. > > There's a difference between "needed by portage" and "doesn't work under > mdev". =C2=A0As I say, it will all be moot if the evdev driver won't work > under mdev. With all due respect, Alan (and this is completely sincere, in this list you are of the guys I respect the most), I believe you are thinking too small. Right now Linux runs in my phone, my TV's, my routers and every computer I own. I have a couple of Windows installations, which I use once or twice every three months (I ported a PyGTK program to Windows last week, so I had to boot into Windows for the first time this year). I want Linux running on *everything*, and what is more: I don't want android in my handhelds, I want the full GNOME experience. To accomplish that we need udev; mdev it's just not enough. Regards. --=20 Canek Pel=C3=A1ez Vald=C3=A9s Posgrado en Ciencia e Ingenier=C3=ADa de la Computaci=C3=B3n Universidad Nacional Aut=C3=B3noma de M=C3=A9xico