This patch adds the CONFIG_FILE_LOCKING option which allows to remove support for advisory locks. With this patch enabled, the flock() system call, the F_GETLK, F_SETLK and F_SETLKW operations of fcntl() and NFS support are disabled. These features are not necessarly needed on embedded systems. It allows to save ~11 Kb of kernel code and data: text data bss dec hex filename 1125436 118764 212992 1457192 163c28 vmlinux.old 1114299 118564 212992 1445855 160fdf vmlinux -11137 -200 0 -11337 -2C49 +/- This patch has originally been written by Matt Mackall <mpm@selenic.com>, and is part of the Linux Tiny project.
Showing the changes to kernel/sysctl.c (1 of 6 files). Show all
Unified · Split
| @@ -97,7 +97,7 @@ static int sixty = 60; · 96 unmodified lines | ||
| 97 | 97 | static int neg_one = -1; |
| 98 | 98 | #endif |
| 99 | 99 | |
| 100 | −#ifdef CONFIG_MMU | |
| 100 | +#if defined(CONFIG_MMU) && defined(CONFIG_FILE_LOCKING) | |
| 101 | 101 | static int two = 2; |
| 102 | 102 | #endif |
| 103 | 103 | |
| @@ -1261,6 +1261,7 @@ static struct ctl_table fs_table[] = { · 1157 unmodified lines | ||
| 1261 | 1261 | .extra1 = &minolduid, |
| 1262 | 1262 | .extra2 = &maxolduid, |
| 1263 | 1263 | }, |
| 1264 | +#ifdef CONFIG_FILE_LOCKING | |
| 1264 | 1265 | { |
| 1265 | 1266 | .ctl_name = FS_LEASES, |
| 1266 | 1267 | .procname = "leases-enable", |
| @@ -1269,6 +1270,7 @@ static struct ctl_table fs_table[] = { · 2 unmodified lines | ||
| 1269 | 1270 | .mode = 0644, |
| 1270 | 1271 | .proc_handler = &proc_dointvec, |
| 1271 | 1272 | }, |
| 1273 | +#endif | |
| 1272 | 1274 | #ifdef CONFIG_DNOTIFY |
| 1273 | 1275 | { |
| 1274 | 1276 | .ctl_name = FS_DIR_NOTIFY, |
| @@ -1280,6 +1282,7 @@ static struct ctl_table fs_table[] = { · 5 unmodified lines | ||
| 1280 | 1282 | }, |
| 1281 | 1283 | #endif |
| 1282 | 1284 | #ifdef CONFIG_MMU |
| 1285 | +#ifdef CONFIG_FILE_LOCKING | |
| 1283 | 1286 | { |
| 1284 | 1287 | .ctl_name = FS_LEASE_TIME, |
| 1285 | 1288 | .procname = "lease-break-time", |
| @@ -1291,6 +1294,7 @@ static struct ctl_table fs_table[] = { · 5 unmodified lines | ||
| 1291 | 1294 | .extra1 = &zero, |
| 1292 | 1295 | .extra2 = &two, |
| 1293 | 1296 | }, |
| 1297 | +#endif | |
| 1294 | 1298 | { |
| 1295 | 1299 | .procname = "aio-nr", |
| 1296 | 1300 | .data = &aio_nr, |