summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Implement ELF symbol versioning using GNU semantics. This code aimskan2005-12-1815-133/+661
| | | | | | | | | to be compatible with symbol versioning support as implemented by GNU libc and documented by http://people.redhat.com/~drepper/symbol-versioning and LSB 3.0. Implement dlvsym() function to allow lookups for a specific version of a given symbol.
* Provide some basic documentation explaining what the bpf(4) flags arecsjp2005-12-181-0/+24
| | | | | supposed to mean. Also, add an external references for bpf now that we reference flags from that man page.
* Add a knob to suppress logging of attempts to modifyglebius2005-12-182-7/+19
| | | | | | permanent ARP entries. Submitted by: Andrew Alcheyev <buddy telenet.ru>
* - Fix VLAN_INPUT_TAG() macro, so that it doesn't touch mtag inglebius2005-12-1810-23/+38
| | | | | | | | | case if memory allocation failed. - Remove fourth argument from VLAN_INPUT_TAG(), that was used incorrectly in almost all drivers. Indicate failure with mbuf value of NULL. In collaboration with: yongari, ru, sam
* Remove the KTR for hardclock completely. It seems to not be useful.njl2005-12-181-1/+0
| | | | Requested by: jhb
* Restore KTR_CRITICAL but conditionally compile it in as KTR_SCHED.njl2005-12-181-2/+9
| | | | Requested by: scottl, jhb
* Precision for AFMT_x24_yE and AFMT_x32_yE should be 24 and 32, respectively.ariff2005-12-181-2/+2
| | | | Submitted by: Kazuhito HONDA <kazuhito@ph.noda.tus.ac.jp>
* Fix a markup nit.ru2005-12-181-0/+1
| | | | | PR: docs/88848 Prodded by: remko
* Merged from sys/dev/sio/sio.c revision 1.463.nyan2005-12-181-0/+1
|
* VFS_LOCK_GIANT and VFS_UNLOCK_GIANT are actually defined in sys/mount.h,simon2005-12-181-0/+1
| | | | | | | | so also include sys/mount.h in SYNOPSIS. PR: docs/90541 Submitted by: Wojciech A. Koszek dunstan^freebsd.czest.pl MFC after: 1 week
* Make our ELF64 type definitions match standards. In particular thismarcel2005-12-1829-173/+183
| | | | | | | | | | | | | means: o Remove Elf64_Quarter, o Redefine Elf64_Half to be 16-bit, o Redefine Elf64_Word to be 32-bit, o Add Elf64_Xword and Elf64_Sxword for 64-bit entities, o Use Elf_Size in MI code to abstract the difference between Elf32_Word and Elf64_Word. o Add Elf_Ssize as the signed counterpart of Elf_Size. MFC after: 2 weeks
* Explicitly cast ELF_R_TYPE() to the right type.marcel2005-12-184-7/+7
|
* Get in sync with current ELF definitions. In particular this means:marcel2005-12-183-48/+110
| | | | | | | | | | | | | | | | | | | | | | | o Remove the unused and non-standard SHT_NUM, PT_COUNT and DT_COUNT. o Add the STV_DEFAULT, STV_INTERNAL, STV_HIDDEN and STV_PROTECTED symbol visibility constants. o Add the ELF32_ST_VISIBILITY and ELF64_ST_VISIBILITY macros to get the symbol visibility from the st_other field. o Add the ELFOSABI_AIX, ELFOSABI_OPENVMS and ELFOSABI_NSK constants. o Add the ET_LOOS, ET_HIOS, ET_LOPROC and ET_HIPROC constants. o Further flesh out the list of machine types. Note that EM_ALPHA remains non-standard. The standard value for EM_ALPHA is given by EM_ALPHA_STD (which is a non-standard name :-) o Add the SHN_LOOS, SHN_HIOS and SHN_XINDEX constants. o Add the SHT_INIT_ARRAY, SHT_FINI_ARRAY, SHT_PREINIT_ARRAY, SHT_GROUP and SHT_SYMTAB_SHNDX constants. o Add the SHF_MERGE, SHF_STRINGS, SHF_INFO_LINK, SHF_LINK_ORDER, SHF_OS_NONCONFORMING, SHF_GROUP and SHF_MASKOS constants. o Add the PF_MASKOS and PF_MASKPROC constants. o Add the STB_LOOS andf STB_HIOS constants. o Add the STT_COMMON, STT_LOOS and STT_HIOS constants. MFC after: 1 week
* Fix the ELF64_R_TYPE and ELF64_R_INFO macros. The symbol type is anmarcel2005-12-171-2/+2
| | | | | | | | | 32-bit entity. Also, don't cast the resulting symbol type value to a datatype smaller than the st_info field type as a quick way to mask off the upper bits as it may cause inconsistent behaviour when the macro is used (without explicit casting) on varargs functions. MFC after: 1 week
* Know the machines FreeBSD runs on. Print the machine value formarcel2005-12-171-2/+10
| | | | | | unknown machines. MFC after: 1 week
* Correct a long-standing problem in elfN_map_insert(): In order to copy aalc2005-12-171-1/+1
| | | | | | | page to user space, the user space mapping must allow write access. In collaboration with: tegge@ MFC after: 3 weeks
* Use M_ZERO for the bridge_iflist to ensure there are no unexpected suprises.thompsa2005-12-171-1/+1
|
* Minor whitespace cleanup.thompsa2005-12-172-31/+31
|
* Update copyright.davidxu2005-12-176-113/+84
|
* trim trailing ^Iobrien2005-12-171-17/+17
|
* Change from a callback in if_ethersubr to using EVENTHANDLER in order to detachthompsa2005-12-173-21/+67
| | | | | | | span ports when they disappear. The span port does not have a pointer to the softc so revert r1.31 and bring back the softc linked-list. MFC after: 2 weeks
* Clean up unused or poorly utilized KTR values. Remove KTR_FS, KTR_KGDB,njl2005-12-173-15/+15
| | | | | | | and KTR_IO as they were never used. Remove KTR_CLK since it was only used for hardclock firing and use KTR_INTR there instead. Remove KTR_CRITICAL since it was only used for crit enter/exit and use KTR_CONTENTION instead.
* Backout pseudo nForce2/3/4 support. These devices (as well asru2005-12-161-160/+25
| | | | | | | | | | | | | | AMD-8111 SMBus 2.0 controller) are all SMBus 2.0 controllers, and need another implementation of SMBus access methods, while this driver supports AMD-756 SMBus 1.0 controller and clones, including AMD-8111 SMBus 1.0 controller. Tested by: Vladimir Timofeev (0x006410de), mezz (0x008410de), ru (0x00d410de) All of us got the same(!) nonsense when running ``mbmon -S'', repeated every four rows.
* - Use uintfptr_t rather than int for the kernel profiling index (though itjhb2005-12-161-3/+3
| | | | | | | | | | really should be a fptrdiff_t if we had that) in profclock(). - Don't try to profile kernel pc's that are >= the kernel lowpc to avoid underflows when computing a profiling index. - Use the PC_TO_I() macro to compute the kernel profiling index rather than doing it inline. Discussed with: bde
* Change the addupc_*() functions to use the uintfptr_t type for pc ratherjhb2005-12-162-4/+4
| | | | than uintptr_t as that is technically more correct.
* GC some unused frame types.jhb2005-12-162-94/+0
| | | | Approved by: grehan
* Style: The second argument to vm_map_find() should be NULL instead of 0.alc2005-12-161-1/+1
|
* Add an extensible version of our *printf(3) implementation to libcphk2005-12-1611-1/+2210
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | on probationary terms: it may go away again if it transpires it is a bad idea. This extensible printf version will only be used if either environment variable USE_XPRINTF is defined or one of the extension functions are called. or the global variable __use_xprintf is set greater than zero. In all other cases our traditional printf implementation will be used. The extensible version is slower than the default printf, mostly because less opportunity for combining I/O operation exists when faced with extensions. The default printf on the other hand is a bad case of spaghetti code. The extension API has a GLIBC compatible part and a FreeBSD version of same. The FreeBSD version exists because the GLIBC version may run afoul of our FILE * locking in multithreaded programs and it even further eliminate the opportunities for combining I/O operations. Include three demo extensions which can be enabled if desired: time (%T), hexdump (%H) and strvis (%V). %T can format time_t (%T), struct timeval (%lT) and struct timespec (%llT) in one of two human readable duration formats: "%.3llT" -> "20349.245" "%#.3llT" -> "5h39m9.245" %H will hexdump a sequence of bytes and takes a pointer and a length argument. The width specifies number of bytes per line. "%4H" -> "65 72 20 65" "%+4H" -> "0000 65 72 20 65" "%#4H" -> "65 72 20 65 |er e|" "%+#4H" -> "0000 65 72 20 65 |er e|" %V will dump a string in strvis format. "%V" -> "Hello\tWor\377ld" (C-style) "%0V" -> "Hello\011Wor\377ld" (octal) "%+V" -> "Hello%09Wor%FFld" (http-style) Tests, comments, bugreports etc are most welcome.
* Use sf_buf_alloc() instead of vm_map_find() on exec_map to create thealc2005-12-163-61/+103
| | | | | | | | | | | | | | | | | ephemeral mappings that are used as the source for three copy operations from kernel space to user space. There are two reasons for making this change: (1) Under heavy load exec_map can fill up causing vm_map_find() to fail. When it fails, the nascent process is aborted (SIGABRT). Whereas, this reimplementation using sf_buf_alloc() sleeps. (2) Although it is possible to sleep on vm_map_find()'s failure until address space becomes available (see kmem_alloc_wait()), using sf_buf_alloc() is faster. Furthermore, the reimplementation uses a CPU private mapping, avoiding a TLB shootdown on multiprocessors. Problem uncovered by: kris@ Reviewed by: tegge@ MFC after: 3 weeks
* In pipe_write(): when uiomove() fails, do not spin on it forever.delphij2005-12-161-0/+2
| | | | | | Submitted by: Kostik Belousov <kostikbel at gmail.com> on -current@ Message-ID: <20051216151016.GE84442@deviant.zoral.local> MFC After: 3 weeks
* MFC: sync with -current (interrupt handler API fixes, RT2500 deadlockwpaul2005-12-160-0/+0
| | | | with wpa_supplicant)
* In ndis_rxeof_eth(), avoid acquiring the NDIS miniport block spinlock forwpaul2005-12-161-2/+4
| | | | | | | serialized miniports when updating the packet list. This fixes a deadlock that can occur with the Ralink RT2500 driver when using wpa_supplicant.
* Fix PCI ID of the AMD-8111 System Management controller so it matchesru2005-12-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SMBus 1.0 and not SMBus 2.0. AMD-8111 hub (datasheet is publically available) implements both SMBus 2.0 (a separate PCI device) and SMBus 1.0 (a subfunction of the System Management Controller device with the base I/O address is accessible through the CSR 0x58). This driver only supports AMD-756 SMBus 1.0 compatible devices. With the patched sysutils/xmbmon port (to also fix PCI ID and to enable smb(4) support), I now get: pciconf: none0@pci0:7:2: class=0x0c0500 card=0x746a1022 chip=0x746a1022 rev=0x02 hdr=0x00 vendor = 'Advanced Micro Devices (AMD)' device = 'AMD-8111 SMBus 2.0 Controller' class = serial bus subclass = SMBus amdpm0@pci0:7:3: class=0x068000 card=0x746b1022 chip=0x746b1022 rev=0x05 hdr=0x00 vendor = 'Advanced Micro Devices (AMD)' device = 'AMD-8111 ACPI System Management Controller' class = bridge dmesg: amdpm0: <AMD 756/766/768/8111 Power Management Controller> port 0x10e0-0x10ff at device 7.3 on pci0 smbus0: <System Management Bus> on amdpm0 # mbmon -A -d Summary of Detection: * SMB monitor(s)[ioctl:AMD8111]: ** Winbond Chip W83627HF/THF/THF-A found at slave address: 0x50. ** Analog Dev. Chip ADM1027 found at slave address: 0x5C. * ISA monitor(s): ** Winbond Chip W83627HF/THF/THF-A found. I think the confusion comes from the fact that nobody really tried SMBus with xmbmon :-), since sysutils/xmbmon port doesn't come with SMBus support enabled, neither in FreeBSD 4, nor in later versions, so mbmon(1) was just showing the values from the Winbond sensors accessible through the ISA I/O method (mbmon -I), for me anyway. On my test machine, the amdpm(4) didn't even attach due to I/O port allocation failure (who knows what the hell it read from CSR 0x58 of the SMBus 2.0 device :-), which isn't in the CSR space). I've also checked that lm_sensors.org uses correct PCI ID for SMBus 1.0 of AMD-8111: i2c-amd756.c: {PCI_VENDOR_ID_AMD, 0x746B, PCI_ANY_ID, PCI_ANY_ID, 0, 0, AMD8111 }, This driver is analogous to our amdpm.c which supports SMBus 1.0 AMD-756 and compatible devices, including SMBus 1.0 on AMD-8111. i2c-amd8111.c: { 0x1022, 0x746a, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, This driver is analogous to nForce-2/3/4, i2c-nforce2.c, which supports SMBus 2.0, and which our amdpm.c does NOT support (SMBus 2.0 uses a different, ACPI-unified, API to talk to SMBus). At least I know for sure it doesn't work with my nForce3. :-) (The xmbmon port will be fixed to correct the PCI ID too and to enable the smb(4) support.)
* Add descriptions for sysctl -d.emaste2005-12-161-5/+5
| | | | | Approved by: glebius Silence from: rwatson (mentor)
* Replace selwakeuppri with selwakeup, let scheduler figure outdavidxu2005-12-161-4/+4
| | | | appropriate thread priority.
* Cleanup __FreeBSD_version.glebius2005-12-161-5/+0
|
* Document the pfsync(4) specific maxupd parameter, with text mostly takenceri2005-12-161-1/+12
| | | | | | | | from OpenBSD's manpage. PR: docs/89256 Submitted by: Pim van Pelt <pim at ipng dot nl> MFC after: 3 days
* Add jumbo frame support for architectures with strict alignment.yongari2005-12-161-12/+60
| | | | Reviewed by: glebius
* Cleanup the strings for printing chipset names, saves quite some space.sos2005-12-162-183/+206
| | | | Add a couble new nVidia chips now we are here.
* It seems ciss should ignore overrun and underrun on a SCSI INQUIRYps2005-12-161-1/+4
| | | | | | | command. This fixes some weird booting issues on newer versions of the firmware on the MSA20. Reported by: Philippe Pegon <Philippe dot Pegon at crc dot u-strasbg dot fr>
* Make this compile on 64bit systems. It likely isn't correct, but that canscottl2005-12-161-1/+1
| | | | be sorted out later.
* Fix compiling on platforms with 64bit time_t.scottl2005-12-161-2/+2
|
* Don peril sensitive sunglasses and jack up the MAX_BPAGES limit to 8192scottl2005-12-161-1/+1
| | | | | on amd64. If you're going to stuff >4GB into your box, reserving 32MB for bonce pages amounts to a rounding error in the overall scheme of things.
* With current pthread implementations, a mutex initialization willdavidxu2005-12-163-9/+19
| | | | | | | | | | | | allocate a memory block. sscanf calls __svfscanf which in turn calls fread, fread triggers mutex initialization but the mutex is not destroyed in sscanf, this leads to memory leak. To avoid the memory leak and performance issue, we create a none MT-safe version of fread: __fread, and instead let __svfscanf call __fread. PR: threads/90392 Patch submitted by: dhartmei MFC after: 7 days
* Use uintmax_t and %j to print bus dma segment members rather than castingjhb2005-12-151-6/+7
| | | | to long long and using %ll.
* Use %t (ptrdiff_t modifier) to print a couple of pointer differences ratherjhb2005-12-152-4/+3
| | | | than casting them to int.
* Make the SYNOPSIS section a bit more informative.joel2005-12-151-1/+12
|
* Make the SYNOPSIS section a bit more informative.joel2005-12-1515-38/+206
|
* It is not safe to use m_copypacket() here as the returned mbuf is readonly,thompsa2005-12-151-1/+6
| | | | | | change to m_dup and keep the alignment on the layer3 header. MFC after: 1 week
* Install nextboot in /rescue as /rescue/nextboot rather thanjhb2005-12-151-1/+1
| | | | | | | /rescue/nextboot.sh to match the name in /sbin (/sbin/nextboot). Reviewed by: gtetlow MFC after: 1 week
OpenPOWER on IntegriCloud