On Wednesday 19 September 2007, Andrew Morton wrote:One key difference between any of the numerous legacy RTC drivers and the new framework is that the legacy drivers tended to think (wrongly!) they would be the only RTC in the system, while the framework recognizes that other configurations are important. Hence names "rtc0", "rtc1", "rtc2" ... etc in framework drivers, versus just "rtc" in legacy code. Easily tweaked with "udev" if it matters, but current versions of "hwclock" (in util-linux and also in busybox) don't require a /dev/rtc file any more ... they check for /dev/rtc0, and can be told to look at other RTCs too. Not so much an "error" as minor awkwardness. The end result is that only one driver will be active. Not at all. But if two chunks of code try to create /proc/x/y/z, only one of them should succeed. Today, there's a clear bug in procfs whereby both of them will succeed... Then nothing gets stored there; procfs is nonessential. The same code executes as when creating the /proc/x/y/z file fails. But causing duplicated names doesn't need any "fix" when that code handles the error sanely -- by using its "PROCFS=n" code paths. If you're arguing that you think such fault handling code may have a lot of bugs, I might agree: not all fault handling code gets even basic testing. But that would seem to be nothing more than a reason to want some code auditing (to see how common such bugs really are, and fix at least a few of them), and perhaps to let such bugfixes sit in a moderately well-exposed testing tree for a while. Evidently there's no procfs maintainer ... you've said there are patches in MM to detect and report such duplication. What is it turning up? The last time I had occasion to look at such stuff I observed that procfs users were generally sane. If they couldn't create a file, they just continued ... after all, procfs can never be the primary interface. Erroring out is appropriate for fatal errors ... but procfs errors generally can't be fatal. (Code which uses procfs for its primary userspace interface would be the exception.) So most code should never error out on such faults. As I commented above, most code I've happend across will proceed just fine if the extra procfs support is unavailable. After all, it needs to work with CONFIG_PROCFS=n so those code paths aren't going to suddenly stop working! - Dave -
| Arjan van de Ven | [patch] Add basic sanity checks to the syscall execution patch |
| Matthew Wilcox | Re: AIM7 40% regression with 2.6.26-rc1 |
| Bart Van Assche | Integration of SCST in the mainstream Linux kernel |
| Greg Kroah-Hartman | [PATCH 005/196] Chinese: add translation of SubmittingDrivers |
git: | |
| Andy Whitcroft | Re: VCS comparison table |
| David | User's mailing list? And multiple cherry pick |
| Scott Chacon | Git Community Book |
| Mark Levedahl | Re: [PATCH] Teach remote machinery about remotes.default config variable |
| Marco Peereboom | Re: Real men don't attack straw men |
| Richard Stallman | Real men don't attack straw men |
| GVG GVG | ssh_exchange_identification: Connection closed by remote host |
| Tony Abernethy | Re: What is our ultimate goal?? |
| Arjan van de Ven | Re: [GIT]: Networking |
| Jeff Garzik | Re: [bug?] tg3: Failed to load firmware "tigon/tg3_tso.bin" |
| Denys Fedoryshchenko | packetloss, on e1000e worse than r8169? |
| Radu Rendec | Endianness problem with u32 classifier hash masks |
