platform/kernel/linux-starfive.git
11 years agostaging: comedi: poc: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:55:27 +0000 (18:55 -0700)]
staging: comedi: poc: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: pcmuio: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:55:08 +0000 (18:55 -0700)]
staging: comedi: pcmuio: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: pcmmio: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:54:46 +0000 (18:54 -0700)]
staging: comedi: pcmmio: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: pcmda12: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:54:19 +0000 (18:54 -0700)]
staging: comedi: pcmda12: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: pcmad: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:54:00 +0000 (18:54 -0700)]
staging: comedi: pcmad: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: pcm3730: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:53:42 +0000 (18:53 -0700)]
staging: comedi: pcm3730: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: pcm3724: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:53:24 +0000 (18:53 -0700)]
staging: comedi: pcm3724: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: pcl818: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:53:07 +0000 (18:53 -0700)]
staging: comedi: pcl818: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: pcl816: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:52:49 +0000 (18:52 -0700)]
staging: comedi: pcl816: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: pcl812: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:52:32 +0000 (18:52 -0700)]
staging: comedi: pcl812: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: pcl730: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:52:13 +0000 (18:52 -0700)]
staging: comedi: pcl730: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: pcl726: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:51:55 +0000 (18:51 -0700)]
staging: comedi: pcl726: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: pcl725: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:51:38 +0000 (18:51 -0700)]
staging: comedi: pcl725: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: pcl724: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:51:20 +0000 (18:51 -0700)]
staging: comedi: pcl724: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: pcl711: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:51:01 +0000 (18:51 -0700)]
staging: comedi: pcl711: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: ni_pcidio: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:50:39 +0000 (18:50 -0700)]
staging: comedi: ni_pcidio: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: ni_mio_common: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:50:19 +0000 (18:50 -0700)]
staging: comedi: ni_mio_common: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: ni_labpc: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:49:58 +0000 (18:49 -0700)]
staging: comedi: ni_labpc: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: ni_daq_dio24: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:49:34 +0000 (18:49 -0700)]
staging: comedi: ni_daq_dio24: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: ni_daq_700: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:49:16 +0000 (18:49 -0700)]
staging: comedi: ni_daq_700: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: ni_atmio16d: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:48:58 +0000 (18:48 -0700)]
staging: comedi: ni_atmio16d: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: ni_at_ao: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:48:38 +0000 (18:48 -0700)]
staging: comedi: ni_at_ao: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: ni_at_a2150: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:48:20 +0000 (18:48 -0700)]
staging: comedi: ni_at_a2150: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: ni_670x: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:48:03 +0000 (18:48 -0700)]
staging: comedi: ni_670x: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: ni_660x: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:47:44 +0000 (18:47 -0700)]
staging: comedi: ni_660x: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: ni_65xx: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:47:24 +0000 (18:47 -0700)]
staging: comedi: ni_65xx: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: ni_6527: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:47:06 +0000 (18:47 -0700)]
staging: comedi: ni_6527: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: multiq3: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:46:47 +0000 (18:46 -0700)]
staging: comedi: multiq3: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: mpc8260cpm: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:46:26 +0000 (18:46 -0700)]
staging: comedi: mpc8260cpm: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: mpc624: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:46:07 +0000 (18:46 -0700)]
staging: comedi: mpc624: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: me_daq: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:45:45 +0000 (18:45 -0700)]
staging: comedi: me_daq: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: me_daq: rename 'subdevice' variable to 's'
H Hartley Sweeten [Thu, 6 Sep 2012 01:45:26 +0000 (18:45 -0700)]
staging: comedi: me_daq: rename 'subdevice' variable to 's'

Rename the variable used for the comedi_subdevice pointer from
'subdevice' to 's'. This is more typical in other comedi drivers
and helps when searching with grep.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: me4000: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:45:05 +0000 (18:45 -0700)]
staging: comedi: me4000: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: ke_counter: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:44:44 +0000 (18:44 -0700)]
staging: comedi: ke_counter: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: ke_counter: rename 'subdevice' variable to 's'
H Hartley Sweeten [Thu, 6 Sep 2012 01:44:26 +0000 (18:44 -0700)]
staging: comedi: ke_counter: rename 'subdevice' variable to 's'

Rename the variable used for the comedi_subdevice pointer from
'subdevice' to 's'. This is more typical in other comedi drivers
and helps when searching with grep.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: ii_pci20kc: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:44:06 +0000 (18:44 -0700)]
staging: comedi: ii_pci20kc: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: icp_multi: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:43:46 +0000 (18:43 -0700)]
staging: comedi: icp_multi: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: gsc_hpdi: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:43:20 +0000 (18:43 -0700)]
staging: comedi: gsc_hpdi: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: fl512: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:42:42 +0000 (18:42 -0700)]
staging: comedi: fl512: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: dyna_pci10xx: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:42:24 +0000 (18:42 -0700)]
staging: comedi: dyna_pci10xx: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: dt9812: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:42:02 +0000 (18:42 -0700)]
staging: comedi: dt9812: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: dt3000: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:41:29 +0000 (18:41 -0700)]
staging: comedi: dt3000: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: dt282x: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:41:08 +0000 (18:41 -0700)]
staging: comedi: dt282x: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: dt2817: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:40:49 +0000 (18:40 -0700)]
staging: comedi: dt2817: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: dt2815: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:40:29 +0000 (18:40 -0700)]
staging: comedi: dt2815: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: dt2814: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:40:09 +0000 (18:40 -0700)]
staging: comedi: dt2814: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: dt2811: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:39:51 +0000 (18:39 -0700)]
staging: comedi: dt2811: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: dt2801: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:39:32 +0000 (18:39 -0700)]
staging: comedi: dt2801: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: dt2801: fix access to 2nd dio subdevice
H Hartley Sweeten [Thu, 6 Sep 2012 01:39:13 +0000 (18:39 -0700)]
staging: comedi: dt2801: fix access to 2nd dio subdevice

Only 4 subdevices are allocated by this driver. The 2nd dio
subdevice is 'dev->subdevice + 3' not '... + 4'.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: dmm32at: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:38:49 +0000 (18:38 -0700)]
staging: comedi: dmm32at: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: das800: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:38:30 +0000 (18:38 -0700)]
staging: comedi: das800: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: das800: 'dev->subdevices + 0' is already known
H Hartley Sweeten [Thu, 6 Sep 2012 01:38:11 +0000 (18:38 -0700)]
staging: comedi: das800: 'dev->subdevices + 0' is already known

There is no need to calculate the subdevice for the call to
das800_cancel. The variable 's' in this function is set to the
'dev->read_subdev' which is the same as 'dev->subdevices + 0'.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: das6402: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:36:41 +0000 (18:36 -0700)]
staging: comedi: das6402: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: das1800: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:36:21 +0000 (18:36 -0700)]
staging: comedi: das1800: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: das16m1: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:36:03 +0000 (18:36 -0700)]
staging: comedi: das16m1: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: das16: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:35:45 +0000 (18:35 -0700)]
staging: comedi: das16: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: das08: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:35:24 +0000 (18:35 -0700)]
staging: comedi: das08: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: daqboard2000: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:34:59 +0000 (18:34 -0700)]
staging: comedi: daqboard2000: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: contec_pci_dio: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:34:37 +0000 (18:34 -0700)]
staging: comedi: contec_pci_dio: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: comedi_test: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:34:16 +0000 (18:34 -0700)]
staging: comedi: comedi_test: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: comedi_parport: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:33:57 +0000 (18:33 -0700)]
staging: comedi: comedi_parport: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: comedi_bond: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:33:38 +0000 (18:33 -0700)]
staging: comedi: comedi_bond: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: cb_pcimdda: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:33:19 +0000 (18:33 -0700)]
staging: comedi: cb_pcimdda: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: cb_pcimdas: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:33:00 +0000 (18:33 -0700)]
staging: comedi: cb_pcimdas: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: cb_pcidio: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:32:42 +0000 (18:32 -0700)]
staging: comedi: cb_pcidio: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: cb_pcidda: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:32:23 +0000 (18:32 -0700)]
staging: comedi: cb_pcidda: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: cb_pcidas64: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:32:04 +0000 (18:32 -0700)]
staging: comedi: cb_pcidas64: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: cb_pcidas: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:31:45 +0000 (18:31 -0700)]
staging: comedi: cb_pcidas: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: cb_das16_cs: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:31:27 +0000 (18:31 -0700)]
staging: comedi: cb_das16_cs: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: c6xdigio: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:31:08 +0000 (18:31 -0700)]
staging: comedi: c6xdigio: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: amplc_pci230: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:30:47 +0000 (18:30 -0700)]
staging: comedi: amplc_pci230: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: amplc_pci224: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:30:28 +0000 (18:30 -0700)]
staging: comedi: amplc_pci224: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: amplc_pc263: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:30:08 +0000 (18:30 -0700)]
staging: comedi: amplc_pc263: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: amplc_pc236: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:29:45 +0000 (18:29 -0700)]
staging: comedi: amplc_pc236: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: amplc_dio200: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:29:25 +0000 (18:29 -0700)]
staging: comedi: amplc_dio200: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Use a local variable for the subdevice pointer to keep the line
< 80 chars.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: aio_iiro_16: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:29:02 +0000 (18:29 -0700)]
staging: comedi: aio_iiro_16: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: aio_aio12_8: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:28:42 +0000 (18:28 -0700)]
staging: comedi: aio_aio12_8: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: adv_pci_dio: remove 'subdev' param from pci_dio_add_*()
H Hartley Sweeten [Thu, 6 Sep 2012 01:28:21 +0000 (18:28 -0700)]
staging: comedi: adv_pci_dio: remove 'subdev' param from pci_dio_add_*()

The subdevice index number is not used in the pci_dio_add_*()
functions. Just remove them.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: adv_pci_dio: clarify subdevice index in pci1760_attach()
H Hartley Sweeten [Thu, 6 Sep 2012 01:28:00 +0000 (18:28 -0700)]
staging: comedi: adv_pci_dio: clarify subdevice index in pci1760_attach()

The subdevice index numbers are fixed when attaching to a pci1710 card.
Remove the subdev variable and just open code the array index numbers.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: adv_pci_dio: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:27:36 +0000 (18:27 -0700)]
staging: comedi: adv_pci_dio: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: adv_pci1723: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:27:15 +0000 (18:27 -0700)]
staging: comedi: adv_pci1723: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: adv_pci1710: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:26:55 +0000 (18:26 -0700)]
staging: comedi: adv_pci1710: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: adq12b: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:26:36 +0000 (18:26 -0700)]
staging: comedi: adq12b: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: adl_pci9118: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:26:16 +0000 (18:26 -0700)]
staging: comedi: adl_pci9118: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: adl_pci9111: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:25:55 +0000 (18:25 -0700)]
staging: comedi: adl_pci9111: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: adl_pci9111: rename 'subdevice' variable to 's'
H Hartley Sweeten [Thu, 6 Sep 2012 01:25:33 +0000 (18:25 -0700)]
staging: comedi: adl_pci9111: rename 'subdevice' variable to 's'

Rename the variable used for the comedi_subdevice pointer from
'subdevice' to 's'. This is more typical in other comedi drivers
and helps when searching with grep.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: adl_pci8164: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:25:11 +0000 (18:25 -0700)]
staging: comedi: adl_pci8164: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: adl_pci7x3x: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:24:52 +0000 (18:24 -0700)]
staging: comedi: adl_pci7x3x: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: adl_pci7296: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:24:34 +0000 (18:24 -0700)]
staging: comedi: adl_pci7296: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: adl_pci6208: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:24:13 +0000 (18:24 -0700)]
staging: comedi: adl_pci6208: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: hwdrv_apci3200: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:23:53 +0000 (18:23 -0700)]
staging: comedi: hwdrv_apci3200: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: hwdrv_apci3120: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:23:32 +0000 (18:23 -0700)]
staging: comedi: hwdrv_apci3120: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: hwdrv_APCI1710: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:23:09 +0000 (18:23 -0700)]
staging: comedi: hwdrv_APCI1710: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: addi_common: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:22:47 +0000 (18:22 -0700)]
staging: comedi: addi_common: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: acl7225b: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:22:25 +0000 (18:22 -0700)]
staging: comedi: acl7225b: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: 8255: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:21:53 +0000 (18:21 -0700)]
staging: comedi: 8255: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: drivers: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:21:25 +0000 (18:21 -0700)]
staging: comedi: drivers: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: comedi_fops: remove subdevice pointer math
H Hartley Sweeten [Thu, 6 Sep 2012 01:20:58 +0000 (18:20 -0700)]
staging: comedi: comedi_fops: remove subdevice pointer math

Convert the comedi_subdevice access from pointer math to array
access.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: ramster: place ramster codebase on top of new zcache2 codebase
Dan Magenheimer [Wed, 5 Sep 2012 20:45:01 +0000 (13:45 -0700)]
staging: ramster: place ramster codebase on top of new zcache2 codebase

[V2: rebased to apply to 20120905 staging-next, no other changes]

This slightly modified ramster codebase is now built entirely on zcache2
and all ramster-specific code is fully contained in a subdirectory.

Ramster extends zcache2 to allow pages compressed via zcache2 to be
"load-balanced" across machines in a cluster.  Control and data communication
is done via kernel sockets, and cluster configuration and management is
heavily leveraged from the ocfs2 cluster filesystem.

There are no new features since the codebase introduced into staging at 3.4.
Some cleanup was performed though:
 1) Interfaces directly with new zbud
 2) Debugfs now used instead of sysfs where possible.  Sysfs still
    used where necessary for userland cluster configuration.

Ramster is very much a work-in-progress but also does really work!

RAMSTER HIGH LEVEL OVERVIEW (from original V5 posting in Feb 2012)

RAMster implements peer-to-peer transcendent memory, allowing a "cluster" of
kernels to dynamically pool their RAM so that a RAM-hungry workload on one
machine can temporarily and transparently utilize RAM on another machine which
is presumably idle or running a non-RAM-hungry workload.  Other than the
already-merged cleancache patchset and frontswap patchset, no core kernel
changes are currently required.

(Note that, unlike previous public descriptions of RAMster, this implementation
does NOT require synchronous "gets" or core networking changes. As of V5,
it also co-exists with ocfs2.)

RAMster combines a clustering and messaging foundation based on the ocfs2
cluster layer with the in-kernel compression implementation of zcache2, and
adds code to glue them together.  When a page is "put" to RAMster, it is
compressed and stored locally.  Periodically, a thread will "remotify" these
pages by sending them via messages to a remote machine.  When the page is
later needed as indicated by a page fault, a "get" is issued.  If the data
is local, it is uncompressed and the fault is resolved.  If the data is
remote, a message is sent to fetch the data and the faulting thread sleeps;
when the data arrives, the thread awakens, the data is decompressed and
the fault is resolved.

As of V5, clusters up to eight nodes are supported; each node can remotify
pages to one specified node, so clusters can be configured as clients to
a "memory server".  Some simple policy is in place that will need to be
refined over time.  Larger clusters and fault-resistant protocols can also
be added over time.

A HOW-TO is available at:
http://oss.oracle.com/projects/tmem/dist/files/RAMster/HOWTO-120817

Acked-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Signed-off-by: Dan Magenheimer <dan.magenheimer@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: ramster: move to new zcache2 codebase
Dan Magenheimer [Wed, 5 Sep 2012 20:45:00 +0000 (13:45 -0700)]
staging: ramster: move to new zcache2 codebase

[V2: rebased to apply to 20120905 staging-next, no other changes]

The original zcache in staging is a "demo" version, and this is a massive
rewrite.  This was intended to result in a merged zcache and ramster, but
that option has been blocked so, to continue forward progress on ramster
and future related projects, only ramster moves to the new codebase.
To differentiate between the old demo zcache and the rewrite, we refer
to the latter as zcache2, config'd as CONFIG_ZCACHE2.  Zcache and zcache2
cannot be built in the same kernel, so CONFIG_ZCACHE2 implies !CONFIG_ZCACHE.

This developer still has hope that zcache and zcache2 will be merged
into one codebase.  Until then, zcache2 can be considered a one-node
version of ramster.

No history of changes was recorded during the zcache2 rewrite and recreating
a sane one would be a Sisyphean task but, since ramster is still in
staging and has been unchanged since it was merged, presumably this
is acceptable.

This commit also provides the hooks in zcache2 for ramster, but all
ramster-specific code is provided in a separate commit.

Some of the highlights of this rewritten codebase for zcache2:
(Note: If you are not familiar with the tmem terminology, you can review
it here: http://lwn.net/Articles/454795/ )
 1. Merge of "demo" zcache and the v1.1 version of zcache in ramster.  Zcache
    and ramster had a great deal of duplicate code which is now merged.
    In essence, zcache2 *is* ramster but with no remote machine available,
    but !CONFIG_RAMSTER will avoid compiling lots of ramster-specific code.
 2. Allocator.  Previously, persistent pools used zsmalloc and ephemeral pools
    used zbud.  Now a completely rewritten zbud is used for both.  Notably
    this zbud maintains all persistent (frontswap) and ephemeral (cleancache)
    pageframes in separate queues in LRU order.
 3. Interaction with page allocator.  Zbud does no page allocation/freeing,
    it is done entirely in zcache2 where it can be tracked more effectively.
 4. Better pre-allocation.  Previously, on put, if a new pageframe could not be
    pre-allocated, the put would fail, even if the allocator had plenty of
    partial pages where the data could be stored; this is now fixed.
 5. Ouroboros ("eating its own tail") allocation.  If no pageframe can be
    allocated AND no partial pages are available, the least-recently-used
    ephemeral pageframe is reclaimed immediately (including flushing tmem
    pointers to it) and re-used.  This ensures that most-recently-used
    cleancache pages are more likely to be retained than LRU pages and also
    that, as in the core mm subsystem, anonymous pages have a higher priority
    than clean page cache pages.
 6. Zcache and zbud now use debugfs instead of sysfs.  Ramster uses debugfs
    where possible and sysfs where necessary.  (Some ramster configuration
    is done from userspace so some sysfs is necessary.)
 7. Modularization.  As some have observed, the monolithic zcache-main.c code
    included zbud code, which has now been separated into its own code module.
    Much ramster-specific code in the old ramster zcache-main.c has also been
    moved into ramster.c so that it does not get compiled with !CONFIG_RAMSTER.
 8. Rebased to 3.5.

This new codebase also provides hooks for several future new features:
 A. WasActive patch, requires some mm/frontswap changes previously posted.
    A new version of this patch will be provided separately.
    See ifdef __PG_WAS_ACTIVE
 B. Exclusive gets.  It seems tmem _can_ support exclusive gets with a
    minor change to both zcache2 and a small backwards-compatible change
    to frontswap.c.  Explanation and frontswap patch will be provided
    separately.  See ifdef FRONTSWAP_HAS_EXCLUSIVE_GETS
 C. Ouroboros writeback.  Since persistent (frontswap) pages may now also be
    reclaimed in LRU order, the foundation is in place to properly writeback
    these pages back into the swap cache and then the swap disk.  This is still
    under development and requires some other mm changes which are prototyped.
    See ifdef FRONTSWAP_HAS_UNUSE.

A new feature that desperately needs attention (if someone is looking for
a way to contribute) is kernel module support.  A preliminary version of
a patch was posted by Erlangen University and needs to be integrated and
tested for zcache2 and brought up to kernel standards.

If anybody is interested on helping out with any of these, let me know!

Acked-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Signed-off-by: Dan Magenheimer <dan.magenheimer@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>