summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* - Add a SIGINFO handler for savecore.lulf2009-08-251-1/+17
|
* ANSIfy functions declarations, adjust prototypes. Rename local variablecharnier2009-08-251-75/+58
| | | | to not conflict with err().
* Add a missing .El.delphij2009-08-251-0/+1
| | | | Founded by: make manlint
* Consider flag == 0 as the same of flag == R_NEXT. This change will restoredelphij2009-08-241-2/+2
| | | | | a historical behavior that has been changed by revision 190491, and has seen to break exim.
* Fix VESA modes and allow 8bit depth modes.delphij2009-08-243-22/+47
| | | | | | PR: i386/124902 Submitted by: paradox <ddkprog yahoo com> MFC after: 2 months
* Improve the case test to detect the presence of lo0 in the list ofdougb2009-08-241-1/+1
| | | | | | network_interfaces. Submitted by: Christoph Mallon <christoph.mallon@gmx.de>
* Invoke the recently added mm-mtree.sh release script to store a pre-builtjhb2009-08-241-0/+1
| | | | | | mergemaster mtree database in the 'base' dist. MFC after: 3 days
* Fix a few issues with the lib32 dist so that it includes ldd32.jhb2009-08-242-2/+2
| | | | | | | | | | | - Use a better find invocation to purge empty directories from all the dist trees during a release build. The previous version did not purge directories whose contents were all empty directories. - Explicitly blacklist a few files from the lib32 dist instead of using a whitelist. A better longterm solution is to fix the few offenders to not install data files during a lib32 install. MFC after: 3 days
* Tweak the way that the ACPI and ISA bus drivers match hint devices tojhb2009-08-242-6/+41
| | | | | | | | | | | | | | | BIOS-enumerated devices: - Assume a device is a match if the memory and I/O ports match even if the IRQ or DRQ is wrong or missing. Some BIOSes don't include an IRQ for the atrtc device for example. - Add a hack to better match floppy controller devices. Many BIOSes do not include the starting port of the floppy controller listed in the hints (0x3f0) in the resources for the device. So far, however, all the BIOS variations encountered do include the 'port + 2' resource (0x3f2), so adjust the matching for "fdc" devices to look for 'port + 2'. Reviewed by: imp MFC after: 3 days
* When bridging LRO is causing a problem, the believejfv2009-08-241-7/+6
| | | | | | that it would work as long as all interfaces have TSO seems to be false, until the matter gets sorted out just disable LRO completely.
* A couple of changes: first, make header split on by defaultjfv2009-08-241-18/+50
| | | | | | | | | and remove from its dependency on LRO, my tests have shown that its always beneficial, even when doing bridging. Second, fix up a few problems in the statistics code, the adapter dependencies had gotten lost so some code that should only run on 82599 was always running, this resulted in bogus flow control numbers on 82598.
* Don't try to power down PHY when alc(4) failed to map the device.yongari2009-08-241-1/+2
| | | | | | | | This fixes system crash when mapping alc(4) device failed in device attach. Reported by: Jim < stapleton.41 <> gmail DOT com > MFC after: 3 days
* Add RTL8168DP/RTL8111DP device id. While I'm here append "8111D" toyongari2009-08-242-3/+6
| | | | | | | | the description of RTL8168D as RL_HWREV_8168D can be either RTL8168D or RTL8111D. PR: kern/137672 MFC after: 3 days
* Update example for RELENG_8.kensmith2009-08-241-4/+5
|
* When ``ppp -direct'' is invoked by a program that uses pipe(2) tobrian2009-08-244-126/+305
| | | | | | | | | | | | | create stdin and stdout, don't blindly try to use stdin as a bi-directional channel. Instead, detect the pipe and set up a special exec handler that indirects write() calls through stdout. This fixes the problem where ``set device "!ssh -e none host ppp -direct label"'' no longer works with an openssh-5.2 server side as that version of openssh ignores the USE_PIPES config setting and *always* uses pipes (rather than socketpair) for stdin/stdout channels. MFC after: 3 days
* When realloc()ing device memory for transfer to another ppp process,brian2009-08-243-11/+13
| | | | | | | | don't continue to use the realloc()d pointer - it might have changed! Remove some stray diagnostics while I'm here. MFC after: 3 days
* Fix handling of .note.ABI-tag section for GNU systems [1].bz2009-08-249-19/+173
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Handle GNU/Linux according to LSB Core Specification 4.0, Chapter 11. Object Format, 11.8. ABI note tag. Also check the first word of desc, not only name, according to glibc abi-tags specification to distinguish between Linux and kFreeBSD. Add explicit handling for Debian GNU/kFreeBSD, which runs on our kernels as well [2]. In {amd64,i386}/trap.c, when checking osrel of the current process, also check the ABI to not change the signal behaviour for Linux binary processes, now that we save an osrel version for all three from the lists above in struct proc [2]. These changes make it possible to run FreeBSD, Debian GNU/kFreeBSD and Linux binaries on the same machine again for at least i386 and amd64, and no longer break kFreeBSD which was detected as GNU(/Linux). PR: kern/135468 Submitted by: dchagin [1] (initial patch) Suggested by: kib [2] Tested by: Petr Salinger (Petr.Salinger seznam.cz) for kFreeBSD Reviewed by: kib MFC after: 3 days
* - Update config to doxygen 1.5.2 (I use this with 1.5.9).netchild2009-08-2419-93/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | - Add linprocfs and linsysfs to the linuxulator dox. - Take the generated includes from the .m files from a subdirectory instead of putting everything into $(.OBJDIR). This imporves the human readbility of the source directory contents a lot, if you do not create a separate OBJDIR. - Assume UTF-8 encoding for every input file. - Strip the source and dest path from the output, we are not interested in the absolute location on the machine where the docs are created, relative the the root of the FreeBSD source is what interests us. - Exclude .svn directories. - Switch to alphabetic index. - Use one line per INCLUDE_PATH member in the common dox-config. - Bump the __FreeBSD__ version to 9. [MFC: to 8] - Switch from hardcoded .m files to an run-time generated one. Takes a little bit more time to get started with actual work, but at least is more future-proof. If you generate dox for all subsystems, the time to find all .m files in the source is magnitutes lower than producing the docs. - Make the *DEST_PATH overidable from the environment. This allows to produce the output directly in the docroot of a webserver. - Fix the path when telling the user where he can find the API docs. MFC after: 1 month (after 8.0)
* Make if_grow static -- it's not used outside of if.c, and with therwatson2009-08-242-2/+2
| | | | | | internals destined to change, it's better if it remains that way. MFC after: 3 days
* This fixes a bug where the value set by SCTP_PARTIAL_DELIVERY_POINTtuexen2009-08-241-3/+3
| | | | | | | was not honored, if the socket buffer size was not 4 times that large. Approved by: rrs (mentor) MFC after: 3 days.
* Our implementation of granpt(3) could be valid in the future.ed2009-08-241-15/+11
| | | | | | | | | | | | | | | | | | | | | When I wrote the pseudo-terminal driver for the MPSAFE TTY code, Robert Watson and I agreed the best way to implement this, would be to let posix_openpt() create a pseudo-terminal with proper permissions in place and let grantpt() and unlockpt() be no-ops. This isn't valid behaviour when looking at the spec. Because I thought it was an elegant solution, I filed a bug report at the Austin Group about this. In their last teleconference, they agreed on this subject. This means that future revisions of POSIX may allow grantpt() and unlockpt() to be no-ops if an open() on /dev/ptmx (if the implementation has such a device) and posix_openpt() already do the right thing. I'd rather put this in the manpage, because simply mentioning we don't comply to any standard makes it look worse than it is. Right now we don't, but at least we took care of it. Approved by: re (kib) MFC after: 3 days
* This fixes two bugs in the NR-Sack code:rrs2009-08-241-460/+255
| | | | | | | | | | | | 1) When calculating the table offset for sliding the sack array, the two byte values must be "ored" together in order for us to do the correct sliding of the arrays. 2) We were NOT properly doing CC and other changes to things only NR-Sacked. The solution here is to make a separate function that will actually do both CC/updates and free things if its NR sack'd. This actually shrinks out common code from three places (much better). MFC after: 3 days
* Allow multiple console devices per driver without insane code duplication.ed2009-08-242-24/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Say, a driver wants to have multiple console devices to pick from, you would normally write down something like this: CONSOLE_DRIVER(dev1); CONSOLE_DRIVER(dev2); Unfortunately, this means that you have to declare 10 cn routines, instead of 5. It also isn't possible to initialize cn_arg on beforehand. I noticed this restriction when I was implementing some of the console bits for my vt(4) driver in my newcons branch. I have a single set of cn routines (termcn_*) which are shared by all vt(4) console devices. In order to solve this, I'm adding a separate consdev_ops structure, which contains all the function pointers. This structure is referenced through consdev's cn_ops field. While there, I'm removing CONS_DRIVER() and cn_checkc, which have been deprecated for years. They weren't used throughout the source, until the Xen console driver showed up. CONSOLE_DRIVER() has been changed to do the right thing. It now declares both the consdev and consdev_ops structure and ties them together. In other words: this change doesn't change the KPI for drivers that used the regular way of declaring console devices. If drivers want to use multiple console devices, they can do this as follows: static const struct consdev_ops mydriver_cnops = { .cn_probe = mydriver_cnprobe, ... }; static struct mydriver_softc cons0_softc = { ... }; CONSOLE_DEVICE(cons0, mydriver_cnops, &cons0_softc); static struct mydriver_softc cons1_softc = { ... }; CONSOLE_DEVICE(cons1, mydriver_cnops, &cons1_softc); Obtained from: //depot/user/ed/newcons/...
* When "jail -c vnet" request fails, the current code actually creates andzec2009-08-241-1/+1
| | | | | | | | | | | | leaves behind an orphaned vnet. This change ensures that such vnets get released. This change affects only options VIMAGE builds. Submitted by: jamie Discussed with: bz Approved by: re (rwatson), julian (mentor) MFC after: 3 days
* When moving ifnets from one vnet to another, and the ifnetzec2009-08-241-0/+15
| | | | | | | | | | | | has ifaddresses of AF_LINK type which thus have an embedded if_index "backpointer", we must update that if_index backpointer to reflect the new if_index that our ifnet just got assigned. This change affects only options VIMAGE builds. Submitted by: bz Reviewed by: bz Approved by: re (rwatson), julian (mentor)
* Fix NFS panics with options VIMAGE kernels by apropriately setting curvnetzec2009-08-249-9/+61
| | | | | | | | | | | | | context inside the RPC code. Temporarily set td's cred to mount's cred before calling socreate() via __rpc_nconf2socket(). Submitted by: rmacklem (in part) Reviewed by: rmacklem, rwatson Discussed with: dfr, bz Approved by: re (rwatson), julian (mentor) MFC after: 3 days
* Introduce a div_destroy() function which takes over per-vnet cleanup taskszec2009-08-242-6/+30
| | | | | | | | | | | | | | | | | | | | | | from the existing modevent / MOD_UNLOAD handler, and register div_destroy() in protosw as per-vnet .pr_destroy() handler for options VIMAGE builds. In nooptions VIMAGE builds, div_destroy() will be invoked from the modevent handler, resulting in effectively identical operation as it was prior this change. div_destroy() also tears down hashtables used by ipdivert, which were previously left behind on ipdivert kldunloads. For options VIMAGE builds only, temporarily disable kldunloading of ipdivert, because without introducing additional locking logic it is impossible to atomically check whether all ipdivert instances in all vnets are idle, and proceed with cleanup without opening a race window for a vnet to open an ipdivert socket while ipdivert tear-down is in progress. While here, staticize div_init(), because it is not used outside of ip_divert.c. In cooperation with: julian Approved by: re (rwatson), julian (mentor) MFC after: 3 days
* When registering a protocol to an existing protocol domain viazec2009-08-241-1/+8
| | | | | | | | | | | | pf_proto_register(), iterate over all existing vnets to call protosw_init() and thus the appropriate .pr_init() handler in the context of each vnet. NB in the future we probably want to separate pr_init() handlers into two, i.e. per-vnet and global, functions. This change has no impact on nooptions VIMAGE builds. Approved by: re (rwatson), julian (mentor) MFC after: 3 days
* Unhardcode 0x100 inside kbdcontrol.ed2009-08-241-71/+73
| | | | | | | | | | In preparation for Unicode support for the keyboard layer, we'd better get rid of all the hardcoded 0x100/0xff constants in kbdcontrol. Instead, add a flag called SPECIAL stored in the top bit of the integer. Adding Unicode support is very simple now; just change u_char map[] to u_int map[] in keyent_t, change the bounds checking in kbdcontrol to 0x1FFFFF and modify the ioctls to allow loading these new keymaps.
* Cleanups to the Xen console driver:ed2009-08-241-41/+27
| | | | | | | | | | | | | | - Use CONSOLE_DRIVER() instead of the deprecated CONS_DRIVER() declaration. - This means we cannot use cn_checkc anymore, which is supposed to do the same as cn_getc nowadays. Remove the cn_getc implementation (that was never being called) and rename cn_checkc to cn_getc. - Don't run-time patch cn_putc, but add the logic to xc_cnputc(). This means I could do some cleanups to our console code... Tested by: nobody on hackers@
* - Patch to allow USB controller to resume operation afteralfred2009-08-248-62/+130
| | | | | | | | | | | | | | | | | | | | | | | being polled. - Remove the need for Giant from the USB HUB driver. - Leave device unconfigured instead of disabling the USB port when Huawei Autoinstall disk detection triggers. This should fix problems that the Huawei device is not detected after Autoinstall eject is issued. - Reported by: Nikolay Antsiferov - Fix memory use after free race for USB character devices. - Reported by: Lucius Windschuh - Factor out the enumeration lock into three functions to make the coming newbus lock conversion more easy. - usbd_enum_lock - usbd_enum_unlock - usbd_enum_is_locked Submitted by: hps
* Remove redundant locking.alfred2009-08-241-2/+0
| | | | Submitted by: hps
* Add a reminder comment to optimize bus_dmamap_sync calls.alfred2009-08-241-0/+6
| | | | Submitted by: hps
* Add mass storage quirks.alfred2009-08-242-0/+30
| | | | | | PR: usb/137138,usb/137226,usb/137789,usb/135372 Submitted by: hps
* - fix uvisor support, mostly correct buffer sizes used.alfred2009-08-241-11/+35
| | | | | | | - correct device info flag for SONY Cli NR70V Reported by: Marc Fonvieille Submitted by: hps
* - Fix false positive uipaq probealfred2009-08-242-0/+6
| | | | | | Reported by: Alexander Motin <mav@freebsd.org> Submitted by: hps
* - fix CDC ethernet matching order so that the match flags get correct.alfred2009-08-241-3/+3
| | | | | | Reported by: Juergen Lock Submitted by: hps
* We used force all of the GPIO pins low first and thenalfred2009-08-241-5/+8
| | | | | | | | | enable the ones we want. This has been changed to better match the ADMtek's reference design to avoid setting the power-down configuration line of the PHY at the same time it is reset. Submitted by: John Hood via hps
* - FIFO's are always opened separately in read and writealfred2009-08-242-14/+4
| | | | | | | | direction even if the actual device is opened for read and write. Fix fflags check so that the UFM and URIO drivers work. Reported by: Krassimir Slavchev Submitted by: hps
* - patch for cordump slowdown. Avoid using DELAY(1000) when noalfred2009-08-241-33/+50
| | | | | | | | | | | | | | keys are pressed. - Reported by: Various people - add sysctl to disable keyboard led control request - Reported by: Yoshihiro Ota - Save system CPU usage: Patch to stop keyboard timer when no keys are pressed. Submitted by: hps MFC after: 3 days
* - allow disabling "root_mount_hold()" byalfred2009-08-241-73/+29
| | | | | | | setting a sysctl/tunable at boot - remove some redundant initial explore code Submitted by: hps
* Remove redundant Giant reference. Giant will be droppedalfred2009-08-241-2/+2
| | | | | | | automatically when the mutex argument is NULL. Reported by: Various people Submitted by: hps
* Oops. Needed to adjust a little bit more of the line for packages-8-stablekensmith2009-08-241-1/+1
| | | | | | | now that we're prepping for 8.0's release. Submitted by: pluknet at gmail dot com Pointy hat: kensmith
* KDB needs <machine/db_machdep.h>, so move it under #ifdef KDB.cognet2009-08-231-3/+2
| | | | While I'm there, remove dead code, we will never support acorn26.
* sh: Fix crash when undefining or redefining a currently executing function.jilles2009-08-236-18/+48
| | | | | | | | Add a reference count to function definitions. Memory may leak if multiple SIGINTs arrive in interactive mode, this will be fixed later by changing SIGINT handling. PR: bin/137640
* Rather than using IFNET_RLOCK() when iterating over (and modifying) therwatson2009-08-231-2/+15
| | | | | | | | | | | | | | ifnet list during if_ef load, directly acquire the ifnet_sxlock exclusively. That way when if_alloc() recurses the lock, it's a write recursion rather than a read->write recursion. This code structure is arguably a bug, so add a comment indicating that this is the case. Post-8.0, we should fix this, but this commit resolves panic-on-load for if_ef. Discussed with: bz, julian Reported by: phk MFC after: 3 days
* Rework global locks for interface list and index management, correctingrwatson2009-08-2316-97/+133
| | | | | | | | | | | | | | several critical bugs, including race conditions and lock order issues: Replace the single rwlock, ifnet_lock, with two locks, an rwlock and an sxlock. Either can be held to stablize the lists and indexes, but both are required to write. This allows the list to be held stable in both network interrupt contexts and sleepable user threads across sleeping memory allocations or device driver interactions. As before, writes to the interface list must occur from sleepable contexts. Reviewed by: bz, julian MFC after: 3 days
* Allow pty(4) to be loaded as a kld.ed2009-08-235-10/+27
| | | | | | | | | Unfortunately, the wrappers that are present in pts(4) don't have the mechanics to allow pty(4) to be unloaded safely, so I'm forcing this kld to return EBUSY. This also means we have to enable some extra code in pts(4) unconditionally. Proposed by: rwatson
* No need to remove the same flag multiple times.cognet2009-08-231-2/+2
|
* Prior to the dire warning about values of network_interfaces other thandougb2009-08-231-0/+7
| | | | | | AUTO the biggest mistake users made was leaving lo0 off the list. Since lo0 is effectively mandatory, check for it and add it to the list if it's not there.
OpenPOWER on IntegriCloud