Scott Long recently submitted a list of "nice-to-have" projects for the next 12-months and future releases in general. Many comments and addendums are suggested by various developers and committers. Topics including the adoption of Dragonfly BSD's extensible bsdinstaller (among others) as a worthy sysinstall replacement, ongoing development of ReiserFS4 support for FreeBSD, interesting discussion concerning clustered filesystem support, comments on SANs and much more.
"Most of these tasks are
not trivial, but I hope that talking about them will encourage some
interest. [...]While this is just my personal list, I'd welcome
other additions to it (in the sense of significant projects, not just
individual PRs or bug fixes that one might be interested in)."
From: Scott Long [email blocked] To: freebsd-current Subject: My projects wish-list for the next 12 months Date: 2004-12-01 22:02:40 All, I know that I said last month that we were going to stop promising specific features for the next major release. However, I'd like to throw out a list of things that would be really nice to have in the future, whether its 6.0 or 7.0 or whatever. Most of these tasks are not trivial, but I hope that talking about them will encourage some interest. These are in no particular priority order. I'd also be thrilled if someone wanted to dress this list up in docbook and add it to the webpage. While this is just my personal list, I'd welcome other additions to it (in the sense of significant projects, not just individual PRs or bug fixes that one might be interested in). 1. Keyboard multiplexer. We are running into problems with making ps/2 and USB/bluetooth keyboards work together and work with KVMs. Having a virtual keyboard device that multiplexes the various real keyboard devices and handles hotplug can solve this mess pretty effectively. I know that there has been a lot of talk about this on mailing lists recently but I don't know how much progress is being made so I'm listing it here. 2. New installer. I know some people still consider this a joke, but the reality is that sysinstall is no longer state of the art. It's fairly good at the simple task that it does, but it's becoming harder and harder to fix bugs and extend functionality in it. It's also fairly unfriendly to those of us who haven't been using it since 1995. The DFly folks have some very interesting work in this area (www.bsdinstaller.com) and it would be very good to see if we can collaborate with them on it. 3. Native PCI Express support. I keep on hoping to take care of this, but I never seem to have the time to get past designing it. This task includes 3 parts that are mostly independent. The first is support for the extended PCI config space and memio access method, the second is MSI, and the third is link QOS management. If anyone is interested here, please let me know. 4. Journaled filesystem. While we can debate the merits of speed and data integrety of journalling vs. softupdates, the simple fact remains that softupdates still requires a fsck run on recovery, and the multi-terabyte filesystems that are possible these days make fsck a very long and unpleasant experience, even with bg-fsck. There was work at some point at RPI to add journaling to UFS, but there hasn't been much status on that in a long time. There have also been proposals and works-in-progress to port JFS, ReiserFS, and XFS. Some of these efforts are still alive, but they need to be seen through to completion. But at the risk of opening a can of worms here, I'll say that it's also important to explore non-GPL alternatives. 5. Clustered FS support. SANs are all the rage these days, and clustered filesystems that allow data to be distributed across many storage enpoints and accessed concurrently through the SAN are very powerful. RedHat recently bought Sistina and re-opened the GFS source code, so exploring this would be very interesting. 6. Overhaul CAM, add iSCSI. CAM is very parallel-SCSI centric right now. I have some work-in-progress in Perforce to address this, but it's pretty minimal. The parallel SCSI knowledge needs to be separated out and the stack need to be able to cleanly deal with iSCSI, SCSI, SAS, and maybe even ATA transports. There is a Lucent implementation of iSCSI for FreeBSD 4.x that could be a useful reference, though it's a monolithic stack that doesn't really address the shortcomings of CAM. Having iSCSI infrastructure that supported both hardware and software implementations would be ideal.
Related Links:
And still USB is forgotten
All these improvements sound great. Don't get me wrong. But has any one seriously looked at the state of USB and specifically USB 2.0 highspeed support?
There is none. It doesn't work and Linux and other OS's handle it very will if not great.
Scott please put some thought into how some kind of priority can be put on this.
I'd rather have working highspeed USB 2.0 than multiplexing a friggin keyboard.
Davon Shire.
Re: And still USB is forgotten
The keyboard mux work is an attempt to address support of USB input devices on boot (it originated as a response to complaints about USB keyboard support).
General USB 2.0 (ehci) support was only recently picked up by Ian Dowse after a 3-month lapse in maintainership. Most of his work over the last month or so has consisted of synching FreeBSD's code with latest changes from Net and Open as well as correcting serious bugs. This work really didn't get committed until November see cvs commit: src/sys/dev/usb ehci.c ehcireg.h uhub.c usb_subr.c. Before that time, commits have been spotty. I'm not aware what the technical limitations are (if any) for high-speed support, but I would agree that it's long overdue. You may want to contact the developer out of band and ask what the current issues are - he may even need a hand testing code.
So thankfully, USB 2.0 hasn't been forgotten, it just needed a new parent. :)
Thanks for the update
Thank you very much for the update. I'm sorry if I missed the info about Ian. Most everyone I've talked to has said that the USB 2.0 code is a nightmare.
So thick fuzzy kudos to Ian and all the people working on it. I'll have to try an cvsup and see how things are going.
Thank you I've been waiting about 2 years for this.
Davon Shire
There should be facts instead of words
Hi all, I just want to underline how bigs are the efforts from NetBSD team, they dont dream, they just code.
See you.
Re: There should be facts instead of words
All of the BSD teams work pretty hard, I don't think coding is unique to just the NetBSD team. :)
HaikuFS is a great possibility
I think one thing which would be really neat is to check http://www.haiku-os.org/contribute.php?mode=team_view&id=BFS . This is a very promising file system which is working (unfortunately parts are made in C++). It's fast and journaled and under MIT license. I know SkyOS was hunting for a new filesystem and decided to go for a modified HaikuFS. Why wouldn't this be a way to go for FreeBSD?
This would also improve very much on clients running Haiku and servers running FreeBSD. The best of 2 breeds utilizing the same technology for storing things.
Definitely worth having a look at for Scott Long (FreeBSD) and author of the FS (Axel Dörfler).
Re:HaikuFS is a great possibility
>unfortunately parts are made in C++
I agree! Surely writing that parts in Java would be a lot better!
Well obviously some think it
Well obviously some think it would be better with plain C for interoperability with the kernel...
What would those idiots know?
What would those idiots know?
Next they'll be rejecting submissions written in Visual Basic!
:)
Reiser4 for FreeBSD?
Isn't the Reiser4 license uncompatible even with the DFSG?
Also, does FreeBSD really need a WinFS feel-alike?
Worthless effort
Porting any of XFS/JFS/Reiser* to FreeBSD would be a huge effort, and i think first you (the FreeBSD developers) need to consider if it's worthy at all!
At least someone is doing it
Jean-Sebastien Pederon is in progress of porting reserfs3 to freebsd. http://dumbbell.nerim.net/index2.html.
Though currently it can mount filesystem only in read-only mode.
It is. At least XFS and Reise
It is. At least XFS and Reiser.
It seems XFS is definitely the best for "huge" systems [1] (if you consider FreeBSD a "server" OS and think about scalability) and Reiser is really good for others.
[1] http://oss.sgi.com/projects/xfs/papers/filesystem-perf-tm.pdf
Considering it is GPL, no.
Considering it is GPL, no.
OTFS should be free
Wasabi systems (or whoever legally owns the code) should open up OTFS (WasabiJFS); they have it already working on netbsd for years. Pity it's proprietary...
GUI wishlist(X way)
FreeBSD - server OS. But many people use it as desktop OS(me for example(more than 2 years)). And as I know there are no any gui tools for profesional configuring, managing or installing FreeBSD components.
I know that gui is user level so it is not FreeBSD team problem, but we can`t say that this way of developing OS is not preffered for a feature.
And I`d like to say that xorg and xfree have a good generic drivers mostly for any video cards(possibly in vesa mode or any other) so graffical starting of freebsd boot process(may be dual boot- gui and console) is not hard to make.
Percent of 'not_advanced_users' is very large and gui is a first door for logining FreeBSD into this 'percent'
Just look at MacOS. It is unix, and more - it is FreeBSD- but with a nice gui 8).
Computers for now can eat any of graffical environment - they have such power, so it is not a problem.
to njc - ncurses installer is nice - but not good for "enterprise" segment. Sorry but it is true. May be in that wish-list You forgot to add ncurses-"gui" wrapper(gtk2,fltk2,qt or any other popular) into FreeBSD.
I know U say me that X is not FreeBSD but it will be very nice to see in one of cvsup src-all updates xorg full tree sources with nice FreeBSD-core team support and full xorg team power and of couse full gui installer and configure tool.
It is not hard to do. All people that use XFreeBSDDesktop do many movement with installing it so why team can`t help with it?(full X sources+xfce sources has near 50MB in tar.bz2)
look at FreeBSD+X.org+Xfce - it it fast, configurable and small. Good security and localization. And of couse easy start.
May be nice will be make two cvs tag - desktop and server over STABLE and CURRENT branches so it will be desktop stable and current and server stable and current
ps.sorry for my English it is not my prefered language 8)
pps
WISH_LIST+=
X into main cvs tree
X FreeBSD installer (localization!!!)
X manager(simple and fully localized!!!) into main tree
X FreeBSD kernel tool (localization!!!)
X update tool (localization!!!)
X ports tool (localization!!!)
X QA tool (localization!!!)
hardware wishlist
A nice GUI install wouldn't harm a server system during the initial install but would befit the OS with extra users and publicity.That's if it's working as it should and logically implemented.For a server instalation just don't install everything X related stuff.Elementary peripherals such as CD/DVD-+r ,floppy,mice,sound-card,printer should run automatically out of the box.
Re: GUI Wishlist (X way)
podarok - I did not compile the projects wish-list, the Release Engineer and core team member of FreeBSD Scott Long did. I have no formal association with the FreeBSD project.
The core team has been looking at replacements for the ncurses installer for a very long time, but it has been hard for them to come to an agreement as a development group. Among other things, some freebsd users like the ncurses install because it's lightweight and does not require the intensive resources that an X-based installer would. In general, the core team is attempting to find an installer that can have an interchangeable light-weight front-end and a nicer GUI front-end. They are also looking to improve the installation logic to make it both more friendly to backtracking and errors.
#error DEVICE_POLLING is not compatible with SMP
Subject says all.
Re: #error DEVICE_POLLING is not compatible w/ SMP
Device polling actually does work with SMP, you just have to comment out that error message as well as a couple other lines in /usr/src/sys/kern/kern_poll.c. The error was intended as a precaution because, at the time, dev wasn't positive that SMP would benefit device polling. As it turns out, SMP does benefit device polling and it is possible to get this configuration to work without issue. See: Tuning FreeBSD for different applications for more information.
FireFlyBSD
Crescent Anchor's commerical FireFlyBSD has a working journalling file system... It would be nice of the other BSD's got a peek at that..
Gvinum Documentation
Id like to see some documentation in the handbook for gvinum. Im very confused with the state of the software RAID implementations. Whats going on here?