summaryrefslogtreecommitdiff
path: root/sys
AgeCommit message (Collapse)Author
2010-01-07Repair non-MULTIPROCESSOR kernel compilation.Miod Vallat
2010-01-07Make sure to update p_cpu on MULTIPROCESSOR kernels.Miod Vallat
2010-01-07Rename _rxfilter functions to _iff for consistency. From Brad, ok kevlo@Stuart Henderson
2010-01-07dont use the xs in the scsi_cmd routines after calling ciss_cmd, it mightDavid Gwynne
have been completed. the xs was used to figure out if we should return COMPLETED or SUCCESFULLY_QUEUED. the return value doesnt mean anything anymore, so just return COMPLETE.
2010-01-07CISS_UNLOCK before returning from the scsi_cmd handler when we hit NO_CCB.David Gwynne
this should solve problems like this: WARNING: SPL NOT LOWERED ON SYSCALL 16384 8 EXIT dae4560 6 Stopped at Xsyscall+0x1eb: movl $0,%gs:0x3d4 ddb{3}>
2010-01-07Enable IPI interrrupt in trap. ok miod@Takuya ASADA
2010-01-07warn if scsi_done has been called twice on an xs in the scsi_xs_sync pathDavid Gwynne
rather than panic. ok krw@
2010-01-06syncStuart Henderson
2010-01-06Add Canon PowerShot SX100, Linksys WUSB600N v2 (new version of RT2870). From ↵Stuart Henderson
Brad.
2010-01-06syncStuart Henderson
2010-01-06New Broadcom nics, from Linux driver via Brad.Stuart Henderson
2010-01-05- properly spell "packet".Jasper Lievisse Adriaanse
2010-01-05dont need to end statements with two semicolons. one is enough.David Gwynne
pointed out by miod@ and claudio@
2010-01-05Dynamic allocation for ASID and ASID generation number on struct pmap. ok miod@Takuya ASADA
2010-01-05only call disk_unbusy when we're finished with the io (or we're requeuingDavid Gwynne
it when we hit NO_CCB). retried io would call unbusy twice before this change. noticed by deraadt@
2010-01-05atapiscsi didnt call scsi_done when the xfer had SCSI_POLL set. this isDavid Gwynne
Bad. this sort of worked before because the midlayer would sleep on the ITSDONE flag in the scsi_xfer, which atapiscsi does set. however, with the introduction of scsi_xs_sync, it now sleeps on a condition that is only cleared if the adapter properly and correctly calls scsi_done when it is in fact done with the xfer. sorry guys. ok krw@
2010-01-04Previous commit was too restrictive: just ignore the CLONE_FS flagPhilip Guenthe
when not doing CLONE_THREAD, like we did before, instead of treating it as an error. This unbreaks Opera running in linux compat. Also, Linux completely ignores CLONE_DETACHED, so do that too, and consistently refer to the flags in comment via their Linux names without trying to abbreviate them further. Problem found and fix confirmed by sturm@
2010-01-04remove dead assignment and newly created unused variable.Charles Longeau
Found by LLVM/Clang Static Analyzer. ok krw@ dlg@
2010-01-04turn off verboseTheo de Raadt
2010-01-04nothing in the midlayer cares about ITSDONE anymore. if a command is done,David Gwynne
the adapter will call scsi_done on it.
2010-01-04rename ccb_xs to ccb_cookie and change its type from a scsi_xfer * to aDavid Gwynne
void *. this lets us pass things other than scsi_xfers to ccb completion handlers.
2010-01-04protect the ccb free queue with a mutex rather than splbioDavid Gwynne
2010-01-04Don't decrement the refcnt on a plimits until after we're donePhilip Guenthe
copying it, so that the process can't sleep in pool_get() and have the source structure get pool_put() or modified behind its back. ok deraadt@
2010-01-04Add a few missing scsi_done()'s before returning COMPLETE. AlsoKenneth R Westerback
return COMPLETE and not CMD_COMPLETE in one case. Tested by kettenis@ and myself on Blade1000's. ok dlg@
2010-01-04introduce scsi_xs_sync. this will synchronously execute a scsi_xferDavid Gwynne
and do the appropriate sleeps, retries, error processing, and finally returns an errno style value to the caller. this cuts scsi_scsi_cmd, the ioctl code, sd_flush, and scsi_inquiry over to scsi_xs_sync. ok krw@
2010-01-03Implement pmap_proc_iflush() such that the instruction cache is synchronizedMark Kettenis
with the data cache when ptrace(2) is used to write into a process' address space. ok miod@
2010-01-03Use atomic operations to access the per-cpu scheduler flags.Mark Kettenis
2010-01-03delete unused variableTheo de Raadt
2010-01-03enable aibsTheo de Raadt
2010-01-03change M_WAITOK --> M_WAITOK|M_CANFAILCharles Longeau
with input from marco@ ok marco@ krw@ this was ok looooooooong time ago but lost in my mailbox
2010-01-03Use a split genassym.cf scheme on mips64 ports. Don't forget to rerun config(8).Miod Vallat
2010-01-03disk cache mode pageDavid Gwynne
2010-01-03oops, get the order of args right for the header request inDavid Gwynne
mpi_bio_get_pg0_raid. the sensor updates dont poll at all now.
2010-01-03mpi_bio_get_pg0_raid is only called from a process context. let the cfgDavid Gwynne
requests sleep rather than poll for completion.
2010-01-03oops, forgot to set the ccb_cookie in mpi_wait. mpi_wait_done would faultDavid Gwynne
when it used the uninitialized cookie.
2010-01-03get rid of the last internal user of splbio. waiting for the completion ofDavid Gwynne
a ccb can now be done with mpi_wait. this switches the cfg page handlers over from their own tsleep stuff to mpi_wait.
2010-01-03rename ccb_xs to ccb_cookie, and switch it from a struct scsi_xfer * to aDavid Gwynne
void *. this will let me stash things other than scsi xfers in the ccb for ccb_done handlers to use.
2010-01-03dont leak a ccb if we fail to get a reply in portenableDavid Gwynne
2010-01-03when getting a reply from the hw, only sync the dmamem for that one replyDavid Gwynne
rather than all the replies.
2010-01-03switch mpi from using splbio to protect itself over to mutexes.David Gwynne
mpi only needs two mutexes, one for the list of free ccbs, and another to protect the reply doorbell. the latter is necessary to allow polling for command completion to work in smp systems. tested on sas and fc hbas. this diff was written over 2 years ago now with surprisingly few tweaks to handle changes that have occurred since then.
2010-01-03scsi_done sets ITSDONE, we dont have to do it.David Gwynne
2010-01-02move the buf handling from using scsi_scsi_cmd over to scsi_xs_exec. iDavid Gwynne
think this is the last chunk of code using a buf pointer in the scsi_xfer now. this has not been tested due to a lack of hardware anywhere. if there are problems please report them as soon as possible. ok krw@ miod@
2010-01-02uninitalized protocol version for ipv6; from mickey; ok claudioMarkus Friedl
2010-01-02When finding certain novatel devices in mass storage modeJonathan Gray
we need to do scsi ejects. One reported/tested by lahrcm@hotmail.com another suggested by David Coppa based on what FreeBSD does.
2010-01-02We need an additional level of indirection through 'struct scsibus_attach_args'Mark Kettenis
to find the 'struct scsi_link' associated with a scsibus(4). Interpreting 'struct scsibus_attach_args' as a 'struct scsi_link' happened to mostly work since it had a zero stored in the right place. However, after dlg@'s changes to 'struct scsi_link' that no longer turned out to be true. Makes my blade1k find its root disk again.
2010-01-01Miod must have gotten his fingers stuck between the keys on his keyboard andMark Kettenis
accidentally swapped to lines of code. Swap them back such that this compiles again.
2010-01-01Map the device registers before using them. We were lucky that some otherMark Kettenis
device already mapped the block that contains our registers, but if we change the probe order, or disable devices we might not end up so lucky. ok jsing@, miod@
2010-01-01Make sure than ptrace functions never return a non-zero value in the zeroMiod Vallat
register.
2010-01-01Make sure we grab the kernel lock before invoking trapsignal().Miod Vallat
2010-01-01If you want to use atomic ops, you need to #include the proper files insteadMiod Vallat
of relying upon other headers bringing it in for you.