summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* - Add my birthdayyzlin2009-07-212-0/+4
| | | | | | - Add myself to ports committers and to lwhsu's mentee list Approved by: re (kib), lwhsu (mentor)
* Do not use OCP85XX_LBC_OFF twice when accessing LBC registers on MPC85XX.raj2009-07-211-4/+4
| | | | | | | | | | | | | | It turns LBC control registers were not programmed correctly on MPC85XX. We were accessing bogus addresses as the base offset (OCP85XX_LBC_OFF) was erroneously added during offset calculations. Effectively the state of LBC control registers was not altered by the kernel initialization code, but everything worked as long as we coincided to use the same settings (LBC decode windows) as firmware has initialized. Submitted by: Lukasz Wojcik Reviewed by: marcel Approved by: re (kensmith) Obtained from: Semihalf
* Make dcache_inv_range() point to the proper routines on ARM9 and ARM9E/ARM10.raj2009-07-211-2/+2
| | | | | | | | | | On some ARM variations CPU func dispatcher has the D-cache invalidate method point to write-back invalidate, which is wrong, and can lead to a crash/panic on affected platforms. Spotted by: HPS Reviewed by: cognet Approved by: re (kib)
* Fix regression in last set of commits. Submitted via e-mail and thencokane2009-07-201-0/+2
| | | | | | | | | nagged again via PR. Thank Paul for his persistence and contributions. PR: 136895 Submitted by: Paul B. Mahol <onemda@gmail.com> Reviewed by: sam (timeout, 10 days), weongyo (timeout, 10 days), me Approved by: re (Kostik Belousov <kostikbel@gmail.com>)
* Update ObsoleteFiles.incantoine2009-07-201-3/+5
| | | | | | | - Remove some USB headers that were resurrected recently - Add new obsolete files (2 man pages and libvgl.so.5) Approved by: re (kib)
* Back out the moving in r195782 of V_ip_id's initialization from the toprwatson2009-07-201-1/+2
| | | | | | | | back to the bottom of ip_init() as found in 7.x. I missed the fact that the bottom half of the init routine only runs in the !VNET case. Submitted by: zec Approved by: re (vimage blanket)
* Fix permission handling for extended attributes in ZFS. Withouttrasz2009-07-203-3/+51
| | | | | | | | | | | | | | | | | | this change, ZFS uses SunOS Alternate Data Streams semantics - each EA has its own permissions, which are set at EA creation time and - unlike SunOS - invisible to the user and impossible to change. From the user point of view, it's just broken: sometimes access is granted when it shouldn't be, sometimes it's denied when it shouldn't be. This patch makes it behave just like UFS, i.e. depend on current file permissions. Also, it fixes returned error codes (ENOATTR instead of ENOENT) and makes listextattr(2) return 0 instead of EPERM where there is no EA directory (i.e. the file never had any EA). Reviewed by: pjd (idea, not actual code) Approved by: re (kib)
* More mesh bits, namely:rpaulo2009-07-207-141/+459
| | | | | | | | | | | | | | * bridge support (sam) * handling of errors (sam) * deletion of inactive routing entries * more debug msgs (sam) * fixed some inconsistencies with the spec. * decap is now specific to mesh (sam) * print mesh seq. no. on ifconfig list mesh * small perf. improvements Reviewed by: sam Approved by: re (kib)
* Garbage collect vnet module registrations that have neither constructorsrwatson2009-07-208-73/+5
| | | | | | | | | | | | | | | nor destructors, as there's no actual work to do. In most cases, the constructors weren't needed because of the existing protocol initialization functions run by net_init_domain() as part of VNET_MOD_NET, or they were eliminated when support for static initialization of virtualized globals was added. Garbage collect dependency references to modules without constructors or destructors, notably VNET_MOD_INET and VNET_MOD_INET6. Reviewed by: bz Approved by: re (vimage blanket)
* ARM pmap fixes.raj2009-07-203-5/+7
| | | | | | | | | | | | | | | | | | | a) nocache-remap problem When a page is remapped into a non-cacheable virtual memory region there was no associated write-back invalidate operation performed. We remove writeback of the original buffer size from bus_dmamem_alloc() and add appropriate L1/L2 flush operation. b) missing write-back invalidate operation In pmap_kremove a page is removed so we must do a write-back invalidate operation aligned to the page virtual address. Submitted by: Michal Hajduk Reviewed by: Mark Tinguely, rpaulo, stas Approved by: re (kib) Obtained from: Semihalf
* Add macros VNET_SETNAME and VNET_SYMPREFIX, and expose to userspace ifrwatson2009-07-202-7/+14
| | | | | | | | _WANT_VNET is defined. This way we don't need separate definitions in libkvm. Reviewed by: bz Approved by: re (vimage blanket)
* Fix an apparently harmless typo.scottl2009-07-201-1/+1
| | | | Approved by: re
* Change the handling of fictitious pages by pmap_page_set_memattr() onalc2009-07-194-19/+34
| | | | | | | | | | | | | | | | | amd64 and i386. Essentially, fictitious pages provide a mechanism for creating aliases for either normal or device-backed pages. Therefore, pmap_page_set_memattr() on a fictitious page needn't update the direct map or flush the cache. Such actions are the responsibility of the "primary" instance of the page or the device driver that "owns" the physical address. For example, these actions are already performed by pmap_mapdev(). The device pager needn't restore the memory attributes on a fictitious page before releasing it. It's now pointless. Add pmap_page_set_memattr() to the Xen pmap. Approved by: re (kib)
* When buffer write is failed, it is wrong for brelse() to invalidatekib2009-07-191-1/+2
| | | | | | | | | | portion of the page that was written. Among other problems, this page might be picked up by pagedaemon, with failed assertion in vm_pageout_flush() about validity of the page. Reported and tested by: pho Approved by: re (kensmith) MFC after: 3 weeks
* Don't get stuck in an infinite loop comparing (short++ <= maxshort)brian2009-07-191-3/+2
| | | | | | | PR: 136893 Submitted by: Aragon Gouveia - aragon at phat dot za dot net (mostly) Approved by: re (kib) MFC after: 3 weeks
* Normalize field naming for struct vnet, fix two debugging printfs thatrwatson2009-07-194-12/+12
| | | | | | | print them. Reviewed by: bz Approved by: re (kensmith, kib)
* Allow creating hard links to symlinks using ln(1).jilles2009-07-192-22/+41
| | | | | | | | This implements the POSIX.1-2008 -L and -P flags. The default remains to create hard links to the target of symlinks. Approved by: re (kib), ed (mentor)
* Bump the version of all non-symbol-versioned shared libraries inkensmith2009-07-1956-54/+267
| | | | | | | | 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)
* add urtwsam2009-07-191-0/+1
| | | | Approved by: re (kib)
* Correct AT_SYMLINK_FOLLOW flag name in linkat(2) man page.jilles2009-07-191-1/+1
| | | | Approved by: re (kib), ed (mentor)
* Fix two bugs in the experimental nfs client:rmacklem2009-07-191-13/+7
| | | | | | | | | | | | | | | | | | | - When the root vnode was acquired during mounting, mnt_stat.f_iosize was still set to 0, so getnewvnode() would set bo_bsize == 0. This would confuse getblk(), so that it always returned the first block causing the problem when the root directory of the mount point was greater than one block in size. It was fixed by setting mnt_stat.f_iosize to NFS_DIRBLKSIZ before calling ncl_nget() to acquire the root vnode. - NFSMNT_INT was being set temporarily while the initial connect to a server was being done. This erroneously configured the krpc for interruptible RPCs, which caused problems because signals weren't being masked off as they would have been for interruptible mounts. This code was deleted to fix the problem. Since mount_nfs does an NFS null RPC before the mount system call, connections to the server should work ok. Tested by: swell dot k at gmail dot com Approved by: re (kensmith), kib (mentor)
* Expose the definitions of 'struct vnet' and 'VNET_MAGIC_N' to userspacerwatson2009-07-191-12/+19
| | | | | | | | | if _WANT_VNET is defined. This is required so that libkvm can locate virtual network stack instances in order to reach their global variables for monitoring and crashdump analysis. Reviewed by: bz Approved by: re (kib)
* Reimplement and/or implement vnet list locking by replacing a mostlyrwatson2009-07-1914-65/+98
| | | | | | | | | | | | | | | | | | | | | | unused custom mutex/condvar-based sleep locks with two locks: an rwlock (for non-sleeping use) and sxlock (for sleeping use). Either acquired for read is sufficient to stabilize the vnet list, but both must be acquired for write to modify the list. Replace previous no-op read locking macros, used in various places in the stack, with actual locking to prevent race conditions. Callers must declare when they may perform unbounded sleeps or not when selecting how to lock. Refactor vnet sysinits so that the vnet list and locks are initialized before kernel modules are linked, as the kernel linker will use them for modules loaded by the boot loader. Update various consumers of these KPIs based on whether they may sleep or not. Reviewed by: bz Approved by: re (kib)
* Move code that does payload realigment to a new routine, ieee80211_realign,sam2009-07-184-48/+44
| | | | | | | so it can be reused. While here rewrite the logic to always use a single mbuf. Reviewed by: rpaulo Approved by: re (kib)
* Fix a problem, whereby misbehaving IPv6 applications, which don't includebms2009-07-181-2/+12
| | | | | | | | | a valid zone ID or interface identifier in a v6 multicast leave, would trigger a fairly paranoid KASSERT(). Observed with Boost++ regression tests on ref8.freebsd.org. Approved by: re (kib)
* Add an entry for etc/pam.d/gdm as this file is no longer required.marcus2009-07-181-0/+2
| | | | Approved by: re (kib)
* Remove gdm as it is no longer needed.marcus2009-07-181-1/+0
| | | | | Approved by: re (kib) Reminded by: nork
* - Fix the issue with read access count modification on RAID-5 plexes properly.lulf2009-07-181-4/+6
| | | | | | | | | If the access counts were not increased and decreased in equal numbers by gvinum consumers, the read access count would be inconsistent with the write access count. Instead, modify the read access count with the write access count directly to prevent any inconsistencies. Approved by: re (kib)
* Remove no longer needed #include after removing the legacybz2009-07-181-1/+0
| | | | | | | vimage API in r195741. Reviewed by: rwatson Approved by: re (kib)
* Remove this file. It is no longer needed as x11/gdm provides its ownmarcus2009-07-181-19/+0
| | | | | | version under /usr/local/etc/pam.d. Approved by: re (kib)
* An addendum to r195649, "Add support to the virtual memory system foralc2009-07-183-21/+18
| | | | | | | | | | | | | | | | configuring machine-dependent memory attributes...": Don't set the memory attribute for a "real" page that is allocated to a device object in vm_page_alloc(). It is a pointless act, because the device pager replaces this "real" page with a "fake" page and sets the memory attribute on that "fake" page. Eliminate pointless code from pmap_cache_bits() on amd64. Employ the "Self Snoop" feature supported by some x86 processors to avoid cache flushes in the pmap. Approved by: re (kib)
* Fix copy-paste bug. Use regular non-polled mode for executing FLUSHCACHEmav2009-07-171-2/+3
| | | | | | command on disk close. Approved by: re (implicitly)
* Store accurate offset information in CTF data. A large number ofnp2009-07-171-2/+2
| | | | | | | | | | | | | | | structs had incorrect member offsets, limiting dtrace's usefulness when working with them. An example of incorrect info (struct rtentry) from before this fix: <1738> STRUCT rtentry (200 bytes) rt_nodes type=1731 off=0 rt_gateway type=849 off=65280 <== WRONG, should be 8 * 96 rt_flags type=3 off=65344 <== wrong again, and so on.. ... Approved by: re (kib), gnn (mentor) MFC after: 2 weeks
* add mesh supportsam2009-07-172-17/+9
| | | | | Submitted by: rpaulo Approved by: re (kib)
* Implement RTLD_NOLOAD flag for dlopen(3).kib2009-07-173-7/+19
| | | | | | Requested and tested by: jkim Reviewed by: kan Approved by: re (kensmith)
* Patch the regular nfs client in a manner analagous tormacklem2009-07-171-1/+2
| | | | | | | | | r195704 for the experimental client. The patch avoids calling vn_lock() for the case where nfs_nget() has acquired the same vnode as dvp, since nfs_nget() has already locked the vnode. Reviewed by: kib, jhb Approved by: re (kensmith), kib (mentor)
* Only perform .bss mapping and cleaning operations when segment file sizekib2009-07-171-21/+27
| | | | | | | | | | | | | | | | | | | | | | | | is not equal to its memory size. This eliminates unneeded clearing of the text segment that often happens due to text end not being page-aligned. For instance, $ readelf -l /lib/libedit.so.6 Program Headers: Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align LOAD 0x000000 0x00000000 0x00000000 0x139e1 0x139e1 R E 0x1000 LOAD 0x014000 0x00014000 0x00014000 0x00f04 0x00f14 RW 0x1000 DYNAMIC 0x014cc4 0x00014cc4 0x00014cc4 0x000d0 0x000d0 RW 0x4 $ procstat -v $$ (for /bin/sh) 68585 0x28097000 0x280aa000 r-x 6 0 21 14 CN vn /lib/libedit.so.6 68585 0x280aa000 0x280ab000 r-x 1 0 1 0 CN vn /lib/libedit.so.6 <== 68585 0x280ab000 0x280ac000 rwx 1 0 1 0 CN vn /lib/libedit.so.6 Note the splitted map entry marked by '<=='. Reviewed by: kan Approved by: re (kensmith) MFC after: 1 month
* Add IEEE80211_SUPPORT_MESH, following similar change to nanobsd andrpaulo2009-07-172-0/+2
| | | | | | other GENERIC kernels. Approved by: re (kib)
* Remove the interim vimage containers, struct vimage and struct procg,jamie2009-07-1713-564/+124
| | | | | | and the ioctl-based interface that supported them. Approved by: re (kib), bz (mentor)
* Import OpenBSM 1.1p1 from vendor branch to 8-CURRENT, populatingrwatson2009-07-1718-66/+319
| | | | | | | | | | | | | | | | | contrib/openbsm and a subset also imported into sys/security/audit. This patch release addresses several minor issues: - Fixes to AUT_SOCKUNIX token parsing. - IPv6 support for au_to_me(3). - Improved robustness in the parsing of audit_control, especially long flags/naflags strings and whitespace in all fields. - Add missing conversion of a number of FreeBSD/Mac OS X errnos to/from BSM error number space. MFC after: 3 weeks Obtained from: TrustedBSD Project Sponsored by: Apple, Inc. Approved by: re (kib)
* Remove unused VNET_SET() and related macros; only VNET_GET() isrwatson2009-07-1673-383/+378
| | | | | | | | | ever actually used. Rename VNET_GET() to VNET() to shorten variable references. Discussed with: bz, julian Reviewed by: bz Approved by: re (kensmith, kib)
* Fix several instances of spaces before commas, and one of a spacedougb2009-07-162-6/+6
| | | | | | | | before a ). PR: docs/136723 Submitted by: Ulrich Sporlein <uqs@spoerlein.net> Approved by: re (kib)
* Correct the name of the Mongolian Documentation package.kensmith2009-07-161-1/+1
| | | | Approved by: re (kib)
* Limit IOCATAREQUEST ioctl data size to controller's maximum I/O size.mav2009-07-161-0/+5
| | | | | | | | It fixes kernel panic when requested size is too large (0xffffffff), PR: kern/136726 Approved by: re (kib) MFC after: 2 weeks
* Prepare for the 8.0-BETA2 builds.kensmith2009-07-151-1/+1
| | | | Approved by: re (implicit)
* dtrace_gethrtime: improve scaling of TSC ticks to nanosecondsavg2009-07-152-4/+95
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently dtrace_gethrtime uses formula similar to the following for converting TSC ticks to nanoseconds: rdtsc() * 10^9 / tsc_freq The dividend overflows 64-bit type and wraps-around every 2^64/10^9 = 18446744073 ticks which is just a few seconds on modern machines. Now we instead use precalculated scaling factor of 10^9*2^N/tsc_freq < 2^32 and perform TSC value multiplication separately for each 32-bit half. This allows to avoid overflow of the dividend described above. The idea is taken from OpenSolaris. This has an added feature of always scaling TSC with invariant value regardless of TSC frequency changes. Thus the timestamps will not be accurate if TSC actually changes, but they are always proportional to TSC ticks and thus monotonic. This should be much better than current formula which produces wildly different non-monotonic results on when tsc_freq changes. Also drop write-only 'cp' variable from amd64 dtrace_gethrtime_init() to make it identical to the i386 twin. PR: kern/127441 Tested by: Thomas Backman <serenity@exscape.org> Reviewed by: jhb Discussed with: current@, bde, gnn Silence from: jb Approved by: re (gnn) MFC after: 1 week
* correct IEEE80211_RADIOTAP_XCHANNEL to match systemsam2009-07-151-1/+1
| | | | | Submitted by: Guy Harris Approved by: re (kib)
* r195699 introduced an assertion regarding when progbits data in kernelrwatson2009-07-151-3/+0
| | | | | | | | | modules was present, which turns out to be false in some situations. Back out the assertion. Reported by: Luiz Otavio O Souza <lists.br at gmail.com>, Florian Smeets <flo at kasimir.com> Approved by: re (kensmith) (implicit)
* Add missing license line for vnet.h, correct white space nit.rwatson2009-07-151-1/+2
| | | | Approved by: re (kensmith) (implicit)
* Fix the experimental nfs client so that it does not cause armacklem2009-07-141-1/+2
| | | | | | | | | "share->excl" panic when doing a lookup of dotdot at the root of a server's file system. The patch avoids calling vn_lock() for that case, since nfscl_nget() has already acquired a lock for the vnode. Approved by: re (kensmith), kib (mentor)
OpenPOWER on IntegriCloud