summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* MFC r288153:smh2015-12-011-1/+8
| | | | | | Use kenv 'dumpdev' in the same way as etc/rc.d/dumpon Sponsored by: Multiplay
* MFC r291143: Update Qlogic 23XX firmware from 3.03.26 to 3.03.28mav2015-11-302-14368/+15112
|
* MFC r291132: Update firmware for QLogic 22xx from 2.02.06 to 2.02.08.mav2015-11-301-4720/+5180
|
* MFC r289755: Remove residual verbosity.mav2015-11-301-29/+10
| | | | firmware_register() already reports errors.
* MFC r291365, r291369: One more round of port scanner rewrite.mav2015-11-306-266/+181
| | | | | | | - Make scan aborted by event restart immediately and infinitely. - Improve handling of some loop events from firmware. - Remove loop down timer, adding its functionality to scanner thread. - Some more unification and simplification.
* MFC r291265: Rename ASYNC_LIP_F8 to ASYNC_LIP_NOS_OLS_RECV.mav2015-11-303-3/+3
| | | | New name better repsents its meaning for modern chips.
* MFC r291221: Remove "disable" hint, which duplicates system-wide "disabled".mav2015-11-304-36/+0
|
* MFC r291209: Fix target mode support for Qlogic 2200 FC adapters.mav2015-11-306-30/+30
| | | | | Now target mode works for all supported FC adapters except ancient 2100, which is not tested.
* MFC r291188: Rip off target mode support for parallel SCSI QLogic adapters.mav2015-11-3018-8907/+161
| | | | | | | Hacks to enable target mode there complicated code, while didn't really work. And for outdated hardware fixing it is not really interesting. Initiator mode tested with Qlogic 1080 adapter is still working fine.
* MFC r290138, r290139: Some updates to isp(4) manual page.mav2015-11-301-29/+27
|
* MFC r275374: Document ISP 2532 support and hint.isp.0.vports tunable.mav2015-11-301-1/+5
|
* MFC r291163:mav2015-11-301-3/+18
| | | | | | | | Explicitly call SEND CHANGE REQUEST for pre-24xx chips in target mode. While later firmware always registers for RSCN requests, older one does it only in initiator mode. But in target mode there RSCN can be the only way to detect gone intiator.
* MFC r291162: Generate fake ISPASYNC_CHANGE_PDB on fake login on pre-24xx.mav2015-11-301-1/+7
| | | | This makes port scanner fix absent port ID for added initiator.
* MFC r291161: Gracefully stop firmware before resetting chip when changing role.mav2015-11-301-2/+25
|
* MFC r291160: Add some more asynchronous event status codes.mav2015-11-302-23/+45
|
* MFC r291159: Add more mailbox command codes.mav2015-11-302-47/+74
|
* MFC r291147: Increase maximal value of vports tunable to 254.mav2015-11-301-1/+1
| | | | | I am not sure this value is really viable yet, but that is what chips officially support in NPIV mode (in loop mode maximum is 125).
* MFC r291144: Fix target mode with fabric for pre-24xx chips.mav2015-11-304-19/+70
| | | | | | | For those chips we are not receiving login events, adding initiators based on ATIO requests. But there is no port ID in that structure, so in fabric mode we have to explicitly fetch it from firmware to be able to do normal scan after that.
* MFC r291099: Some cosmetics for ancient cards.mav2015-11-301-3/+7
|
* MFC r291092: Optimize SNS_GID_FT request scratch memory usage.mav2015-11-301-13/+14
| | | | Now with present 4K of scratch we can fetch up to 508 ports (16 more).
* MFC r291080: Another round of port scanner rewrite.mav2015-11-306-632/+292
| | | | | | This change simplifies and unifies port adding/updating for loop and fabric scanners. It also fixes problems with scanning restarts due to concurrent port databases changes. It also fixes many cosmetic issues.
* MFC r291014: Simplify fabric tasting code.mav2015-11-301-87/+22
| | | | | Except cosmetic changes this removes fabric ports from our port database. It is always firmware duty to manage them, so driver don't need to worry.
* MFC r291013: Remove some confusions between loopid and nphdl.mav2015-11-305-66/+66
| | | | | | | | Modern cards in most cases operate abstract port handles, that have no any relation to real loop IDs. Leave loopid used only where it really goes about local loop IDs. While there, fix few more cases where LUNs were still printed in decimal.
* MFC r291000: Register our FC4 Features in SNS.mav2015-11-305-0/+152
|
* MFC r290993, r290994: Unify and cleanup FC ports scan.mav2015-11-303-217/+153
|
* MFC r290981: Off-by-one correctiont to r290980.mav2015-11-301-1/+1
|
* MFC r290980: Make firmware handle virtual ports SNS logins for us.mav2015-11-302-15/+8
|
* MFC r290978: Add real initial support for RQSTYPE_RPT_ID_ACQ.mav2015-11-303-34/+33
|
* MFC r290830: Fix/improve CRN tracking.mav2015-11-302-33/+21
|
* MFC r290507: Rework r290504.mav2015-11-302-5/+7
|
* MFC r290506: Specify VP when sending a marker.mav2015-11-301-0/+1
|
* MFC r290504: Make ISP_SLEEP() really sleep instead of spinning.mav2015-11-302-49/+14
| | | | While there, simplify the wait logic.
* MFC r290160: Remove some unneeded code.mav2015-11-301-4/+0
|
* MFC r290159: Remove reset delays for which I see neither explanation nor need.mav2015-11-301-25/+7
|
* MFC r290147: Fix and improve error masking and reporting.mav2015-11-303-48/+54
|
* MFC r290118: Change the way how target mode is enabled on 23xx chips.mav2015-11-302-4/+5
| | | | | Without docs I am not completely sure about this, but on my tests new method works better then previous, at least with our latest firmware.
* MFC r290104: Improve/fix loop scanning routine.mav2015-11-304-64/+195
| | | | | | | | | | | | For the most of chips (except anscient ones) port handlers have no relation to port IDs. In such situation old code scanning first 125 handlers was quite naive. Instead of doing that, send to chip single request to get full list of port handlers available on specific virtual port and scan only them. Old code had problems with case of several virtual ports enabled, when port handlers allocated from global address space could easily go above 125. This change was successfully tested on 23xx, 24xx and 25xx chips in loop mode with 4 virtual initiator ports, each seing 50 virtual target ports.
* MFC r289138: Remove legacy CHS geometry from dmesg and unify capacity outputs.mav2015-11-303-17/+11
|
* MFC r291383: Fix panic when trying to sort unsupported command in OOA queue.mav2015-11-301-0/+2
| | | | Handle unsupported commands as not conflicting/blocking.
* MFC: r290959rmacklem2015-11-301-3/+5
| | | | | | | | | | | | | | When the smbfs iod thread (smb_iod_thread()) is shutting down, smb_iod_destroy() would call smb_iod_request(). This call could return as soon as the wakeup(evp) in smb_iod_main() call is done and then could destroy the mutexes. This caused a race with the rest of smb_iod_main()s use of these mutexes. A crash reported on freebsd-stable@ by Christian Kratzer was diagnosed as a use of one of these mutexes after it was destroyed. This patch moves destruction of the mutexes from smb_iod_destroy() to the end of smb_iod_thread(), so that they aren't destroyed before the thread is done with them. Christian comfirmed that the patch stopped the crashes from happening.
* MFC r291207:smh2015-11-301-4/+19
| | | | | | Fix dumpon compatibility with dumpdev kenv Sponsored by: Multiplay
* MFC r290855: Increase reset assertion time from 10 to 100us.mav2015-11-291-1/+1
| | | | | | | | | On my own tests I see no effect from this change, but I also can't reproduce the reported problem in general. PR: 127391 PR: 204554 Submitted by: satz@iranger.com
* MFC r289895:kib2015-11-291-86/+42
| | | | | | | | | | | Reduce the amount of calls to VOP_BMAP() made from the local vnode pager. MFC r291157, r291158: Include the pages before/after the requested page, that fit into the reqblock, into the calculation of the size of run of pages. Tested by: pho
* MFC r291126:mav2015-11-284-3/+70
| | | | | | | | | | Add API to obtain primary enclosure name and ID for /dev/sesX devices. sesX device number may change between reboots, so to properly identify the instance we need more data. Name and ID reported here may mach ones reported by SCSI device, but that is not really required by specs. Sponsored by: iXsystems, Inc.
* MFC r291306:gjb2015-11-281-1/+1
| | | | | | Fix tmpfs(5) '/tmp' mount point. Sponsored by: The FreeBSD Foundation
* MFC r290820: Add NULL check to make Coverity happy.mav2015-11-271-1/+2
|
* MFC r290670: Modify target port groups logic in CTL.mav2015-11-274-33/+82
| | | | | | | | | | | | | | | | | - Introduce "ha_shared" port option, which being set to "on" moves the port into separate port group, shared between HA nodes. This allows to better handle cases when iSCSI portals are bound to CARP address that can dynamically move between nodes. Some initiators (at least VMware) don't detect that after iSCSI reconnect they've attached to different SCSI port from different port group, that totally breakes ALUA status parsing. In theory, I believe, it should be enough to have different iSCSI portal group tags on different nodes to make initiators detect this condition, but it seems like VMware ignores those values, and even full LUN retaste forced by UA does not help. - Make CTL report up to three port groups: 1 -- non-HA mode or ports with "ha_shared" option set, 2 -- HA node 1, 3 -- HA node 2. - Report Transitioning state for all port groups when HA interlink is connected, but neither of nodes is primary for the LUN.
* MFC r290615: Introduce portal group options in ctl.conf.mav2015-11-275-77/+99
| | | | | | While CTL has concept of port options, used at least for iSCSI ports now, before this change it was impossible to set them manually. There still no user-configurable port options now, but I am planning to change that.
* MFC r291061: Improve locking of sg_threadcount.mav2015-11-271-1/+3
|
* MFC r291097:ume2015-11-271-1/+4
| | | | Don't truncate an interface name when -W option is specified.
OpenPOWER on IntegriCloud