From: Alexandre Buisse missing extern in drivers/dlm/lvb_table.h. The definition was moved into drivers/dlm/lock.c. The attached patch fixes this. Signed-off-by: Alexandre Buisse Cc: Dave Teigland Cc: Patrick Caulfield Signed-off-by: Andrew Morton --- drivers/dlm/lock.c | 20 ++++++++++++++++++++ drivers/dlm/lvb_table.h | 22 +--------------------- 2 files changed, 21 insertions(+), 21 deletions(-) diff -puN drivers/dlm/lock.c~dlm-lockspaces-callbacks-directory-fix drivers/dlm/lock.c --- 25/drivers/dlm/lock.c~dlm-lockspaces-callbacks-directory-fix Wed May 25 16:23:04 2005 +++ 25-akpm/drivers/dlm/lock.c Wed May 25 17:24:08 2005 @@ -104,6 +104,26 @@ const int __dlm_compat_matrix[8][8] = { {0, 0, 0, 0, 0, 0, 0, 0} /* PD */ }; +/* + * This defines the direction of transfer of LVB data. + * Granted mode is the row; requested mode is the column. + * Usage: matrix[grmode+1][rqmode+1] + * 1 = LVB is returned to the caller + * 0 = LVB is written to the resource + * -1 = nothing happens to the LVB + */ +const int dlm_lvb_operations[8][8] = { + /* UN NL CR CW PR PW EX PD*/ + { -1, 1, 1, 1, 1, 1, 1, -1 }, /* UN */ + { -1, 1, 1, 1, 1, 1, 1, 0 }, /* NL */ + { -1, -1, 1, 1, 1, 1, 1, 0 }, /* CR */ + { -1, -1, -1, 1, 1, 1, 1, 0 }, /* CW */ + { -1, -1, -1, -1, 1, 1, 1, 0 }, /* PR */ + { -1, 0, 0, 0, 0, 0, 1, 0 }, /* PW */ + { -1, 0, 0, 0, 0, 0, 0, 0 }, /* EX */ + { -1, 0, 0, 0, 0, 0, 0, 0 } /* PD */ +}; + #define modes_compat(gr, rq) \ __dlm_compat_matrix[(gr)->lkb_grmode + 1][(rq)->lkb_rqmode + 1] diff -puN drivers/dlm/lvb_table.h~dlm-lockspaces-callbacks-directory-fix drivers/dlm/lvb_table.h --- 25/drivers/dlm/lvb_table.h~dlm-lockspaces-callbacks-directory-fix Wed May 25 16:23:04 2005 +++ 25-akpm/drivers/dlm/lvb_table.h Wed May 25 17:24:17 2005 @@ -13,26 +13,6 @@ #ifndef __LVB_TABLE_DOT_H__ #define __LVB_TABLE_DOT_H__ -/* - * This defines the direction of transfer of LVB data. - * Granted mode is the row; requested mode is the column. - * Usage: matrix[grmode+1][rqmode+1] - * 1 = LVB is returned to the caller - * 0 = LVB is written to the resource - * -1 = nothing happens to the LVB - */ - -const int dlm_lvb_operations[8][8] = { - /* UN NL CR CW PR PW EX PD*/ - { -1, 1, 1, 1, 1, 1, 1, -1 }, /* UN */ - { -1, 1, 1, 1, 1, 1, 1, 0 }, /* NL */ - { -1, -1, 1, 1, 1, 1, 1, 0 }, /* CR */ - { -1, -1, -1, 1, 1, 1, 1, 0 }, /* CW */ - { -1, -1, -1, -1, 1, 1, 1, 0 }, /* PR */ - { -1, 0, 0, 0, 0, 0, 1, 0 }, /* PW */ - { -1, 0, 0, 0, 0, 0, 0, 0 }, /* EX */ - { -1, 0, 0, 0, 0, 0, 0, 0 } /* PD */ -}; +extern const int dlm_lvb_operations[8][8]; #endif - _