1 2004-02-04 multipath-016
2 * add a GROUP_BY_SERIAL flag. This should be useful for
3 controlers that activate they spare paths on simple IO
4 submition with a penalty. The StorageWorks HW defaults to
5 this mode, even if the MULTIBUS mode is OK.
6 * remove unused sg_err.c
7 * big restructuring : split devinfo.c from main.c. Export :
8 * void basename (char *, char *);
9 * int get_serial (int, char *);
10 * int get_lun_strings (char *, char *, char *, char *);
11 * int get_evpd_wwid(char *, char *);
12 * long get_disk_size (char *);
13 * stop passing struct env as param
14 * add devmap_name proggy for udev to name devmaps as per their
15 internal DM name and not only by their sysfs enum name (dm-*)
16 The corresponding udev.rules line is :
17 KERNEL="dm-[0-9]*", PROGRAM="/sbin/devmap_name %M %m", NAME="%k", SYMLINK="%c"
18 * remove make_dm_node fn & call. Rely on udev for this.
19 * don't rely on the linux symlink in the udev/klibc dir since
20 udev build doesn't use it anymore. This corrects build breakage
21 2004-01-19 multipath-013
22 * update the DM target synthax to the 2.6.0-udm5 style
23 2003-12-29 multipath-012
24 * check hotplug event refers to a block device; if not exit early
26 * add the uninstall target in Makefile
27 2003-12-22 multipath-010
28 * tweak the install target in Makefile
29 * stop passing fds as argument : this change enable a strict
30 segregation of ugly 2.4 code
31 * sysfs version of get_lun_strings()
32 * be careful about the return of get_unique_id() since errors
33 formerly caught up by if(open()) in the caller fn are now returned
35 * send get_serial() in unused.c
36 * introduce dm-simplecmd for RESUME & SUSPEND requests
37 * split add_map() in setup_map() & dm-addmap()
38 * setup_map() correctly submits "SUSPEND-RELOAD-RESUME or CREATE"
39 sequences instead of the bogus "RELOAD or CREATE"
40 * don't print .sg_dev if equal to .dev (2.6) in print_path()
41 * since the kernel code handles defective paths, remove all
42 code to cope with them :
43 * move do_tur() to unused.c
44 * remove .state from path struct
45 * remove .state settings & conditionals
46 * add a cmdline switch to force maps to failover mode,
47 ie 1 path per priority group
48 * add default policies to the whitelist array (spread io ==
49 MULTIBUS / io forced to 1 path == FAILOVER)
50 * move get_disk_size() call out of add_map() to coalesce()
51 * comment tricky coalesce() fn
52 * bogus unsused.c file renamed to unused.c
53 2003-12-20 multipath-010
54 * big ChangeLog update
55 * start to give a little control over target params :
56 introduce cmdline arg -i to control polling interval
57 * cope with hotplug-style calling convention :
58 ie "multipath scsi $DEVPATH" ... to avoid messing with
59 online maps not concerned by an event
60 * example hotplug agent to drop in /etc/hotplug.d/scsi
61 * revert the run & resched patch : unless someone proves me
62 wrong, this was overdesigned
63 * move commented out functions in unused.c
64 * update multipath target params to "udm[23] style"
65 * mp target now supports nr_path == 1, so do we
66 * add gratuitous free()
67 * push version forward
68 2003-12-15 multipath-009
69 * Make the HW-specific get_unique_id switch pretty
70 * Prepare to field-test by whitelisting all known fibre array,
71 try to fetch WWID from the standard EVPD 0x83 off 8 for everyone
72 * configure the multipath target with round-robin path selector and
73 conservative default for a start (udm1 style) :
74 yes it makes this release the firstreally useful one.
75 * temporarily disable map creation for single path device
76 due to current restrictive defaults in the kernel target.
77 Sistina should work it out.
78 * correct the strncmp logic in blacklist function.
79 * update the Makefiles to autodetect libgcc.a & gcc includes
80 "ulibc-style". Factorisation of udevdirs & others niceties
81 * drop a hint about absent /dev/sd? on failed open()
82 * implement a reschedule flag in /var/run.
83 Last thing the prog do before exit is check if a call to multipath
84 was done (but canceled by /var/run/multipath.run check) during its
85 execution. If so restart themain loop.
86 * implement a blacklist of sysfs bdev to not bother with for now
87 (hd,md, dm, sr, scd, ram, raw).
88 This avoid sending SG_IO to unappropiate devices.
89 * Adds a /var/run/multipath.run handling to avoid simultaneous runs.
90 * Remove a commented-out "printf"
91 * drop a libdevmapper copy in extras/multipath;
92 maybe discussions w/Sistina folks will bring a better solution in the future.
93 * drop a putchar usage in libdevmapper to compile cleanly with klibc
94 * drop another such usage of my own in main.c
95 * massage the Makefile to compile libdevmapper against klibc
96 * use "ld" to produce the binary rather than "gcc -static"
97 * stop being stupid w/ uneeded major, minor & dev in main.c:dm_mk_node()
98 * reverse to creating striped target for now because the multipath target
99 is more hairy than expected initialy
100 * push the version code to 009 to be in synch w/ udev
101 2003-11-27 multipath-007
102 * removes sg_err.[ch] deps
103 * makes sure the core code play nice with klibc
104 * port the sysfs calls to dlist helpers
105 * links against udev's sysfs (need libsysfs.a & dlist.a)
106 * finally define DM_TARGET as "multipath" as Joe posted the code today (not tested yet)
107 * push version forward (do you want it in sync with udev version?)
109 * merged in udev-006 tree
110 2003-09-18 Christophe Varoqui <christophe.varoqui@free.fr>
111 * multipath 0.0.1 released.