In case you do not know what you can do with DTrace, take the time to have a look at the DTrace blog. It is worth any minute you invest reading it.
Wir freuen uns, dass auch heuer wieder das BSD Boot Camp am Grazer Linux Tag 2012 stattfindet.
Termin: 28. April 2012 an der FH Joanneum, Alte Poststraße 149 ab 09:00 Uhr
Beginn des BSD Tracks um 10:00 Uhr.
FreeBSD is well known as a network stack reference and research platform. With the expanding installed base of IPv6 systems throughout the world, more focus was brought to making sure that the IPv6 subsystem remained at performance parity with its IPv4 counterpart.
"'IP feature parity' is what our users expect. Closing the gap between IPv6 and IPv4 in terms of performance has become more important as IPv6 is seeing a significant increase in public deployments", says Bjoern Zeeb. "This will help to keep the resource usage at the same level as traffic patterns shift towards IPv6."
One feature that received special attention was hardware assisted offload support: Large/TCP Segment Offload (LSO/TSO) and Large Receive Offload (LRO). Getting the basic support done was very important, as it allows FreeBSD, together with network card vendors, to further improve performance. IPv6 Extension Headers can be taken into account when defining new interfaces and improved basic network packet data types will ease offload implementations in all network card drivers in the future.
Having offload support in the network stack immediately helps loopback performance. Turning on "offloading" for IPv6 avoids expensive calculation and validation of upper layer (TCP and UDP) checksums.
With IPv6, TCP performance is now basically on par with IPv4 in the offloading case, allowing 10 Gbps line speed connections. This is a huge step forward. UDP throughput has increased and is closer to the level of IPv4. Changes to locking allowing better parallelism, which is a step in the right direction.
Initial numbers showing the differences of the work can be found here.
"I'd love to thank the FreeBSD Foundation and iXsystems for sponsoring the project and hope that it will help the community deploying IPv6" closes Bjoern.
LinuxFest NorthWest is this weekend at Bellingham Technical College in Bellingham, WA. There will be a FreeBSD booth which will be handing out PC-BSD DVDs and cool swag. This is a free event, so if youâ€™re in this part of the world, drop by and say hi!
I'm happy to report that the auditdistd project I was working under sponsorship from the FreeBSD Foundation is complete.
The auditdistd daemon is now part of the OpenBSM package and will be available in its next release.
The auditdistd daemon nicely complements the audit framework. It allows one to distribute audit records collected locally with minimal latency to another system. This helps in postmortem analysis, as we know that at least to some point in time audit logs stored on a separate machine can be trusted. This is very important, because once the system is compromised, we cannot trust any of its local files.
One of the most important goals was to make the daemon very secure. We really don't want any weakness in the auditdistd protocol to allow a break into the machine where audit logs are collected. To achieve this, the daemon makes heavy use of sandboxing mechanisms, including Capsicum, if supported by the operating system.
The daemon can act as a sender, as a receiver, or as both. The whole communication between two auditdistd daemons is secured by TLS encryption. Low latency is achieved by using the kqueue mechanism to monitor local trail files and by sending new audit records as quickly as possible.
For more information on how to setup auditdistd please visit its wiki page.
I'd like to thank the FreeBSD Foundation for sponsoring this project and I hope that it will meet the expectations of the FreeBSD community.
Since recent (with the very great help of Ion-Mihai Tetu, a fellow FreeBSD committer and developer for dspam) we (JR-Hosting) are running our anti-spam infrastructure on DSPAM. We stopped using SpamAssassin after some testing and resolving problems. The interesting fact is that we share most directories through nullfs so that both the webjail and the mailjail share data and our users are able to modify settings, see their stats etc. Very great and after overcoming our issues (local delivery was not OK in the beginning and the webjail was not able to properly use the MySQL database backend at first, which was odd because the main system WAS looking into it and the webjail wasn’t), it works just fine. Ofcourse it is still learning but it seems that it finds spam efficiently and quick, and it’s footprint is much much lower then SpamAssassin was. I might want to figure out how to run the daemonized version as per advise of Ion-Mihai, till then it works as a deliveryagent.
I am writing a ‘hosting environment howto’ (or something that will largely look like that) in which I will write about the setup as well.
As I mentioned already in twitter/fb, our xorg-dev/trunk repo is currently
completely unstable because we are trying now to get xorg 7.7 RC ready. Our
wiki page will be updated soon. Testers and feedback are welcomed, but
please make sure you know what you are doing. If you like to discuss with
us directly, please join us on irc efnet/#freebsd-xorg.
The Xorg Team is pleased to announce the next round of Xorg updates.
The team created a new flag called WITH_NEW_XORG that users can include
in /etc/make.conf. This was created for the intel KMS work being done
althouthough It probably works for other chips. Unfortunately, the intel
KMS driver will only work on FreeBSD 9(RELENG|STABLE) or 10/HEAD users.
Older version of FreeBSD will not be supported. Intel users will need
to patch their source manually with Konstantinâ€™s KMS kernel patch to get
the newer chips to work. Please carefully read UPDATING entry.
– libdrm 2.4.31 (including KMS support)
– mesa 7.11.2
– xorg-server 1.10.6
– a lot of new Graphic Drivers.
I would like to thank:
and all helpers and testers from x11@.
Damjan Marion published nice how-to for getting FreeBSD running on BeagleBone. Using it I managed to get my PandaBoard ES running off SD card. The only modifications to this instructions are:
- Use PANDABOARD kernel config. Stock version is configured to use NFS so it should be modified to use SD card as root.
- MLO and u-boot.bin binaries are different. I used these. You'll need boot.scr too.
Performance is still affected by using write-through caches by default, but this issue should be fixed soon.
U-Boot SPL 2011.09-rc2 (Oct 06 2011 - 17:56:54) Texas Instruments OMAP4460 ES1.1 OMAP SD/MMC: 0 reading u-boot.img reading u-boot.bin mkimage signature not found - ih_magic = ea000014 Assuming u-boot.bin .. reading u-boot.bin U-Boot 2011.09-rc2 (Oct 06 2011 - 17:56:54) CPU : OMAP4430 Board: OMAP4 Panda I2C: ready DRAM: 1 GiB WARNING: Caches not enabled MMC: OMAP SD/MMC: 0 Using default environment In: serial Out: serial Err: serial Net: No ethernet found. Hit any key to stop autoboot: 0 reading uEnv.txt ** Unable to read "uEnv.txt" from mmc 0:1 ** reading boot.scr 133 bytes read Loaded script from boot.scr Running bootscript from mmc0 ... ## Executing script at 82000000 reading kernel.bin 3634616 bytes read ## Starting application at 0x80200000 ... initarm: console initialized arg1 mdp = 0x00000000 boothowto = 0x00000000 dtbp = 0xc0552060 kernel image addresses: kernbase = 0xc0000000 _etext (sdata) = 0xc04cb00c _edata = 0xc05775b8 __bss_start = 0xc05775b8 _end = 0xc0595ef4 loader passed (static) kenv: no env, null ptr processing avail regions: 80000000-c0000000 -> 80000000-80200000 = 200000 8064b000-c0000000 -> 8064b000-c0000000 = 3f9b5000 fill in phys_avail: region: 0x80000000 - 0x80200000 (0x00200000) region: 0x8064b000 - 0xc0000000 (0x3f9b5000) KDB: debugger backends: ddb KDB: current backend: ddb Copyright (c) 1992-2012 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD is a registered trademark of The FreeBSD Foundation. FreeBSD 10.0-CURRENT #123 r234390:234445M: Wed Apr 18 20:15:54 PDT 2012 gonzo@bsdbox:/src/FreeBSD/obj/armv6/arm.arm/src/FreeBSD/armv6/sys/PANDABOARD arm CPU: Cortex A9-r2 rev 10 (Cortex-A core) Supported features: ARM_ISA THUMB2 JAZELLE THUMBEE ARMv4 Security_Ext WB disabled EABT branch prediction enabled LoUU:2 LoC:1 LoUIS:2 Cache level 1: 32KB/32B 4-way data cache WB Read-Alloc Write-Alloc 32KB/32B 4-way instruction cache Read-Alloc real memory = 1073741824 (1024 MB) avail memory = 1046401024 (997 MB) Texas Instruments OMAP4430 Processor, Revision ES2.3 random device not loaded; using insecure entropy simplebus0: <Flattened device tree simple bus> on fdtbus0 gic0: <ARM Generic Interrupt Controller> mem 0xe8241000-0xe8241fff,0xe8240100-0xe82401ff on simplebus0 gic0: pn 0x390, arch 0x1, rev 0x2, implementer 0x43b nirqs 160 l2cache0: <PL310 L2 cache controller> mem 0xe8242000-0xe8242fff on simplebus0 L2 Cache: 1024KB/32B 16 ways mp_tmr0: <ARM Generic MPCore Timers> mem 0xe8240200-0xe82402ff,0xe8240600-0xe82406ff irq 27,29 on simplebus0 Timecounter "ARM MPCore Timecouter" frequency 504000000 Hz quality 1000 Event timer "ARM MPCore Eventtimer" frequency 504000000 Hz quality 1000 uart0: <16750 or compatible> mem 0xe8020000-0xe8020fff irq 106 on simplebus0 uart0: console (115384,n,8,1) ti_scm0: <TI Control Module> mem 0xd4e6a000-0xd4e6afff on simplebus0 setting internal 4 for usbb1_ulpiphy_stp setting internal 10c for usbb1_ulpiphy_clk setting internal 10c for usbb1_ulpiphy_dir setting internal 10c for usbb1_ulpiphy_nxt setting internal 10c for usbb1_ulpiphy_dat0 setting internal 10c for usbb1_ulpiphy_dat1 setting internal 10c for usbb1_ulpiphy_dat2 setting internal 10c for usbb1_ulpiphy_dat3 setting internal 10c for usbb1_ulpiphy_dat4 setting internal 10c for usbb1_ulpiphy_dat5 setting internal 10c for usbb1_ulpiphy_dat6 setting internal 10c for usbb1_ulpiphy_dat7 omap4_prcm0: <TI OMAP Power, Reset and Clock Management> mem 0xd4e6b000-0xd4e6cfff,0xd4e6d000-0xd4e6dfff,0xd4e6e000-0xd4e75fff on simplebus0 gpio0: <TI General Purpose I/O (GPIO)> mem 0xd4e76000-0xd4e76fff,0xe8055000-0xe8055fff,0xe8057000-0xe8057fff,0xe8059000-0xe8059fff,0xe805b000-0xe805bfff,0xe805d000-0xe805dfff irq 61,62,63,64,65,66 on simplebus0 gpioc0: <GPIO controller> on gpio0 gpiobus0: <GPIO bus> on gpio0 ehci0: <TI OMAP USB 2.0 controller> mem 0xd4e77c00-0xd4e77cff,0xd4e78000-0xd4e786ff,0xd4e79000-0xd4e79fff irq 109 on simplebus0 ehci0: Starting TI EHCI USB Controller ehci0: UHH revision 0x50700100 ehci0: OMAP_UHH_SYSCONFIG: 0x00000014 ehci0: UHH setup done, uhh_hostconfig=0x8000001c usbus0: EHCI version 1.0 usbus0: <TI OMAP USB 2.0 controller> on ehci0 iichb0: <TI I2C Controller> mem 0xe8070000-0xe80700ff irq 88 on simplebus0 iichb0: I2C revision 4.0 iicbus0: <OFW I2C bus> on iichb0 iic0: <I2C generic I/O> on iicbus0 twl0: <TI TWL4030/TWL5030/TWL60x0/TPS659x0 Companion IC> on iicbus0 twl_vreg0: <TI TWL4030/TWL5030/TWL60x0/TPS659x0 Voltage Regulators> on twl0 ti_sdma0: <TI sDMA Controller> mem 0xd4e7a000-0xd4e7afff irq 44,45,46,47 on simplebus0 ti_sdma0: sDMA revision 00010900 ti_mmchs0: <TI MMC/SD/SDIO High Speed Interface> mem 0xe809c000-0xe809cfff irq 115 on simplebus0 mmc0: <MMC/SD bus> on ti_mmchs0 Timecounters tick every 10.000 msec usbus0: 480Mbps High Speed USB v2.0 twl0: Found (sub)device at 0x48 twl0: Found (sub)device at 0x49 twl0: Found (sub)device at 0x4a twl0: Found (sub)device at 0x4b ugen0.1: <Texas Instruments> at usbus0 uhub0: <Texas Instruments EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus0 mmcsd0: 1886MB <SD Memory Card> at mmc0 30MHz/4bit Root mount waiting for: usbus0 Root mount waiting for: usbus0 uhub0: 3 ports with 3 removable, self powered Root mount waiting for: usbus0 ugen0.2: <vendor 0x0424> at usbus0 uhub1: <vendor 0x0424 product 0x9514, class 9/0, rev 2.00/1.00, addr 2> on usbus0 Root mount waiting for: usbus0 uhub1: 5 ports with 4 removable, self powered ugen0.3: <vendor 0x0424> at usbus0 smsc0: <vendor 0x0424 product 0xec00, rev 2.00/1.00, addr 3> on usbus0 Trying to mousmsc0: chip 0xec00, rev. 0001 nt root from ufs:mmcsd0s2 ... miibus0: <MII bus> on smsc0 ukphy0: <Generic IEEE 802.3u media interface> PHY 1 on miibus0 ukphy0: none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto ue0: <USB Ethernet> on smsc0 ue0: Ethernet address: 42:b5:1b:92:2f:fa warning: no time-of-day clock registered, system time will not be set accurately Setting hostuuid: 498c0afe-89d4-11e1-b9b6-42b51b922ffa. Setting hostid: 0x0b54866b. No suitable dump device was found. Entropy harvesting: interrupts ethernet point_to_point kickstart. Starting file system checks: /dev/mmcsd0s2: FILE SYSTEM CLEAN; SKIPPING CHECKS /dev/mmcsd0s2: clean, 405764 free (1988 frags, 50472 blocks, 0.4% fragmentation) Mounting local file systems:. Setting hostname: pandaboard. smsc0: chip 0xec00, rev. 0001 ue0: link state changed to DOWN Starting Network: lo0 ue0. lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384 options=3<RXCSUM,TXCSUM> inet 127.0.0.1 netmask 0xff000000 ue0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=80001<RXCSUM,LINKSTATE> ether 42:b5:1b:92:2f:fa media: Ethernet autoselect (none) status: no carrier Starting devd. ue0: link state changed to UP Starting dhclient. Can't find free bpf: No such file or directory exiting. /etc/rc.d/dhclient: WARNING: failed to start dhclient Generating host.conf. Waiting 30s for the default route interface: ............................. Creating and/or trimming log files. Starting syslogd. /etc/rc: WARNING: Dump device does not exist. Savecore not run. ELF ldconfig path: /lib /usr/lib /usr/lib/compat Clearing /tmp (X related). Updating motd:. Generating public/private rsa1 key pair. Your identification has been saved in /etc/ssh/ssh_host_key. Your public key has been saved in /etc/ssh/ssh_host_key.pub. The key fingerprint is: fc:fa:d4:6c:ca:d3:c2:c5:ff:7c:05:e1:50:0c:5f:27 root@pandaboard The key's randomart image is: +--[RSA1 1024]----+ | .+E o| | ..oo.| | o.. | | . o | | S . . | | . oo .| | .oo+. .| | ++o. ...| | ..+o .+| +-----------------+ Generating public/private dsa key pair. Your identification has been saved in /etc/ssh/ssh_host_dsa_key. Your public key has been saved in /etc/ssh/ssh_host_dsa_key.pub. The key fingerprint is: cd:16:3a:62:b7:9d:b0:4d:48:c3:93:d1:4a:6a:4f:56 root@pandaboard The key's randomart image is: +--[ DSA 1024]----+ | .. | | ..oE | | o*o. | | o.+B . | | .o+S = | | . o.X . | | o + | | | | | +-----------------+ Generating public/private rsa key pair. Your identification has been saved in /etc/ssh/ssh_host_rsa_key. Your public key has been saved in /etc/ssh/ssh_host_rsa_key.pub. The key fingerprint is: 6b:03:e0:ef:28:66:01:cc:76:8a:88:70:f8:9b:a6:f2 root@pandaboard The key's randomart image is: +--[ RSA 2048]----+ | | | | |o. . | |++.o . | |*+o . . S | |+.o . . . | | + . + | |. B o . . | |o*E.. . | +-----------------+ Generating public/private ecdsa key pair. Your identification has been saved in /etc/ssh/ssh_host_ecdsa_key. Your public key has been saved in /etc/ssh/ssh_host_ecdsa_key.pub. The key fingerprint is: e4:aa:df:df:d4:9d:19:83:42:79:79:18:b0:b8:cc:27 root@pandaboard The key's randomart image is: +--[ECDSA 256]---+ | ... | | . o + | | .. + + . | | oo o . o | | SE o . o | | . o .. .=| | . . .o.| | . . o | | ... ... . | +-----------------+ Starting sshd. Starting cron. Starting background file system checks in 60 seconds. Thu Apr 19 04:03:17 UTC 2012 FreeBSD/arm (pandaboard) (ttyu0) login: root Apr 19 04:03:23 pandaboard login: ROOT LOGIN (root) ON ttyu0 FreeBSD 10.0-CURRENT (PANDABOARD) #123 r234390:234445M: Wed Apr 18 20:15:54 PDT 2012 Welcome to FreeBSD! Before seeking technical support, please use the following resources: o Security advisories and updated errata information for all releases are at http://www.FreeBSD.org/releases/ - always consult the ERRATA section for your release first as it's updated frequently. o The Handbook and FAQ documents are at http://www.FreeBSD.org/ and, along with the mailing lists, can be searched by going to http://www.FreeBSD.org/search/. If the doc package has been installed (or fetched via pkg_add -r lang-freebsd-doc, where lang is the 2-letter language code, e.g. en), they are also available formatted in /usr/local/share/doc/freebsd. If you still have a question or problem, please take the output of `uname -a', along with any relevant error messages, and email it as a question to the [email protected] mailing list. If you are unfamiliar with FreeBSD's directory layout, please refer to the hier(7) manual page. If you are not familiar with manual pages, type `man man'. Edit /etc/motd to change this login announcement. pandaboard# uname -a FreeBSD pandaboard 10.0-CURRENT FreeBSD 10.0-CURRENT #123 r234390:234445M: Wed Apr 18 20:15:54 PDT 2012 gonzo@bsdbox:/src/FreeBSD/obj/armv6/arm.arm/src/FreeBSD/armv6/sys/PANDABOARD arm pandaboard#
Kris has just announced the availability of the first testing snapshot for the upcoming 9.1 release. This snapshot can be downloaded from here.
NOTE: This snapshot is only available for 64-bit systems. Also, if you need the new GEM/KMS support provided in the previous snapshot, do not install this new snapshot on your main system as that support has been removed, pending its commital to FreeBSD. If you need that support and would like to test the new snapshot, test it in a virtual environment.
The wiki is gradually being updated with the new installer and Warden information and those sections will change over the next few days to match the capabilities of this snapshot.
From the announcement:
The PC-BSD team is pleased to make available the first public 9-STABLE snapshot for 64bit systems!
This snapshot provides both users and developers a means to test out new features in the upcoming PC-BSD 9.1 release. This snapshot may contain buggy code and features, so users are encouraged to run it only on non-critical systems.
- FreeBSD 9-STABLE from 4-11-2012
- New system installer! Greatly simplified for desktop and server installs.
- New â€œPC-BSD Serverâ€? installation option. Includes command-line utilities like pbi-manager, warden, metapkgmanager and more.
- Support for ZFS mirror / raidz(1,2,3) during installation.
- Support for SWAP on ZFS, allowing entire disk ZFS installation.
- Support for setting additional ZFS data-set options, such as compression, noexec, etc.
- Warden jail management integrated into system. Allows creating jails via GUI, adding packages and other administration.
- First boot setup wizard allows OEM installs to be easily performed.
- New Bluetooth paring tray / GUI utilities.
- New AppCafe improvements and preferences.
- Improvements to wifi utility.
- Fixed bug causing untranslated strings to show up empty.
- Numerous bug-fixes to PC-BSD related utilities.
- There is a bug installing to boot-camp partitions which will be fixed in next snapshot.
- The warden rc.d script is not enabled by default. Add â€˜warden_enable=â€œYESâ€œâ€˜ to /etc/rc.conf to enable.
- The i386 image was not built for this snapshot, however it will available in the upcoming weeks.
- The installer will not correctly start on systems with < 512MB of ram, which will be fixed in upcoming snapshots.
- This snapshot does NOT contain the upcoming Intel GEM/KMS video driver support. This will be available in a future snapshot.
This weekend I made some progress in the linuxulator:
- I MFCed the reporting of some linux-syscalls to 9-stable and 8-stable.
- I updated my linuxulator-dtrace patch to a recent -current. I already compiled it on i386 and arundel@ has it compiled on amd64. I counted more than 500 new DTrace probes. Now that DTrace rescans for SDT probes when a kernel module is loaded, there is no kernel panic anymore when the linux module is loaded after the DTrace modules and you want to use DTrace. I try to commit this at a morning of a day where I can fix things during the day in case some problems show up which I did not notice during my testing.
- I created a PR for portmgr@ to repocopy a new linux_base port.
- I set the expiration date of linux_base-fc4 (only used by 7.x and upstream way past its EoL) and all dependent ports. It is set to the EoL of the last 7.x release, which can not use a later linux_base port. I also added a comment which explains that the date is the EoL of the last 7.x release.