1 diff -Naur linux-2002-03-06/Documentation/Configure.help evms-2002-03-06/Documentation/Configure.help
2 --- linux-2002-03-06/Documentation/Configure.help Wed Mar 6 09:29:44 2002
3 +++ evms-2002-03-06/Documentation/Configure.help Tue Feb 26 07:35:50 2002
4 @@ -1671,6 +1671,196 @@
5 called on26.o. You must also have a high-level driver for the type
6 of device that you want to support.
10 + EVMS runtime driver. This is a plugin-based framework for volume
11 + management, and combines support for partitioning, software RAID,
12 + LVM, and more into a single interface.
14 + User-space tools are required to perform administration of EVMS logical
15 + volumes. Please visit <http://www.sourceforge.net/projects/evms> for
16 + more details on downloading and installing these tools.
18 + This driver is also available as a pair of modules called evms.o and
19 + evms_passthru.o ( = code which can be inserted and removed from the
20 + running kernel whenever you want). If you want to compile it as a module,
21 + say M here and read <file:Documentation/modules.txt>.
23 +EVMS Local Device Manager Plugin
24 +CONFIG_EVMS_LOCAL_DEV_MGR_PLUGIN
25 + Support for local IDE and SCSI devices. This plugin is required if EVMS
26 + support is selected.
28 + This plugin is also available as a kernel module called ldev_mgr.o.
30 +EVMS DOS Partition Manager Plugin
31 +CONFIG_EVMS_DOS_PARTITION_PLUGIN
32 + Support for recognizing all partitions using the ever-popular DOS
33 + partitioning scheme (MBRs & EBRs). 99% of the time you will need
34 + this plugin to do anything useful with EVMS.
36 + This plugin also contains support for recognizing BSD disklabels,
37 + UNIXWARE partitions, Solaris-X86 partitions, and OS/2 DLAT entries.
39 + This plugin is also available as a kernel module called dos_part.o.
41 +EVMS GPT Partition Manager Plugin
42 +CONFIG_EVMS_GPT_PARTITION_PLUGIN
43 + Support for recognizing all partitions using the new EFI GUID partitioning
44 + scheme that is used by IA-64 machines. You should only need to enable this
45 + plugin if you are running Linux on an IA-64 machine. All other architectures
48 + This plugin is also available as a kernel module called gpt_part.o
50 +EVMS S/390 Partition Manager Plugin
51 +CONFIG_EVMS_S390_PART_PLUGIN
52 + Support for recognizing all partitions created on S/390 machines. This
53 + plugin recognizes CDL, LDL, and CMS partition formats. You should only need
54 + to enable this plugin if you are running Linux on an S/390. All other
55 + architectures can say 'N' here.
57 + This plugin is also available as a kernel module called s390_part.o
59 +EVMS SnapShot Feature Plugin
60 +CONFIG_EVMS_SNAPSHOT_PLUGIN
61 + This feature plugin lets you create a snapshot of any volume
62 + under EVMS control using any other device under under EVMS
63 + control as the target for the snapshot volume.
65 + This plugin is also available as a kernel module called snapshot.o.
67 +EVMS DriveLink Feature Plugin
68 +CONFIG_EVMS_DRIVELINK_PLUGIN
69 + This feature plugin lets you combine multiple devices into a
70 + single virtual block device. The size of the virtual block
71 + device is approximately equal to the sum of all its components.
72 + It currently supports combining up to 60 devices (partitions,
73 + disks, or logical volumes).
75 + This plugin is also available as a kernel module called evms_drivelink.o.
77 +EVMS Bad Block Relocation (BBR) Feature
78 +CONFIG_EVMS_BBR_PLUGIN
79 + BBR is designed to remap I/O write failures to another safe
80 + location on disk. Note that most disk drives have BBR built
81 + into them, so software BBR will only be activated when all
82 + hardware BBR replacement sectors have been used.
84 + This plugin is also available as a kernel module called evms_bbr.o.
86 +EVMS Linux LVM Plugin
87 +CONFIG_EVMS_LVM_PLUGIN
88 + The LVM plugin is responsible for providing compatibility with the Linux
89 + LVM. This plugin recognizes disks and partitions that are LVM physical
90 + volumes (PVs), and assembles the appropriate volume groups (VGs). LVM
91 + logical volumes (LVs) are exported as EVMS volumes with full read/write
92 + support. In addition, support for striped and snapshotted volumes is
93 + included. The corresponding EVMS Engine plugin must also be installed in
94 + order to perform any administration of LVM VGs and LVs.
96 + This plugin is also available as a kernel module called lvm_vge.o.
99 +CONFIG_EVMS_MD_PLUGIN
100 + The MD plugin is responsible for providing compatibility with the Linux
101 + Software RAID driver (MD). It allows several devices to be combined into
102 + one logical device. This can be used to simply append one disk or
103 + partition to another, or to combine several redundant disks into a
104 + RAID 1/4/5 device so as to provide protection against hard disk failures.
106 + This plugin is also available as a kernel module called md_core.o.
108 +EVMS MD RAID-Linear Plugin
109 +CONFIG_EVMS_MD_LINEAR_PERS
110 + The RAID-Linear personality combines disks and/or partitions simply by
111 + appending one to the other.
113 + This plugin is also available as a kernel module called md_linear.o.
115 +EVMS MD RAID-0 Plugin
116 +CONFIG_EVMS_MD_RAID0_PERS
117 + The RAID-0 personality combines disks and/or partitions into one
118 + logical device using striping. This method writes data evenly across
119 + all members in the device in order to increase the throughput rate if
120 + each member resides on a distinct disk.
122 + This plugin is also available as a kernel module called md_raid0.o.
124 +EVMS MD RAID-1 Plugin
125 +CONFIG_EVMS_MD_RAID1_PERS
126 + The RAID-1 personality implements mirroring, in which a logical device
127 + consists of several disks that are exact copies of each other. In the
128 + event of a mirror failure, the RAID-1 personality will continue to use
129 + the remaining mirrors in the set, providing an error free device to the
130 + higher levels of the kernel. In a set with N drives, the available space
131 + is the capacity of a single drive, and the set protects against the
132 + failure of N-1 drives.
134 + This plugin is also available as a kernel module called md_raid1.o.
136 +EVMS MD RAID-4/RAID-5 Plugin
137 +CONFIG_EVMS_MD_RAID5_PERS
138 + A RAID-5 set of N drives with a capacity of C MB per drive provides
139 + the capacity of C * (N-1) MB, and protects against a failure of a
140 + single drive. For a given sector (row) number, (N-1) drives contain
141 + data sectors, and one drive contains the parity protection. For a
142 + RAID-4 set, the parity blocks are present on a single drive, while
143 + a RAID-5 set distributes the parity across all drives in one of the
144 + available parity distribution methods.
146 + This plugin is also available as a kernel module called md_raid5.o.
149 +CONFIG_EVMS_AIX_PLUGIN
150 + The AIX LVM plugin is responsible for providing compatibility with the
151 + AIX LVM. This plugin recognizes disks and partitions that are AIX disks,
152 + and assembles the appropriate volume groups. AIX logical volumes are
153 + exported as EVMS volumes with full read/write support. In addition,
154 + support for striped volumes is included, and support for mirroring is
157 + You should only need to select this option if you are running on a PPC
158 + machine and want to access AIX LVM volumes. The user-space plugin for
159 + AIX will be available in the future.
161 + This plugin is also available as a kernel module called AIXlvm_vge.o.
163 +EVMS OS/2 LVM Plugin
164 +CONFIG_EVMS_OS2_PLUGIN
165 + Support for recognizing the type 0x35 partitions that later versions
166 + of OS/2 use in its Logical Volume Manager. Provides binary
167 + compatibility and includes Drive Linking and Bad Block Relocation
168 + emulation. The user-space plugin for OS/2 will be available in the future.
170 + This plugin is also available as a kernel module called os2lvm_vge.o.
172 +EVMS Clustering Plugin
173 +CONFIG_EVMS_ECR_PLUGIN
175 + The EVMS Clustering Plugin is still under design and development.
176 + Best to just say 'n' here.
178 + This plugin is available as a kernel module called evms_ecr.o.
181 +CONFIG_EVMS_INFO_CRITICAL
182 + Set the level for kernel messages from EVMS. Each level on the list
183 + produces message for that level and all levels above it. Thus, level
184 + "Critical" only logs the most critical messages (and thus the fewest),
185 + whereas level "Everything" produces more information that will probably
186 + ever be useful. Level "Default" is a good starting point. Level "Debug"
187 + is good if you are having problems with EVMS and want more basic info
188 + on what's going on during the volume discovery process.
190 + EVMS also supports a boot-time kernel parameter to set the info level.
191 + To use this method, specify "evms_info_level=5" at boot time, or add the
192 + line "append = "evms_info_level=5"" to your lilo.conf file (replacing 5
193 + with your desired info level). See include/linux/evms/evms.h for the
194 + numerical definitions of the info levels. To use this boot-time parameter,
195 + the EVMS core driver must be statically built into the kernel (not as a
198 Logical Volume Manager (LVM) support
200 This driver lets you combine several hard disks, hard disk
201 diff -Naur linux-2002-03-06/MAINTAINERS evms-2002-03-06/MAINTAINERS
202 --- linux-2002-03-06/MAINTAINERS Wed Mar 6 09:29:44 2002
203 +++ evms-2002-03-06/MAINTAINERS Mon Mar 4 09:15:39 2002
205 W: http://opensource.creative.com/
208 +ENTERPRISE VOLUME MANAGEMENT SYSTEM (EVMS)
209 +P: Mark Peloquin, Steve Pratt, Kevin Corry
210 +M: peloquin@us.ibm.com, slpratt@us.ibm.com, corryk@us.ibm.com
211 +L: evms-devel@lists.sourceforge.net
212 +W: http://www.sourceforge.net/projects/evms/
215 ETHEREXPRESS-16 NETWORK DRIVER
217 M: Philip.Blundell@pobox.com
218 diff -Naur linux-2002-03-06/Makefile evms-2002-03-06/Makefile
219 --- linux-2002-03-06/Makefile Wed Mar 6 09:29:44 2002
220 +++ evms-2002-03-06/Makefile Tue Feb 26 07:34:46 2002
222 DRIVERS-$(CONFIG_MD) += drivers/md/mddev.o
223 DRIVERS-$(CONFIG_BLUEZ) += drivers/bluetooth/bluetooth.o
224 DRIVERS-$(CONFIG_HOTPLUG_PCI) += drivers/hotplug/vmlinux-obj.o
225 +DRIVERS-$(CONFIG_EVMS) += drivers/evms/evmsdrvr.o
227 DRIVERS := $(DRIVERS-y)
229 diff -Naur linux-2002-03-06/arch/i386/config.in evms-2002-03-06/arch/i386/config.in
230 --- linux-2002-03-06/arch/i386/config.in Wed Mar 6 09:29:44 2002
231 +++ evms-2002-03-06/arch/i386/config.in Tue Feb 26 07:35:06 2002
234 source drivers/block/Config.in
236 +source drivers/evms/Config.in
238 source drivers/md/Config.in
240 if [ "$CONFIG_NET" = "y" ]; then
241 diff -Naur linux-2002-03-06/arch/ia64/config.in evms-2002-03-06/arch/ia64/config.in
242 --- linux-2002-03-06/arch/ia64/config.in Wed Mar 6 09:29:44 2002
243 +++ evms-2002-03-06/arch/ia64/config.in Wed Mar 6 09:28:30 2002
245 source drivers/pnp/Config.in
246 source drivers/block/Config.in
247 source drivers/message/i2o/Config.in
248 +source drivers/evms/Config.in
249 source drivers/md/Config.in
251 mainmenu_option next_comment
252 diff -Naur linux-2002-03-06/arch/ppc/config.in evms-2002-03-06/arch/ppc/config.in
253 --- linux-2002-03-06/arch/ppc/config.in Wed Mar 6 09:29:44 2002
254 +++ evms-2002-03-06/arch/ppc/config.in Tue Feb 26 07:35:25 2002
256 source drivers/mtd/Config.in
257 source drivers/pnp/Config.in
258 source drivers/block/Config.in
259 +source drivers/evms/Config.in
260 source drivers/md/Config.in
262 if [ "$CONFIG_NET" = "y" ]; then
263 diff -Naur linux-2002-03-06/arch/parisc/config.in evms-2002-03-06/arch/parisc/config.in
264 --- linux-2002-03-06/arch/parisc/config.in Wed Mar 6 09:29:44 2002
265 +++ evms-2002-03-06/arch/parisc/config.in Wed Mar 6 09:27:06 2002
268 source drivers/block/Config.in
270 +source drivers/evms/Config.in
272 if [ "$CONFIG_NET" = "y" ]; then
275 diff -Naur linux-2002-03-06/arch/s390/config.in evms-2002-03-06/arch/s390/config.in
276 --- linux-2002-03-06/arch/s390/config.in Wed Mar 6 09:29:44 2002
277 +++ evms-2002-03-06/arch/s390/config.in Wed Mar 6 07:47:50 2002
280 source drivers/s390/Config.in
282 +source drivers/evms/Config.in
284 if [ "$CONFIG_NET" = "y" ]; then
287 diff -Naur linux-2002-03-06/arch/s390x/config.in evms-2002-03-06/arch/s390x/config.in
288 --- linux-2002-03-06/arch/s390x/config.in Wed Mar 6 09:29:44 2002
289 +++ evms-2002-03-06/arch/s390x/config.in Wed Mar 6 09:27:06 2002
292 source drivers/s390/Config.in
294 +source drivers/evms/Config.in
296 if [ "$CONFIG_NET" = "y" ]; then
299 diff -Naur linux-2002-03-06/drivers/Makefile evms-2002-03-06/drivers/Makefile
300 --- linux-2002-03-06/drivers/Makefile Wed Mar 6 09:29:44 2002
301 +++ evms-2002-03-06/drivers/Makefile Tue Feb 26 07:36:13 2002
304 mod-subdirs := dio mtd sbus video macintosh usb input telephony sgi ide \
305 message/i2o message/fusion scsi md ieee1394 pnp isdn atm \
306 - fc4 net/hamradio i2c acpi bluetooth
307 + fc4 net/hamradio i2c acpi bluetooth evms
309 subdir-y := parport char block net sound misc media cdrom hotplug
310 subdir-m := $(subdir-y)
312 subdir-$(CONFIG_ACPI) += acpi
314 subdir-$(CONFIG_BLUEZ) += bluetooth
315 +subdir-$(CONFIG_EVMS) += evms
317 include $(TOPDIR)/Rules.make
318 diff -Naur linux-2002-03-06/drivers/block/genhd.c evms-2002-03-06/drivers/block/genhd.c
319 --- linux-2002-03-06/drivers/block/genhd.c Wed Mar 6 09:29:44 2002
320 +++ evms-2002-03-06/drivers/block/genhd.c Tue Feb 26 07:36:28 2002
322 EXPORT_SYMBOL(get_gendisk);
326 + * walk_gendisk - issue a command for every registered gendisk
327 + * @walk: user-specified callback
328 + * @data: opaque data for the callback
330 + * This function walks through the gendisk chain and calls back
331 + * into @walk for every element.
334 +walk_gendisk(int (*walk)(struct gendisk *, void *), void *data)
336 + struct gendisk *gp;
339 + read_lock(&gendisk_lock);
340 + for (gp = gendisk_head; gp; gp = gp->next)
341 + if ((error = walk(gp, data)))
343 + read_unlock(&gendisk_lock);
348 +EXPORT_SYMBOL(walk_gendisk);
351 #ifdef CONFIG_PROC_FS
353 get_partition_list(char *page, char **start, off_t offset, int count)
354 diff -Naur linux-2002-03-06/include/linux/genhd.h evms-2002-03-06/include/linux/genhd.h
355 --- linux-2002-03-06/include/linux/genhd.h Wed Mar 6 09:29:44 2002
356 +++ evms-2002-03-06/include/linux/genhd.h Tue Feb 26 07:36:57 2002
358 extern void add_gendisk(struct gendisk *gp);
359 extern void del_gendisk(struct gendisk *gp);
360 extern struct gendisk *get_gendisk(kdev_t dev);
361 +extern int walk_gendisk(int (*walk)(struct gendisk *, void *), void *);
363 #endif /* __KERNEL__ */
365 diff -Naur linux-2002-03-06/include/linux/sysctl.h evms-2002-03-06/include/linux/sysctl.h
366 --- linux-2002-03-06/include/linux/sysctl.h Wed Mar 6 09:29:44 2002
367 +++ evms-2002-03-06/include/linux/sysctl.h Tue Feb 26 07:36:57 2002
377 /* /proc/sys/dev/cdrom */
379 /* /proc/sys/dev/parport */
381 DEV_PARPORT_DEFAULT=-3
384 +/* /proc/sys/dev/evms */
386 + DEV_EVMS_INFO_LEVEL=1,
390 +/* /proc/sys/dev/evms/raid */
392 + DEV_EVMS_MD_SPEED_LIMIT_MIN=1,
393 + DEV_EVMS_MD_SPEED_LIMIT_MAX=2
396 /* /proc/sys/dev/raid */
397 diff -Naur linux-2002-03-06/init/main.c evms-2002-03-06/init/main.c
398 --- linux-2002-03-06/init/main.c Wed Mar 6 09:29:44 2002
399 +++ evms-2002-03-06/init/main.c Tue Feb 26 07:37:19 2002
403 { "mtdblock", 0x1f00 },
404 + { "evms", 0x3f00 },
408 diff -Naur linux-2002-03-06/kernel/ksyms.c evms-2002-03-06/kernel/ksyms.c
409 --- linux-2002-03-06/kernel/ksyms.c Wed Mar 6 09:29:44 2002
410 +++ evms-2002-03-06/kernel/ksyms.c Tue Mar 5 14:53:51 2002
412 EXPORT_SYMBOL(refile_buffer);
413 EXPORT_SYMBOL(max_sectors);
414 EXPORT_SYMBOL(max_readahead);
415 +EXPORT_SYMBOL(is_swap_partition);
416 +EXPORT_SYMBOL(root_device_name);
419 EXPORT_SYMBOL(tty_hangup);