aboutsummaryrefslogtreecommitdiff
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
...
* In pmap_mapdev we correctly round the address off to the nearest pageBenno Rice2006-05-301-1/+1
| | | | | | | boundary, but we must also add the offset back on to the va we return. Notes: svn path=/head/; revision=159068
* Uncomment the call to cpu_idcache_wbinv_all() after the MMU has beenOlivier Houchard2006-05-301-1/+1
| | | | | | | | | | | | | enabled. It has been commented out for a reason I forgot but I suspect does not apply anymore. Technically speaking it's not required to do it, has the data and the instruction cache have been disabled in _start(). However, it may change in the future, so I don't want to rely on this behavior. Submitted by: kevlo Notes: svn path=/head/; revision=159067
* Dike out WARNS from kernel module makefiles. Kernels and modulesRuslan Ermilov2006-05-308-8/+0
| | | | | | | | | | use a different mechanism for setting warning flags, and using WARNS here only has null or negative effects. Submitted by: bde (I think it means "submitted") Notes: svn path=/head/; revision=159066
* Fix various typos and brainos in last commit.Poul-Henning Kamp2006-05-301-5/+4
| | | | | | | Submmited by: Andrew Turner <andrew@fubar.geek.nz> Notes: svn path=/head/; revision=159065
* Spin until a request structure is available in the ioctl path.Paul Saab2006-05-301-2/+2
| | | | Notes: svn path=/head/; revision=159061
* Close race between vmspace_exitfree() and exit1() and races betweenTor Egge2006-05-296-53/+104
| | | | | | | | | | | | | | | | | | | | vmspace_exitfree() and vmspace_free() which could result in the same vmspace being freed twice. Factor out part of exit1() into new function vmspace_exit(). Attach to vmspace0 to allow old vmspace to be freed earlier. Add new function, vmspace_acquire_ref(), for obtaining a vmspace reference for a vmspace belonging to another process. Avoid changing vmspace refcount from 0 to 1 since that could also lead to the same vmspace being freed twice. Change vmtotal() and swapout_procs() to use vmspace_acquire_ref(). Reviewed by: alc Notes: svn path=/head/; revision=159054
* Add acknowledgements to LSI-Logic for supportMatt Jacob2006-05-299-0/+39
| | | | Notes: svn path=/head/; revision=159052
* + Change some debug messages to MPT_PRT_NEGOTIATE level (so weMatt Jacob2006-05-291-74/+79
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | can see the results of SPI negotiation w/o being overwhelmed with other crap). + For U320 devices, check against both Settings *and* DV flags before deciding whether we need to skip actual SPI settings for a device. + Go back to creating a 'physical disk' side of a raid/passthru bus that is limited to the number of maximum physical disks. Actually, this isn't probably *quite* right yet for one RAID volume, and if we ever end up with finding a device that supports more than one RAID volume (not likely), it probably won't quite be right either. The problem here is that the creating of this 'physical' passthru sim is just a cheap way to leverage off the CAM midlayer to do our negotiation for us on the subentities that make up a RAID volume. It almost causes more trouble than it is worth because we have to remember which side we're talking to in terms of forming commands and which target ids are real and so on. Bleah. + Skip trying to actually do SPI settings for the RAID volumes on the real side of the raid/passthru bus pair- this just confuses the issue. The underlying real physical devices will have the negotiation performed and the Raid volume will inherit the resultant settings. At the sime time, non-RAID devices can be on the same real bus, so *do* perform negotiations with them. + At the end of doing all of the settings twiddling, *ahem*, remember to go update the settings on the card itself (dunno how this got nuked). At this point, negotiations *seem* to be being done (again) correctly for both RAID volumes and their subentities. And they seem to be *mostly* now right for other non-RAID entities on the same bus (I ended up with 3 out of 8 other disks still at narror/async- haven't the slightest idea why yes). Finally, negotiations on a normal bus seem to work (again). There's still more work coming into this area, but we're in the final stretch. Notes: svn path=/head/; revision=159051
* Add a mpt_is_raid_volume function which will tell you whetherMatt Jacob2006-05-292-2/+20
| | | | | | | | | | | the passed target id is one of the RAID VolumeID. This result is used to decide whether to try and do actual SPI negotiations on the real side of the raid/passthru bus pair. The reason we check this is that we can have both RAID volumes and real devices on the same bus. Notes: svn path=/head/; revision=159050
* Add a MPT_PRT_NEGOTIATION print level.Matt Jacob2006-05-291-0/+1
| | | | Notes: svn path=/head/; revision=159049
* Nuke sa11x0_attach_args. It's a NetBSDIsm, and we have no use for it.Olivier Houchard2006-05-291-9/+0
| | | | | | | Submitted by: kevlo Notes: svn path=/head/; revision=159047
* o Add net80211/ to cscope dir list.Maxim Konovalov2006-05-291-4/+4
| | | | Notes: svn path=/head/; revision=159046
* Remove cruft.Scott Long2006-05-291-5/+0
| | | | Notes: svn path=/head/; revision=159044
* Fix build with -Wundef.Ruslan Ermilov2006-05-292-4/+4
| | | | Notes: svn path=/head/; revision=159042
* When setting verbose, *set* it, don't *add* it.Matt Jacob2006-05-291-1/+1
| | | | Notes: svn path=/head/; revision=159041
* MFalpha/amd64/arm/ia64Alan Cox2006-05-292-23/+7
| | | | | | | | | | Retire pmap_track_modified(). We no longer need it because we do not create managed mappings within the clean submap. To prevent regressions, add assertions blocking the creation of managed mappings within the clean submap. Notes: svn path=/head/; revision=159031
* Unexpand TAILQ_FIRST(foo) == NULL to TAILQ_EMPTY(foo).Xin LI2006-05-291-2/+2
| | | | Notes: svn path=/head/; revision=159030
* Backout changes trying to inherit floating-point environment, althoughDavid Xu2006-05-293-40/+1
| | | | | | | | | | POSIX (susv3) requires this, but it is unclear what should be inherited, duplicating whole 387 stack for new thread seems to be unnecessary and dangerous. Revert to previous code, force a new thread to be started with clean FP state. Notes: svn path=/head/; revision=159027
* If a zero-length bulk or interrupt transfer is requested then assumeIan Dowse2006-05-283-18/+17
| | | | | | | | | | | | | USBD_FORCE_SHORT_XFER to ensure that we actually build and execute a transfer. This means that the various alloc_sqtd_chain functions will always construct a transfer, so it is safe to modify the allocated descriptors on return. Previously there were cases where a zero length transfer would cause a NULL dereference. Reported by: bp Notes: svn path=/head/; revision=159024
* Remove incorrect null_checkexp() routine. ThisCraig Rodrigues2006-05-281-14/+0
| | | | | | | | | | | | | | will allow the NFS server to call vfs_stdcheckexp() on the exported nullfs filesystem, not the underlying filesystem being nullfs mounted. If the lower filesystem was not NFS exported, then the NFS exported null filesystem would not work. Pointed out by: scottl PR: kern/87906 MFC after: 1 week Notes: svn path=/head/; revision=159023
* Correct typosKris Kennaway2006-05-281-3/+3
| | | | | | | MFC after: 2 weeks Notes: svn path=/head/; revision=159022
* Back out the BUS_DMA_ALLOCNOW change from rev 1.39. Scottl informed me thatMike Silbersack2006-05-281-3/+3
| | | | | | | it's unnecessary, as the TX/RX lists are static allocations. Notes: svn path=/head/; revision=159021
* Modify MNT_UPDATE behavior for nullfs so that it does notCraig Rodrigues2006-05-281-2/+7
| | | | | | | | | | | return EOPNOTSUPP if an "export" parameter was passed in. This should allow nullfs mounts to be NFS exported. PR: kern/87906 MFC after: 1 week Notes: svn path=/head/; revision=159019
* Avoid unwanted sign extension of indexed byte load in bpf code.David Malone2006-05-281-2/+2
| | | | | | | | | | PR: 89748 Submitted by: Guy Harris <guy@alum.mit.edu> Obtained from: NetBSD via OpenBSD MFC after: 2 weeks Notes: svn path=/head/; revision=159018
* Re-revert back to rev 1.8:Mike Silbersack2006-05-281-2/+2
| | | | | | | | | | - Reduce the number of RX and TX buffers bfe uses so that it does not use more bounce buffers than busdma is willing to allow it to use See if_bfe.c for comments on why this is now safe to do. Notes: svn path=/head/; revision=159015
* 1. Make sure that the TX and RX descriptor rings are 4096 byte aligned.Mike Silbersack2006-05-281-6/+21
| | | | | | | | | | | | | | | | | | | | | Also use BUS_DMA_ALLOCNOW to be on the safe side. 2. Look for the Descriptor Error, and Descriptor Protocol Error flags from the card, and down the interface if we detect either. #1 (along with fixes to busdma) makes sure that this card works in all memory situations. Prior to this change, it was just luck that 512 count RX/TX lists were properly aligned. Now we can use any size of RX/TX lists and still have them properly aligned. #2 ensures that we don't get into an endless interrupt storm if busdma fails us. Descriptor Protocol Error would occur if we misaligned the TX/RX rings, and Descriptor Error would occur if we tried to give the card descriptors or rings with addresses > 1G. Trying to reinitialize the card isn't going to fix these errors, hence we don't try. Notes: svn path=/head/; revision=159013
* MFi386 rev 1.78:Mike Silbersack2006-05-281-2/+14
| | | | | | | | | | Add a quick hack to ensure that bus_dmamem_alloc properly aligns small allocations with large alignment requirements. Add a panic to detect cases where we've still failed to properly align. Notes: svn path=/head/; revision=159012
* Add a quick hack to ensure that bus_dmamem_alloc properly alignsMike Silbersack2006-05-281-2/+14
| | | | | | | | | small allocations with large alignment requirements. Add a panic to detect cases where we've still failed to properly align. Notes: svn path=/head/; revision=159011
* Add a disclaimer regarding public/internal functions to every subsystem forAlexander Leidinger2006-05-2819-17/+34
| | | | | | | | | | now. Discussed on: cvs-all Helped with the wording: "Ben Kaduk" <minimarmot@gmail.com> Notes: svn path=/head/; revision=159010
* Use a more appropriate printf format for size_t.Alexander Leidinger2006-05-281-1/+1
| | | | | | | This should unbreak the tinderbox build (64bit architectures). Notes: svn path=/head/; revision=159009
* In execve(), audit the path name being executed. In the future, itRobert Watson2006-05-281-2/+2
| | | | | | | | | would also be good to audit the interpreter pathname, if any. Obtained from: TrustedBSD Project Notes: svn path=/head/; revision=159003
* Add missing % signs in the lock annotations of the functions:Diomidis Spinellis2006-05-281-8/+8
| | | | | | | | | lookup, rename, strategy, islocked The missing % sign meant that the lines were processed as plain comments and the corresponding assertions were never generated. Notes: svn path=/head/; revision=159002
* Clear high 16 bits of mxcsr register, according to Intel document, ifDavid Xu2006-05-282-0/+5
| | | | | | | | | the high 16 bits is non-zero, fxrstor instruction will generate GP fault, resulting kernel crash, this bug can be triggered by setcontext and ptrace(PT_SETXMMREGS). Notes: svn path=/head/; revision=159000
* Use the limited scatter-gather capabilities of ehci, ohci and uhciIan Dowse2006-05-2814-379/+812
| | | | | | | | | | | | | | | | | | host controllers to avoid the need to allocate any multi-page physically contiguous memory blocks. This makes it possible to use USB devices reliably on low-memory systems or when memory is too fragmented for contiguous allocations to succeed. The USB subsystem now uses bus_dmamap_load() directly on the buffers supplied by USB peripheral drivers, so this also avoids having to copy data back and forth before and after transfers. The ehci and ohci controllers support scatter/gather as long as the buffer is contiguous in the virtual address space. For uhci the hardware cannot handle a physical address discontinuity within a USB packet, so it is necessary to copy small memory fragments at times. Notes: svn path=/head/; revision=158998
* PCB_NPXINITDONE is cleared by npx_fork_thread.David Xu2006-05-281-1/+1
| | | | Notes: svn path=/head/; revision=158997
* If parent thread never used FPU, the only work is to clear flagDavid Xu2006-05-281-1/+6
| | | | | | | PCB_NPXINITDONE for new thread and let trap code initialize it. Notes: svn path=/head/; revision=158996
* When creating a new thread, inherit floating-point environment fromDavid Xu2006-05-283-0/+35
| | | | | | | current thread, this is required by POSIX pthread_create document. Notes: svn path=/head/; revision=158995
* NULL out ii->stdstart and ii->stdend when they are invalid. ThisIan Dowse2006-05-281-1/+10
| | | | | | | | is not necessary for correct operation but makes it clearer that freed transfer descriptors cannot be accessed. Notes: svn path=/head/; revision=158994
* Fix a harmless typo where the software pointer in the dummy QH forIan Dowse2006-05-281-1/+1
| | | | | | | control transfers did not match the hardware pointer. Notes: svn path=/head/; revision=158993
* Defer axe_tick processing to a USB task, since axe miibus operationsIan Dowse2006-05-272-0/+20
| | | | | | | | need to sleep. This avoids an INVARIANTS panic. It looks like if_rue and if_aue need a similar change, but I don't have hardware to test. Notes: svn path=/head/; revision=158992
* Unbreak after previous commit. While here, improve function namingMarcel Moolenaar2006-05-271-26/+26
| | | | | | | consistency by s/ssc/ssc_/g. Notes: svn path=/head/; revision=158984
* Work in progress toward fixing IM checked in after havingMatt Jacob2006-05-276-80/+178
| | | | | | | | | | | | | | | | | | | | | lost one set to a peninsula power failure last night. After this, I can see both submembers and the raid volumes again, but speed negotiation is still broken. Add a mpt_raid_free_mem function to centralize the resource reclaim and fixed a small memory leak. Remove restriction on number of targets for systems with IM enabled- you can have setups that have both IM volumes as well as other devices. Fix target id selection for passthru and nonpastrhu cases. Move complete command dumpt to MPT_PRT_DEBUG1 level so that just setting debug level gets mostly informative albeit less verbose dumping. Notes: svn path=/head/; revision=158982
* Commit the new (old) midi framework. It's based in parts on the NetBSD code,Alexander Leidinger2006-05-272-0/+165
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | but large parts are rewritten by matk and tanimura. This is old code, it's not maintained since 2003. We also don't have a maintainer for this! Yuriy Tsibizov took it and uses it in his emu10kx driver. Since the emu10kx driver will enter the tree "soon" (some bugs have to be fixed after Yuriy return from his holidays), I add it here already. This also contains some changes to emu10k1 and cmi, so if you're lucky, you can now make some kind of use of midi with those soundcards. To all those poor souls which don't have such a card: feel free to send patches, we don't have a maintainer for this. To those which miss a specific feature in the midi code: feel free to submit patches, we don't have a maintainer for this. Oh, did I already told that it would be nice if someone would take care of it? Maintainer with midi equipment wanted! :-) If you get LOR's, submit a PR and notify multimedia@ please. If you get panics, submit a PR with a backtrace (compile the sound system into your kernel instead of using modules in this case) and notify multimedia@ please. Written by: matk, tanimura Submitted by: "Yuriy Tsibizov" <Yuriy.Tsibizov@gfk.ru> Based upon: code from NetBSD Notes: svn path=/head/; revision=158980
* Commit the new (old) midi framework. It's based in parts on the NetBSD code,Alexander Leidinger2006-05-2715-2/+4562
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | but large parts are rewritten by matk and tanimura. This is old code, it's not maintained since 2003. We also don't have a maintainer for this! Yuriy Tsibizov took it and uses it in his emu10kx driver. Since the emu10kx driver will enter the tree "soon" (some bugs have to be fixed after Yuriy return from his holidays), I add it here already. This also contains some changes to emu10k1 and cmi, so if you're lucky, you can now make some kind of use of midi with those soundcards. To all those poor souls which don't have such a card: feel free to send patches, we don't have a maintainer for this. To those which miss a specific feature in the midi code: feel free to submit patches, we don't have a maintainer for this. Oh, did I already told that it would be nice if someone would take care of it? Maintainer with midi equipment wanted! :-) If you get LOR's, submit a PR and notify multimedia@ please. If you get panics, submit a PR with a backtrace (compile the sound system into your kernel instead of using modules in this case) and notify multimedia@ please. Written by: matk, tanimura Submitted by: "Yuriy Tsibizov" <Yuriy.Tsibizov@gfk.ru> Based upon: code from NetBSD Notes: svn path=/head/; revision=158979
* Fix typo in printf string.Simon L. B. Nielsen2006-05-271-2/+2
| | | | | | | | MFC after: 1 week Approved by: cperciva (mentor) Notes: svn path=/head/; revision=158973
* extlen and cpp is not used here in linker_search_kld(), so nuke them.Xin LI2006-05-271-10/+2
| | | | | | | | Reported by: Mingyan Guo <guomingyan at gmail dot com> MFC After: 2 weeks Notes: svn path=/head/; revision=158972
* typo.Yoshihiro Takahashi2006-05-271-2/+2
| | | | Notes: svn path=/head/; revision=158969
* Fix for a potential attempt to sleep while holding nm_mtx. Caught and reportedMohan Srinivasan2006-05-261-1/+1
| | | | | | | | | by Witness (which forces the mbuf allocation flag to M_NOWAIT). Reported by: "sekes". Notes: svn path=/head/; revision=158965
* Update to new console api.Poul-Henning Kamp2006-05-263-57/+22
| | | | Notes: svn path=/head/; revision=158964
* Add sanity checking for QUEUE(3) TAILQs under INVARIANTS (similar toEd Maste2006-05-261-0/+37
| | | | | | | | | | the LIST checks). Races may lead to list corruption, which can be difficult to unravel in a post-mortem analysis. These checks verify that the prev and next pointers are consistent when inserting or removing elements, thus catching any corruption earlier. Notes: svn path=/head/; revision=158963