summaryrefslogtreecommitdiffstats
path: root/UPDATING
Commit message (Collapse)AuthorAgeFilesLines
* Provide groundwork for 32-bit binary compatibility on non-x86 platforms,nwhitehorn2010-03-111-0/+6
| | | | | | | | | for upcoming 64-bit PowerPC and MIPS support. This renames the COMPAT_IA32 option to COMPAT_FREEBSD32, removes some IA32-specific code from MI parts of the kernel and enhances the freebsd32 compatibility code to support big-endian platforms. Reviewed by: kib, jhb
* Use more proper terms (from official documents) for AMD CPU's.obrien2010-03-101-1/+1
| | | | Reviewed by: imp
* Add -i to the first post-install mergemaster example to makedougb2010-03-101-2/+3
| | | | | | | | it consistent with the other. [1] Add a note about -U to the mergemaster footnote. Submitted by: obrien [1]
* Add wtmpcvt(1).ed2010-01-141-1/+3
| | | | | | | | | | This utility allows users to convert their wtmp databases to the new format. It makes no sense for users to keep their wtmp log files if they are unable to view them. It basically copies ut_line into ut_id as well. This makes it possible for last(1) and ac(8) to match login records with their corresponding logout record.
* Complete the migration towards utmpx.ed2010-01-131-0/+17
| | | | | | - Add a notice to UPDATING, explaining users may need to recompile applications that use the old database. - Bump __FreeBSD_version.
* Introduce the new kernel thread called "deadlock resolver".attilio2010-01-091-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | While the name is pretentious, a good explanation of its targets is reported in this 17 months old presentation e-mail: http://lists.freebsd.org/pipermail/freebsd-arch/2008-August/008452.html In order to implement it, the sq_type in sleepqueues is mandatory and not only compiled along with INVARIANTS option. Additively, a new sleepqueue function, sleepq_type() is added, returning the type of the sleepqueue linked to a wchan. Three new sysctls are added in order to configure the thread: debug.deadlkres.slptime_threshold debug.deadlkres.blktime_threshold debug.deadlkres.sleepfreq rappresenting the thresholds for sleep and block time that will lead to a deadlock matching (when exceeded), while the sleepfreq rappresents the number of seconds between 2 consecutive thread runnings. In order to enable the deadlock resolver thread recompile your kernel with the option DEADLKRES. Reviewed by: jeff Tested by: pho, Giovanni Trematerra Sponsored by: Nokia Incorporated, Sandvine Incorporated MFC after: 2 weeks
* Fixed two typos.ru2009-12-251-2/+2
| | | | Submitted by: Maxim Dounin <mdounin@mdounin.ru>
* Mention the unification of rc.firewall and rc.firewall6.ume2009-12-181-0/+13
| | | | Suggested by: David Horn <dhorn2000__at__gmail.com>
* Add a note that wpa_supplicant(8) may require a full world build todougb2009-11-211-0/+4
| | | | sync up with 20091109.
* Convert syscons on i386 to TERM=xterm.ed2009-11-131-6/+6
| | | | | TEKEN_XTERM is now gone. Because we always use xterm mode now, we only need a TEKEN_CONS25 switch to go back to cons25.
* Switch the default terminal emulation style to xterm for most platforms.ed2009-11-131-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Right now syscons(4) uses a cons25-style terminal emulator. The disadvantages of that are: - Little compatibility with embedded devices with serial interfaces. - Bad bandwidth efficiency, mainly because of the lack of scrolling regions. - A very hard transition path to support for modern character sets like UTF-8. Our terminal emulation library, libteken, has been supporting xterm-style terminal emulation for months, so flip the switch and make everyone use an xterm-style console driver. I still have to enable this on i386. Right now pc98 and i386 share the same /etc/ttys file. I'm not going to switch pc98, because it uses its own Kanji-capable cons25 emulator. IMPORTANT: What to do if things go wrong (i.e. graphical artifacts): - Run the application inside script(1), try to reduce the problem and send me the log file. - In the mean time, you can run `vidcontrol -T cons25' and `export TERM=cons25' so you can run applications the same way you did before. You can also build your kernel with `options TEKEN_CONS25' to make all virtual terminals use the cons25 emulator by default. Discussed on: current@
* Mention the layout change of ieee80211req_scan_result.rpaulo2009-11-091-0/+5
|
* Belatedly add an UPDATING message for the usb ethernet ifnet naming in r188412.thompsa2009-11-031-0/+5
| | | | MFC after: 3 days
* Document atapci kernel module split.mav2009-10-261-0/+9
| | | | | PR: amd64/139859 MFC after: 3 days
* Explain that iwn was updated and the firmware images are now split.rpaulo2009-10-251-0/+8
|
* Fix several logic bugs in the previous IPv6 variable change andhrs2009-09-261-0/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | re-add $ipv6_enable support for backward compatibility. From UPDATING: 1. To use IPv6, simply define $ifconfig_IF_ipv6 like $ifconfig_IF for IPv4. For aliases, $ifconfig_IF_aliasN should be used. Note that both variables need the "inet6" keyword at the head. Do not set $ipv6_network_interfaces manually if you do not understand what you are doing. It is not needed in most cases. $ipv6_ifconfig_IF and $ipv6_ifconfig_IF_aliasN still work, but they are obsolete. 2. $ipv6_enable is obsolete. Use $ipv6_prefer and/or "inet6 accept_rtadv" keyword in ifconfig(8) instead. If you define $ipv6_enable=YES, it means $ipv6_prefer=YES and all configured interfaces have "inet6 accept_rtadv" in the $ifconfig_IF_ipv6. These are for backward compatibility. 3. A new variable $ipv6_prefer has been added. If NO, IPv6 functionality of interfaces with no corresponding $ifconfig_IF_ipv6 is disabled by using "inet6 ifdisabled" flag, and the default address selection policy of ip6addrctl(8) is the IPv4-preferred one (see rc.d/ip6addrctl for more details). Note that if you want to configure IPv6 functionality on the disabled interfaces after boot, first you need to clear the flag by using ifconfig(8) like: ifconfig em0 inet6 -ifdisabled If YES, the default address selection policy is set as IPv6-preferred. The default value of $ipv6_prefer is NO. 4. If your system need to receive Router Advertisement messages, define "inet6 accept_rtadv" in $ifconfig_IF_ipv6. The rc(8) scripts automatically invoke rtsol(8) when the interface becomes UP. The Router Advertisement messages are used for SLAAC (State-Less Address AutoConfiguration).
* Note the D3.03 mesh changes.rpaulo2009-09-221-0/+4
| | | | MFC after: 1 week
* - Mount ZFS snapshots with MNT_IGNORE flag, so they are not visible in regularpjd2009-09-141-0/+4
| | | | | | | | | | df(1) and mount(8) output. This is a bit smilar to OpenSolaris and follows ZFS route of not listing snapshots by default with 'zfs list' command. - Add UPDATING entry to note that ZFS snapshots are no longer visible in mount(8) and df(1) output by default. Reviewed by: kib MFC after: 3 days
* Go ahead and mention the CVS branch name as well as the svn branch name.imp2009-09-051-1/+2
|
* Note migration of tunable from hw.bus.devctl_disable toimp2009-09-051-0/+6
| | | | | | | hw.bus.devctl_queue. The sysctl interface provides legacys upport for the latter sysctl, but the tunable support was removed. MFC after: 1 day
* Actually, stable/8 is what was created...imp2009-09-031-1/+1
|
* Time for house-cleaning:imp2009-09-031-826/+119
| | | | | | | | | o remove all entries before RELENG_7 was branched, as is tradition[*]. o Update examples... nobody cares about 5.x upgrades. o minor format tweaking in a few places. o update copyright (although at best I hold an editors copyright these days). o Remove giving people permission to buy me beer. I don't do enough for this document for that anymore...
* Make head 9.0-CURRENT in preparation for lifting code freeze.kensmith2009-08-221-2/+2
| | | | Approved by: re (implicit)
* * Completely Remove the option STOP_NMI from the kernel. This optionattilio2009-08-131-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | has proven to have a good effect when entering KDB by using a NMI, but it completely violates all the good rules about interrupts disabled while holding a spinlock in other occasions. This can be the cause of deadlocks on events where a normal IPI_STOP is expected. * Adds an new IPI called IPI_STOP_HARD on all the supported architectures. This IPI is responsible for sending a stop message among CPUs using a privileged channel when disponible. In other cases it just does match a normal IPI_STOP. Right now the IPI_STOP_HARD functionality uses a NMI on ia32 and amd64 architectures, while on the other has a normal IPI_STOP effect. It is responsibility of maintainers to eventually implement an hard stop when necessary and possible. * Use the new IPI facility in order to implement a new userend SMP kernel function called stop_cpus_hard(). That is specular to stop_cpu() but it does use the privileged channel for the stopping facility. * Let KDB use the newly introduced function stop_cpus_hard() and leave stop_cpus() for all the other cases * Disable interrupts on CPU0 when starting the process of APs suspension. * Style cleanup and comments adding This patch should fix the reboot/shutdown deadlocks many users are constantly reporting on mailing lists. Please don't forget to update your config file with the STOP_NMI option removal Reviewed by: jhb Tested by: pho, bz, rink Approved by: re (kib)
* Note that COMPAT_43 requires COMPAT_FREEBSD7 too.kib2009-07-261-3/+3
| | | | | Submitted by: Steve Kargl Approved by: re (kensmith)
* Bump the version of all non-symbol-versioned shared libraries inkensmith2009-07-191-0/+5
| | | | | | | | preparation for 8.0-RELEASE. Add the previous version of those libraries to ObsoleteFiles.inc and bump __FreeBSD_Version. Reviewed by: kib Approved by: re (rwatson)
* Build on Jeff Roberson's linker-set based dynamic per-CPU allocatorrwatson2009-07-141-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (DPCPU), as suggested by Peter Wemm, and implement a new per-virtual network stack memory allocator. Modify vnet to use the allocator instead of monolithic global container structures (vinet, ...). This change solves many binary compatibility problems associated with VIMAGE, and restores ELF symbols for virtualized global variables. Each virtualized global variable exists as a "reference copy", and also once per virtual network stack. Virtualized global variables are tagged at compile-time, placing the in a special linker set, which is loaded into a contiguous region of kernel memory. Virtualized global variables in the base kernel are linked as normal, but those in modules are copied and relocated to a reserved portion of the kernel's vnet region with the help of a the kernel linker. Virtualized global variables exist in per-vnet memory set up when the network stack instance is created, and are initialized statically from the reference copy. Run-time access occurs via an accessor macro, which converts from the current vnet and requested symbol to a per-vnet address. When "options VIMAGE" is not compiled into the kernel, normal global ELF symbols will be used instead and indirection is avoided. This change restores static initialization for network stack global variables, restores support for non-global symbols and types, eliminates the need for many subsystem constructors, eliminates large per-subsystem structures that caused many binary compatibility issues both for monitoring applications (netstat) and kernel modules, removes the per-function INIT_VNET_*() macros throughout the stack, eliminates the need for vnet_symmap ksym(2) munging, and eliminates duplicate definitions of virtualized globals under VIMAGE_GLOBALS. Bump __FreeBSD_version and update UPDATING. Portions submitted by: bz Reviewed by: bz, zec Discussed with: gnn, jamie, jeff, jhb, julian, sam Suggested by: peter Approved by: re (kensmith)
* Replace struct tcpopt with a proxy toeopt struct in the TOE driver interface tolstewart2009-07-131-0/+7
| | | | | | | | | | | | | the TCP syncache. This returns struct tcpopt to being private within the TCP implementation, thus allowing it to be modified without ABI concerns. The patch breaks the ABI. Bump __FreeBSD_version to 800103 accordingly. The cxgb driver is the only TOE consumer affected by this change, and needs to be recompiled along with the kernel. Suggested by: rwatson Reviewed by: rwatson, kmacy Approved by: re (kensmith), kensmith (mentor temporarily unavailable)
* Pad the following TCP related structs to allow MFCs of upcoming features/fixeslstewart2009-07-121-0/+7
| | | | | | | | | | | | | | | | back to the 8 branch: tcp_var.h - struct sackhint - struct tcpcb - struct tcpstat The patch breaks the ABI. Bump __FreeBSD_version to 800102 accordingly. User space tools that rely on the size of any of these structs (e.g. sockstat) need to be recompiled. Reviewed by: rpaulo, sam, andre, rwatson Approved by: re & mentor (gnn)
* Clarify the node about removing NFS_LEGACYRPCdfr2009-07-011-2/+3
| | | | Approved by: re
* Add an entry documenting removal of the NFS_LEGACYRPC option.dfr2009-07-011-0/+4
| | | | | Submitted by: Steve Kargl Approved by: re
* Remove support for the /dev/net/* per-interface devices. They servebrooks2009-06-291-0/+6
| | | | | | | | | | | | | | | | | little purpose and are unused in the base system. The IOCTL functionality is entirely duplicated and routing sockets provide a richer interface than the kqueue functionality. Further, it is not practical for these devices to be made sensible in the face of VIMAGE. Bump __FreeBSD_version on the off chance that there is any code out there that actually uses this stuff. Reviewed by: rwatson Discussed with: bz, zec Approved by: re@ (kensmith)
* - release/* update to use freebsd-doc-* packages instead of buildingblackend2009-06-281-0/+6
| | | | | | | | | | | | FreeBSD docset during 'make release' this will speed up release builds; - sysinstall(8) has also been updated to use these packages with a new menu allowing people to choose what localized doc to install; - mention in UPDATING that docs from the FreeBSD Documentation project are now installed in /usr/local/share/doc/freebsd instead of /usr/share/doc. Approved by: re (kensmith)
* Note that as a result of the SYSV IPC changes, COMPAT_FREEBSD[456] nowjhb2009-06-261-0/+6
| | | | | | | | | | require COMPAT_FREEBSD7. Also, explicitly note in NOTES that any version of COMPAT_FREEBSD<n> effectively requires for newer binaries (i.e. COMPAT_FREEBSD<n+1>, etc.). While this has been true in practice previously, it used to compile ok before the commit earlier this week. Discussed with: peter Approved by: re (kensmith)
* Revert the entry about pf and ipfw starting before netifdougb2009-06-261-6/+0
|
* Move virtualization of routing related variables into their ownbz2009-06-221-0/+5
| | | | | | | | | | | Vimage module, which had been there already but now is stateful. All variables are now file local; so this further limits the global spreading of routing related things throughout the kernel. Add a missing function local variable in case of MPATHing. Reviewed by: zec
* Rework the credential code to support larger values of NGROUPS andbrooks2009-06-191-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NGROUPS_MAX, eliminate ABI dependencies on them, and raise the to 1024 and 1023 respectively. (Previously they were equal, but under a close reading of POSIX, NGROUPS_MAX was defined to be too large by 1 since it is the number of supplemental groups, not total number of groups.) The bulk of the change consists of converting the struct ucred member cr_groups from a static array to a pointer. Do the equivalent in kinfo_proc. Introduce new interfaces crcopysafe() and crsetgroups() for duplicating a process credential before modifying it and for setting group lists respectively. Both interfaces take care for the details of allocating groups array. crsetgroups() takes care of truncating the group list to the current maximum (NGROUPS) if necessary. In the future, crsetgroups() may be responsible for insuring invariants such as sorting the supplemental groups to allow groupmember() to be implemented as a binary search. Because we can not change struct xucred without breaking application ABIs, we leave it alone and introduce a new XU_NGROUPS value which is always 16 and is to be used or NGRPS as appropriate for things such as NFS which need to use no more than 16 groups. When feasible, truncate the group list rather than generating an error. Minor changes: - Reduce the number of hand rolled versions of groupmember(). - Do not assign to both cr_gid and cr_groups[0]. - Modify ipfw to cache ucreds instead of part of their contents since they are immutable once referenced by more than one entity. Submitted by: Isilon Systems (initial implementation) X-MFC after: never PR: bin/113398 kern/133867
* Introduce support for adaptive spinning in lockmgr.attilio2009-06-171-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | Actually, as it did receive few tuning, the support is disabled by default, but it can opt-in with the option ADAPTIVE_LOCKMGRS. Due to the nature of lockmgrs, adaptive spinning needs to be selectively enabled for any interested lockmgr. The support is bi-directional, or, in other ways, it will work in both cases if the lock is held in read or write way. In particular, the read path is passible of further tunning using the sysctls debug.lockmgr.retries and debug.lockmgr.loops . Ideally, such sysctls should be axed or compiled out before release. Addictionally note that adaptive spinning doesn't cope well with LK_SLEEPFAIL. The reason is that many (and probabilly all) consumers of LK_SLEEPFAIL are mainly interested in knowing if the interlock was dropped or not in order to reacquire it and re-test initial conditions. This directly interacts with adaptive spinning because lockmgr needs to drop the interlock while spinning in order to avoid a deadlock (further details in the comments inside the patch). Final note: finding someone willing to help on tuning this with relevant workloads would be either very important and appreciated. Tested by: jeff, pho Requested by: many
* note abi change for IEEE80211_IOC_STA_INFOsam2009-06-131-0/+5
|
* Introduce a mechanism for detecting calls from outbound path of thezec2009-06-111-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | network stack when reentering the inbound path from netgraph, and force queueing of mbufs at the outbound netgraph node. The mechanism relies on two components. First, in netgraph nodes where outbound path of the network stack calls into netgraph, the current thread has to be appropriately marked using the new NG_OUTBOUND_THREAD_REF() macro before proceeding to call further into the netgraph topology, and unmarked using the NG_OUTBOUND_THREAD_UNREF() macro before returning to the caller. Second, netgraph nodes which can potentially reenter the network stack in the inbound path have to mark their inbound hooks using NG_HOOK_SET_TO_INBOUND() macro. The netgraph framework will then detect when there is a danger of a call graph looping back from outbound to inbound path via netgraph, and defer handing off the mbufs to the "inbound" node to a worker thread with a clean stack. In this first pass only the most obvious netgraph nodes have been updated to ensure no outbound to inbound calls can occur. Nodes such as ng_ipfw, ng_gif etc. should be further examined whether a potential for outbound to inbound call looping exists. This commit changes the layout of struct thread, but due to __FreeBSD_version number shortage a version bump has been omitted at this time, nevertheless kernel and modules have to be rebuilt. Reviewed by: julian, rwatson, bz Approved by: julian (mentor)
* Introduce an infrastructure for dismantling vnet instances.zec2009-06-081-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | Vnet modules and protocol domains may now register destructor functions to clean up and release per-module state. The destructor mechanisms can be triggered by invoking "vimage -d", or a future equivalent command which will be provided via the new jail framework. While this patch introduces numerous placeholder destructor functions, many of those are currently incomplete, thus leaking memory or (even worse) failing to stop all running timers. Many of such issues are already known and will be incrementaly fixed over the next weeks in smaller incremental commits. Apart from introducing new fields in structs ifnet, domain, protosw and vnet_net, which requires the kernel and modules to be rebuilt, this change should have no impact on nooptions VIMAGE builds, since vnet destructors can only be called in VIMAGE kernels. Moreover, destructor functions should be in general compiled in only in options VIMAGE builds, except for kernel modules which can be safely kldunloaded at run time. Bump __FreeBSD_version to 800097. Reviewed by: bz, julian Approved by: rwatson, kib (re), julian (mentor)
* Remove window(1) from the base system.ed2009-06-021-0/+4
| | | | | | | | | | | | | | | Some time ago Tom Rhodes sent me an email that he was willing to perform various cleanups to the window(1) source code. After some discussion, we both decided the best thing to do, was to move window(1) to the ports tree. The application isn't used a lot nowadays, mainly because it has been superseeded by screen, tmux, etc. A couple of hours ago Tom committed window(1) to ports (misc/window), so I'm removing it from the tree. I don't think people will really miss it, but I'm describing the change in UPDATING anyway. Discussed with: trhodes, pav, kib Approved by: re
* Add a note about the change to rcorder for pf and ipfw.dougb2009-06-011-0/+6
|
* Decrement __FreeBSD_version again to 96 as we are runing out of digitsbz2009-06-011-1/+0
| | | | | | and want to be conservative - so not more than one version bump per day. Discussed with: jhb, kensmith
* Update UPDATING for NETISR2 merge, fix a typo in another UPDATING entry.rwatson2009-06-011-1/+7
|
* Convert the two dimensional array to be malloced and introducebz2009-06-011-0/+6
| | | | | | | | | | | | | | | | an accessor function to get the correct rnh pointer back. Update netstat to get the correct pointer using kvm_read() as well. This not only fixes the ABI problem depending on the kernel option but also permits the tunable to overwrite the kernel option at boot time up to MAXFIBS, enlarging the number of FIBs without having to recompile. So people could just use GENERIC now. Reviewed by: julian, rwatson, zec X-MFC: not possible
* Remove the now invalid (and possibly unused) debug.mpsafevfsattilio2009-05-301-0/+4
| | | | | | | sysctl/tunable. Reviewed by: emaste Sponsored by: Sandvine Incorporated
* Bump __FreeBSD_version after addition of VOP_ACCESSX(9).trasz2009-05-301-0/+4
|
* o Add missed quotation mark.maxim2009-05-291-1/+1
|
* Update __FreeBSD_version after addition of mnt_xflag. Add a notetrasz2009-05-291-0/+5
| | | | to UPDATING.
OpenPOWER on IntegriCloud