History log of /src/sys/dev/raidframe/rf_compat50.c |
Revision | | Date | Author | Comments |
1.13 |
| 15-Dec-2019 |
tsutsui | Remove clause 3 and 4 leftovers from TNF licenses in more sources.
Confirmed by martin@ in PR/54760.
|
1.12 |
| 12-Dec-2019 |
pgoyette | Rather than keeping a separate mutex, condvar, and pserialize for each module hook, we can share a common set of synchronization structures. This cuts the amount of cacheline_aligned data for these structures by 50%.
Note that we still have a per-hook localcount, since we need to count individual references.
As discussed with riastradh@
Welcome to 9.99.22 !
|
1.11 |
| 26-Sep-2019 |
christos | make nspares unsigned; it is assigned from numSpares which is unsigned.
|
1.10 |
| 01-Mar-2019 |
pgoyette | branches: 1.10.4; Rename the MODULE_*_HOOK() macros to MODULE_HOOK_*() as briefly discussed on irc.
NFCI intended.
Ride the earlier kernel bump - it;s getting crowded.
|
1.9 |
| 09-Feb-2019 |
christos | - Change the allocation macros to be more like function calls - Change sizeof(type) -> sizeof(*variable) - Use macros for the long buffer length allocations - Remove "bit polishing" memsets() -- do them only once - Remove unnecessary casts
Thanks to oster@ for finding bugs and testing.
|
1.8 |
| 05-Feb-2019 |
christos | - Redo all the ioctl compat stuff to use a standard "ioctl" interface, and provide methods to the private softc - Provide a function for constructing a RF_Raid_t from an RF_Config_t - Factor out the big inline ioctl code into functions
|
1.7 |
| 03-Feb-2019 |
pgoyette | Don't include the raidframe compat code in the main raid module, the compat code lives in their own compat_raid_xx modules, which will now be autoloaded if needed.
While here, extract the compat_netbsd32_raid code into its own module, too.
Welcome to 8.99.34
|
1.6 |
| 31-Jan-2019 |
christos | Prevent integer overflow: ioctl commands are u_long. For consistency move prototype to the _mod.h header.
XXX: Why are the compat files here? Shouldn't they be in compat/common? Or because this could be a separate module, they belong with it?
|
1.5 |
| 29-Jan-2019 |
pgoyette | Normalize all the compat hooks' names to the form
<subsystem>_<function>_<version>_hook
NFCI
XXX Note that although this introduces a change in the kernel-to- XXX module interface, we are NOT bumping the kernel version number. XXX We will bump the version number once the interface stabilizes.
|
1.4 |
| 27-Jan-2019 |
pgoyette | Merge the [pgoyette-compat] branch
|
1.3 |
| 18-Jan-2018 |
mrg | branches: 1.3.2; 1.3.4; implement 32-bit compat support for raidframe.
convert several raidframe ioctls to be bitsize idempotent so that they work the same in 32 and 64 bit worlds, allowing netbsd32 to configure and query raid properly. remove useless 'row' in a few places. add COMPAT_80 and put the old ioctls there.
raidframeio.h: RAIDFRAME_TEST_ACC - remove, unused RAIDFRAME_GET_COMPONENT_LABEL - convert to label not pointer to label RAIDFRAME_CHECK_RECON_STATUS_EXT RAIDFRAME_CHECK_PARITYREWRITE_STATUS_EXT RAIDFRAME_CHECK_COPYBACK_STATUS_EXT - convert to progress info not pointer to info RAIDFRAME_GET_INFO - version entirely. raidframevar.h: - rf_recon_req{} has row, flags and raidPtr removed (they're not a useful part of this interface.) - RF_Config_s{} and RF_DeviceConfig_s{} have numRow/rows removed. - RF_RaidDisk_s{} is re-ordered slightly to fix alignment padding - the actual data was already OK. - InstallSpareTable() loses row argument
rf_compat32.c has code for RF_Config_s{} in 32 bit mode, used by RAIDFRAME_CONFIGURE and RAIDFRAME_GET_INFO32.
rf_compat80.c has code for rf_recon_req{}, RF_RaidDisk_s{} and RF_DeviceConfig_s{} to handle RAIDFRAME_FAIL_DISK, RAIDFRAME_GET_COMPONENT_LABEL, RAIDFRAME_CHECK_RECON_STATUS_EXT, RAIDFRAME_CHECK_PARITYREWRITE_STATUS_EXT, RAIDFRAME_CHECK_COPYBACK_STATUS_EXT, RAIDFRAME_GET_INFO.
move several of the per-ioctl code blocks into separate functions.
add rf_recon_req_internal{} to replace old usage of global rf_recon_req{} that had unused void * in the structure, ruining it's 32/64 bit ABI.
add missing case for RAIDFRAME_GET_INFO50.
adjust raid tests to use the new .conf format, and add a case to test the old method as well.
raidctl: deal with lack of 'row' members in a couple of places. fail request no longer takes row. handle "START array" sections with just "numCol numSpare", ie no "numRow" specified. for now, generate old-style configuration but update raidctl.8 to specify the new style (keeping reference to the old style.)
note that: RF_ComponentLabel_s::{row,num_rows} and RF_SingleComponent_s::row are obsolete but not removed yet.
|
1.2 |
| 02-May-2009 |
oster | branches: 1.2.2; Fix assignment of SUsPerPU and add SUsPerRU assignment. Reported by and fix from Anthony Mallet in PR#41328. Thanks!
|
1.1 |
| 18-Jan-2009 |
christos | branches: 1.1.2; 1.1.4; add compat50 ioctls.
|
1.1.4.1 |
| 13-May-2009 |
jym | Sync with HEAD.
Commit is split, to avoid a "too many arguments" protocol error.
|
1.1.2.2 |
| 19-Jan-2009 |
skrll | Sync with HEAD.
|
1.1.2.1 |
| 18-Jan-2009 |
skrll | file rf_compat50.c was added on branch nick-hppapmap on 2009-01-19 13:19:02 +0000
|
1.2.2.2 |
| 04-May-2009 |
yamt | sync with head.
|
1.2.2.1 |
| 02-May-2009 |
yamt | file rf_compat50.c was added on branch yamt-nfs-mp on 2009-05-04 08:13:16 +0000
|
1.3.4.3 |
| 13-Apr-2020 |
martin | Mostly merge changes from HEAD upto 20200411
|
1.3.4.2 |
| 08-Apr-2020 |
martin | Merge changes from current as of 20200406
|
1.3.4.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|
1.3.2.9 |
| 24-Jan-2019 |
pgoyette | The raidframe compat code lives in sys/dev/raidframe/ so move all the module stuff there. Update the Makefiles appropriately.
|
1.3.2.8 |
| 23-Jan-2019 |
pgoyette | Ooops, missed a semicolon - add it back
|
1.3.2.7 |
| 23-Jan-2019 |
pgoyette | Convert the macros for setting and unsetting a hook to generate in-line code rather than using an intermediary hook##set routine. Hooks are set and unset only in one place, so the intermediary routine provides no benefit. IMHO using the macro at the point- of-call is more readable than using it elsewhere in the code and then calling the generated intermediary routine (for which you won't even find its declaration or definition unless you remember to search for the HOOK_SET macro instead).
NFC intended, will verify with a bulk build and an atf test run.
|
1.3.2.6 |
| 23-Sep-2018 |
pgoyette | Fix some thinkos/pastos/typos
|
1.3.2.5 |
| 23-Sep-2018 |
pgoyette | Split the compat_crypto_50 from the rest of the crypto module
Cleanup some stuff left over from similar changes to raid modules.
|
1.3.2.4 |
| 18-Sep-2018 |
pgoyette | The COMPAT_HOOK macros were renamed to MODULE_HOOK, adjust all callers
|
1.3.2.3 |
| 17-Sep-2018 |
pgoyette | Adapt (most of) the indirect function pointers to the new MP-safe mechanism. Still remaining are the compat_netbsd32 stuff, and some usb subroutines.
|
1.3.2.2 |
| 24-Mar-2018 |
pgoyette | Finish clean-up of raidframe compat_50
|
1.3.2.1 |
| 24-Mar-2018 |
pgoyette | Separate the compat_50 and compat_80 dispatching code from the main body of raidframe, and place into the appropriate compat modules.
Enable building of the compat_80 module.
|
1.10.4.1 |
| 18-Dec-2019 |
martin | Pull up following revision(s) (requested by tsutsui in ticket #570):
sys/compat/netbsd32/netbsd32_compat_50_sysv.c: revision 1.3 sys/dev/raidframe/rf_compat50.h: revision 1.6 sys/arch/emips/emips/bus_space.c: revision 1.3 sys/compat/net/if.h: revision 1.5 sys/arch/emips/stand/common/bootinfo.c: revision 1.2 sys/compat/common/sysv_msg_50.c: revision 1.5 sys/compat/common/kern_time_30.c: revision 1.8 sys/arch/emips/stand/common/bootinfo.h: revision 1.2 sys/arch/ia64/include/bus.h: revision 1.4 sys/arch/ia64/ia64/bus_space.c: revision 1.2 sys/compat/common/sysv_shm_50.c: revision 1.5 sys/dev/ic/adw.h: revision 1.15 sys/compat/common/uipc_syscalls_50.c: revision 1.10 sys/arch/emips/ebus/flash_ebus.c: revision 1.22 sys/dev/ic/adv.h: revision 1.15 sys/dev/ic/adwmcode.c: revision 1.18 sys/dev/ic/advlib.c: revision 1.29 sys/arch/hpcarm/include/kloader.h: revision 1.3 sys/dev/usb/uberry.c: revision 1.16 sys/compat/common/sysv_sem_50.c: revision 1.5 sys/compat/netbsd32/netbsd32_compat_50.c: revision 1.43 sys/dev/ic/advlib.h: revision 1.21 sys/dev/ic/adv.c: revision 1.50 sys/compat/netinet6/in6_var.h: revision 1.5 sys/arch/hpc/stand/hpcboot/arm/arm_sa1100_asm.asm: revision 1.2 sys/arch/emips/include/loadfile_machdep.h: revision 1.3 sys/arch/emips/stand/common/prom_iface.c: revision 1.7 sys/dev/ic/adw.c: revision 1.56 sys/dev/ic/adwmcode.h: revision 1.12 sys/dev/ic/advmcode.c: revision 1.10 sys/arch/emips/ebus/ace_ebus.c: revision 1.22 sys/compat/netbsd32/netbsd32_compat_60.c: revision 1.5 sys/dev/raidframe/rf_compat50.c: revision 1.13 sys/arch/x68k/dev/intiovar.h: revision 1.15 sys/dev/usb/uipad.c: revision 1.8 sys/arch/zaurus/include/kloader.h: revision 1.3 sys/arch/emips/stand/common/bootxx.c: revision 1.2 sys/dev/ic/adwlib.h: revision 1.23 sys/dev/ic/adwlib.c: revision 1.44 sys/compat/netbsd32/netbsd32_compat_16.c: revision 1.3 sys/arch/amigappc/include/intr.h: revision 1.27 sys/arch/x68k/dev/mfp.c: revision 1.27 sys/arch/arm/at91/at91dbgu.c: revision 1.17 sys/dev/ic/advmcode.h: revision 1.7 sys/compat/ultrix/ultrix_exec.h: revision 1.7 sys/compat/common/vfs_syscalls_50.c: revision 1.24 sys/arch/mips/cavium/octeon_dma.c: revision 1.3 sys/arch/hpc/stand/hpcboot/arm/arm_pxa2x0_asm.asm: revision 1.2
Remove clause 3 and 4 from TNF licenses. Ok'ed by martin@ in PR/54760.
Remove clause 3 and 4 leftovers from TNF licenses in more sources. Confirmed by martin@ in PR/54760.
|